일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- /
- 도커 #Docker #배포 #Spring #MySQL #백엔드배포
- chatgpt #gpt #챗지피티 #ai
- 도커 #docker #docker-compose.yml #도커컴포즈 #배포 #spring #mysql #docker-compose
- Today
- Total
개발자 데뷔!
05. [Java] 클래스의 기본구조 & Main 함수 사용 본문
OOP
; Object-Oriented Programming
객체지향 프로그래밍
자바는 대표적인 객체지향 프로그래밍 언어이다.
객체지향 프로그램은 클래스를 기반으로 프로그래밍 한다.
자바는, 패키지를 통해 계층구조를 만듦으로써 효율적으로 class를 관리한다.
즉, class이름은 사실, 클래스이름 뿐만이 아니라 package의 경로까지 포함한 것이 진짜 이름이다.
즉, 클래스이름이 같더라도, 패키지 이름이 다르다면, 다른 클래스로 구분한다.
CLASS의 기본 구조
(접근제어자) class 클래스이름 {
멤버 변수;
메서드;
}
클래스 외부에는, package 선언과 import 외에, 어떠한 것도 선언하지 않는다.
class 기본구조 ex)
package classpart;
public class Student {
// 멤버 변수 선언
int studentID;
String studentName;
//메서드 선언
public void showStudentInfo(int studentID){
// 메서드 기능구현 하는 부분
System.out.println(studentID);
}
}
- 하나의 자바 파일에, public class는 단 하나이다.
- public 클래스 이름과, 자바 파일 이름은 같아야 한다.
- 패키지 이름은 camel 표기법을 사용한다.
클래스 이름
- 클래스 이름은대문자로 시작하는 것이 일반적
-
멤버변수
: (member variable)클래스의 속성을 변수로 선언한 것
- 속성(property), 특성(attribute)라고도 함.
- 자료형과 함께 변수를 지정해서 사용함
- 기본 자료형(primitive data type) 외에도, 클래스형을 사용해 선언할 수 있다.
- 클래스형 : class를 통해 자료형을 직접 만들어 정의 하는 것
- ex) String, Date : JDK 에서 제공하는 class형 (기본 자료형이 아니기 때문에 제일 앞의 문자가 대문자)
메서드
: (method) 클래스 기능을 구현한 함수
- 멤버함수(member function)이라고도 함.
함수반환형 함수이름 (매개변수, 매개변수) {
return a;
}
- 함수가 호출되면, 그 함수가 사용할 메모리 공간이 스택에 생성된다.
- 함수 수행이 끝나면, 메모리 공간은 자동으로 사라진다.
Main 함수
- JVM 이 프로그램을 시작하기 위해 호출하는 함수
- 클래스 내부에 만들지만, 클래스의 메서드는 아니다(X)
main 함수에서 클래스를 사용하는 방법
1. 만든 class 내부에 main 함수를 만드는 방법
2. 외부에 테스트용 class를 따로 만들어서 사용하는 방법
두 방법을 예시와 함께 설명하겠다.
1. 클래스(Student) 내부에 main() 함수 만들기
package classpart;
// 클래스
public class Student {
// 멤버변수
int studentID;
String studentName;
// 메서드
public String getStudentName(){
return studentName;
}
// Main 함수
public static void main(String[] args) {
Student A = new Student(); // Student 클래스 생성
A.studentName = "김철수";
// 아래 두 결과는 같은 값인 '김철수'를 반환한다.
System.out.println(A.studentName);
System.out.println(A.getStudentName);
}
}
2. 외부에 test용 패키지를 따로 만들어 사용하기
실행할 class 와 같은 패키지에, main()함수 만을 포함한 새 class를 만들어둔다.
* 패키지 위치가 동일하지 않다면, import 문을 사용해 사용할 class를 불러와야 한다!!!
참조변수 사용
- 참조변수.멤버변수
- 참조변수.메서드
위처럼 도트(.)연산자를 사용해, 인스턴스의 멤버변수와, 메서드에 접근 할 수 있다.
'프로그래밍 언어 > Java' 카테고리의 다른 글
07. [Java] 정보은닉 with 접근제어자 (public&private) (0) | 2022.01.31 |
---|---|
06. [Java] 인스턴스 생성 (new) (0) | 2022.01.31 |
04. [Java] 연산자 (0) | 2022.01.31 |
03. [Java] 자료형 (0) | 2022.01.31 |
02. [Java] Java 프로젝트 시작! & 기본코드 _ Eclipse (0) | 2022.01.31 |