Class의 구성요소
Packageimport외부 Class필드메서드생성자일단 글로 설명을 하고 아래 예제에서 한번에 정리한다.
1. Package
패키지란 쉽게 폴더 또는 디렉토리 라고 생각할 수 있다. 패키지 안에 Java파일(class, interface ... 등)을 위치시킬 수 있고, 서로 관련된 파일들 끼리 묶어 위치시켜 효율적으로 관리할 수 있도록 해주는다.
어떠한 패키지안에 Class를 만들었을때 해당 클래스는 패키지 경로 정보를 담고있다.
2. import
import란 다른 패키지 내의 Class를 사용하기 위한 요소이다. 다른 패키지에서 Class를 사용하려면 사용하려는 Class는 public 으로 선언되어야하고, 패키지명을 포함한 풀네임을 사용하여 import하여야 한다.
3. 외부 Class
외부 클래스란 public 클래스 외부에 추가로 정의한 클래스를 의미한다. Java파일에는 몇가지 규칙이라고 볼 수 있는 것들이 있다.
Java파일에서는 최대 1개의 public 클래스만 존재할 수 있고, 그 클래스명은 파일명과 일치해야 한다.public 접근제어자를 사용할 수 없고, 해당 외부 클래스는 같은 패키지 내에서만 사용가능하다.4. 필드(Field)
필드란 Class의 변수를 담는 영역이다. 변수 타입과 변수명 그리고 변수의 값을 담을 수 있고, 변수 타입으로는 Object를 담을 수 있다. Object는 모든 클래스의 최상위 부모클래스로 Object하위 클래스를 모두 담을 수 있다는 말과 같다.
5. 메서드(Method)
메서드란 Class가 가지고 있는 기능(함수)를 의미한다. 쉽게 이해를 돕기 위해서 현실에서의 행위 또는 동작이라고 볼 수 있다. 예를 들어 계산기라는 클래스 내의 더하기, 나누기, 곱하기 등의 기능이 모두 메서드이다.
메서드는 접근제어자, 반환타입, 메서드명, 매개변수, 메서드내용으로 이루어져있다.
접근제어자 : public, private, protected 그리고 default가 있다.반환타입 : 메서드의 결과값(반환값)의 타입을 알려주는 부분 (void 라는 반환타입은 결과 값이 없다는 의미이다.)메서드명 : 메서드를 호출할 때 사용하는 이름매개변수 : 메서드 내용에서 사용할 때 필요한 입력되는 변수.메서드내용 : 기능의 내용6. 생성자(Constructor)
생성자란 Class의 객체를 생성하는 역할을 담당한다. 객체 내에 포함되는 필드의 초기화를 생성자에서 수행한다. 생성자의 종류로는 기본생성자, 매개변수가 있는 생성자가 있다.
기본생성자 : 단순히 객체를 생성하는 역할을 한다.매개변수가 있는 생성자 : 객체를 생성함과 동시에 필드를 초기화하는 역할을 한다.종종 setter을 활용하여 변수를 초기화하는데 이보단 생성자를 활용한 초기화가 권장된다.
예제
package figure // 패키지 정보
import lombok.Getter; // import된 Class들의 정보
import lombok.NoArgsConstructor;
@NoArgsConstructor
public class Rectangle {
// 필드
public int width; // 변수 선언용도로 사용
public int height;
// 생성자
public Rectangle() { } // Rectangle이란 클래스를 초기화하는 용도로 사용
// 메서드
public int calcArea() {
return width * height; // 연산 등을 위한 용도로 사용
}
}
class Circle { // 외부 Class 영역 - 다른 Class에서 import할 수 없다.
//.....
}
참고사이트
해당 내용은 내 공부를 위해 위 사이트를 참고해 작성한 내용으로 위 사이트에 더 자세한 내용이 있으니 추가로 궁금한게 있다면 위 사이트를 참고하길 바란다.