반응형
상속성(Inheritance)
- 상속(물려받는것)이다.
- 클래스 생성 시 특정 클래스의 값을 물려받아 사용한다
- 값을 물려주는 클래스 = 보무 클래스(parent)
- 값을 물려받는 클래스 = 자식 클래스(child)
- 자식 클래스들이 중복으로 사용하는 값들을 부모 클래스에서 만들어서 중복 제거가 가능하다.
- 2명 이상의 부모에게 상속받는것은 불가능하나, 한 부모가 여러 자식에게 상속하는 것은 가능하다.
- 상속시 메모리 크기 : 부모 클래스 + 자식 클래스의 메모리 크기이다
상속은 extends 키워드를 사용하여 상속받는다.
public class 자식클래스 extends 부모클래스{
...
}
은닉성(Data Hiding)
- 캡슐화(Encapsulation)라고도 한다.
- 개념적으로데이터를 감싸서 외부에 노출되지 않게 보호하는 것
- java 에서는 private 키워드를 사용해 선언된 클래스 내에서만 사용 가능하도록 한다
다형성(Polymorphism)
- 부모와 자식 클래스의 함수 선언은 동일한데, 기능이 다르게 동작하는 것
- 부모 클래스의 맴버 함수를 자식 클래스에서 재정의 하여 사용(오버라이딩)
- 자식 클래스에서 부모 클래스의 인스턴스들을 선언해 재정의가 가능하다.
- 단, 재정의 할 수 있는건 재정의할 멤버함수와 이름, 리턴타입, 매개변수가 모두 같아야 한다.
- Super 키워드를 사용해 맨위의 부모클래스에 직접 접근할 수 있다
반응형
'Develop > Backend' 카테고리의 다른 글
[Intellij] 소스코드 실행 안될 때 (0) | 2023.07.02 |
---|---|
Given-When-Then Pattern? (0) | 2023.05.29 |
크로아티아 알파벳(백준 2941번) (0) | 2022.07.01 |
백준 - ruby 연습(2739번, 2741번, 2439번, 10818번, 1978번) (0) | 2021.12.15 |
백준 - ruby 연습(10718번, 1000번, 1330번, 2753번) (0) | 2021.12.15 |