-
- Class
- 비유를 하자면 설계도와 비슷하다.
- 하나의 Class에서 여러 객체를 생성 가능하다.
- 필드, 생성자, 메서드로 구성된다.
- 객체 생성 방법 → 클래스 이름 변수이름 = new 클래스 이름(초기화 데이터);
- 생성자
- Class를 초기화하는 역할을 가지고있다.
- Class의 이름과 동일한 이름을 가진다.
- 객체가 생성될때 단 한번만 실행된다.
- return에 대한 개념이 없다.
- this
- 자기 자신 객체를 의미한다.
- 서로 다르지만 이름이 같은 변수를 구분할때 주로 사용한다.
- 해당 객체의 메모리 주소를 가져온다.
- 가독성을 향상 시켜준다.
- 상속
- 부모 Class의 기법들을 자식 Class에서 사용할 수 있게 해준다.
- 상속 받을 Class 옆에 extends 키워드와 상속받을 부모 Class를 입력하여 상속 받는다.
- ex) class Child extends Parents {}
- super() → 부모의 생성자를 호출하는 키워드
- 부모 클래스는 자식 클래스에 포함 관계이다.
- 추상 Class
- 실체성이 없고 개념만 있는 class이다.
- class 앞쪽에 abstract 키워드를 넣어주면 추상 class가 선언된다.
- 자기 자신의 객체를 가질 수 없다.
- 주로 공통적인 부분들을 추출해서 작성한다.
- 추상 메서드를 구현할때도 동일하게 abstract를 넣어준다.
- 추상 클래스를 상속받은 클래스는 추상 메서드를 반드시 구현해줘야 한다.