생성자 -> 인스턴스가 생성될때 호출되는 인스턴스 초기화 메서드이다.
특징 1. 생성자의 이름은 클래스의 이름과 같다.
2. 생성자는 리턴 값이 없다.
클래스 이름(타입 변수명, 타입 변수명) {
// 인스턴스 생성 시 수행될 코드
// 주로 인스턴스 변수의 초기화 코드를 적는다.
}
연산자 new가 인스턴스를 생성하는것, 생성자가 인스턴스를 생성 하는 것은 아니다.
기본 생성자가 컴파일러에 의해서 추가되는 경우는 클래스에 정의된 생성자가 하나도 없을때 뿐이다.
this vs this()
this -> 객체 자신을 가리키는 참조 변수 이다.
this() -> 생성자에서 다른 생성자를 호출할때 사용한다.
특징 1. 생성자의 이름으로 클래스이름 대신 this를 사용.
2. 한 생성자에서 다른 생성자를 호출할때 반드시 첫 줄에서만 호출이 가능.
내부클래스 -> 외부 클래스와 내부 클래스가 서로 연관이 되어 있을때 사용
장점 1. 외부 클래스의 멤버들에 쉽게 접근가능
2. 코드의 복잡성을 출일수 있다.
3. 캡슐화를 당성하는데 유용하다.
class Outer {
class Inner {
// 인스턴스 내부 클래스
}
static class StaticInner {
//정적 내부 클래스
}
void run() {
class LocalInner {
// 지역 내부 클래스
}
}
}
더 공부해야하는 내용들
this 와 this()가 내용은 알겠지만 정확히 어떻게 사용되는지 익숙해 져야 할것같다.
연습문제나 구글링해서 예제를 직접 코드를 쳐봐야 할 것 같다.
오늘의 느낀점

'자바(JAVA)' 카테고리의 다른 글
Eclipse 패키지 생성하기 (0) | 2023.08.10 |
---|---|
객체지향 프로그래밍(클래스, 객체, 필드, 메서드) (0) | 2022.11.07 |
클래스(Class), 객체(Object) 공부하기 (0) | 2022.11.04 |
배열공부하기 (0) | 2022.11.03 |
제어문, 반복문 공부하기 (0) | 2022.11.03 |