본문 바로가기
개발자/백엔드 웹 개발자 과정(국비)

2022년 11월 25일 _ 15회차(다형성(오버로딩,오버라이딩)/상속)

by 초응 2022. 11. 25.

상속 (부모의 재산을 물려받는 것)

- 코드의 재활용을 보다 체계적으로 하기 위한 하나의 방법으로 나온 개념.

- 상속 장점 : 개발 시간 단축, 코드의 재활용.

 

묵시적 상속 : object

명시적 상속:

 class 자식 클래스 extends 부모클래스{

내용 기술;

}

-상속 관계는  is a 관계가 성립해야 한다.

-extends를 통해 상속받는다.

-자바는 단일 상속 개념이다.(하나의 부모에게만 상속 가능)

 

다형성 : 하나의 클래스로 여러 개의 객체를 관리하는 기법

-다형성의 기법으로 overloading / overriding / casting 세 가지 있음.

overloading (다중 정의) 
메서드 이름은 동일하게 주되, 매개변수의 데이터 타입 , 개수, 순서를 다르게 주어 같은 이름의 메서드를 중복 정의하는 것.

ㄴ 생성자 오버 로딩
ㄴ 메서드 오버 로딩

 

 

overriding(재정의)
부모 클래스로부터 사용해온 메서드를 더 이상 상속받지 않고 자식 클래스에서 새롭게 정의해서 메서드를 사용하도록 하는 것.
ㄴ 메서드 오버 라이딩

 

자기 자신 소환  this / 부모 소환 super

 

jvm은 생성자가 없으면 자동적으로 생성하지만 생성자가 하나라도 있으면(인자 생성자) 본인이 생성자를 생성하지 않는다.

그래서 인자생성자 생성 시 내용 없어 비어있더라도기본 생성자 꼭 만들기.

 

자바의 상속은 진짜 상속이 아니다.

 

클래스의 중복

ㄴ 한 클래스 안에 여러 개의 클래스를 만들 때 파일 이름과 동일한 public 클래스가 있어야 한다.(원칙은 하나의 파일에는 하나의 클래스만 생성한다)