(1) 정의
객체 지향 프로그램(이벤트 프로그램)의 가장 특성 → 재사용성 → 상속
예전 언어에서는 매크로(Macro), 인라인
클래스를 만들 때 처음부터 모드 것을 새로 만드는 것이 아니라
부모로부터 받고 추가되는 것만 새로 만드는 것
(2) 클래스 상속
1) 용어 : 부모(클래스), 슈퍼(클래스), 상의(클래스), 베이스(클래스)
자식(클래스), 서브(클래스), 하위(클래스), 파생(derived)(클래스)
2) 클래스 상속 방법 (제일 안나옴)
키워드 1개 :extenfs(O) // sxtend(X)
class child extends Parent {
}
3) 상속의 특징
단일 상속만 가능 - 부모는 한개만
new Child() ⇒ Parant 객체 생성 ⇒ Child객체생성
모든 클래스의 조상 - Object
4) super
Child 객체에서 Parent객체를 가리키는 변수
super.변수명
super.메서드명()
(3) 메서드 재정의 (Overriding)
1) 부모 클래스의 메서드를 자식 클래스가 변경해서 정의하는 것
2) 메서드 명 뿐 아니라 메서드에 들어갈 입력값까지 완벽하게 동일해야함
→ 메서드명이같고 입력값의 형태가 다르면 Overloading
3) 동일한 형태의 메서드 일 때 자식 클래스의 메서드가 우선시
4) 부모의 접근 권한보다 같거나 낮은 권한이어야 함
(4) 다형성 (Polymprlhism)
i < d (O) i < d (X)
1) int i =10;
double d = i;
double b = 10.34;
int j = (int)b;
2) Parent p = new Child(); ⇒ 가능
C 100 p 50
Child c = new Parent(); ⇒ 불가능
c.생떼쓰기(), c.산타에게 선물받기() 이런기능이 Parent에게는 없기 때문
Child c = (Child) p; ⇒ 가능
Parent p = new Parent();
Child c = (Child) p; ⇒ ???
c.생떼쓰기()
'개발 > JAVA' 카테고리의 다른 글
인터페이스(Interface) (0) | 2023.01.09 |
---|---|
String Class (0) | 2023.01.09 |
클래스 심화 (0) | 2023.01.09 |
함수(function) (0) | 2023.01.09 |
Colors (추후 수정 필요 !) (0) | 2023.01.09 |