본문 바로가기

Java

메소드 오버라이딩

상속 – 슈퍼클래스, 서브클래스

protected  – 상속관계나 같은 패키지 내 접근가능

레퍼런스 변수super – 부모 메소드나 변수를 부를때

은닉변수 – 메소드 오버라이딩을하면 부모 메소드는 은닉

상속에서의 생성자  – 생성자는 상속되지 않는다. 명시하지 않아도 자동 호출 서브클래스의 인스턴스가 생성되려면 슈퍼클래스의 멤버변수를 포함한 인스턴스도 생성된다.

 

생성자

  1.  생성자는 상속되지않는 유일한 멤버함수이다.
  2.  서브클래스의 인스턴스가 생성될 때 자신의 생성자가 호출되면서 슈퍼 클래스의 생성자를 연속적으로 자동호출한다.
  3. 슈퍼 클래스 생성자가 먼저 실행되고 서브클래스의  생성자가 실행된다.\

생성자 문제

슈퍼클래스에서 전달인자를 갖는 생성자만 정의해 놓으면 전달인자를 갖지 않는 디폴트 생성자를 더 이상 ㅍ컴파일러가 제공하지 않게 됩니다.  – 에러

해결하기 위해선 …

– 슈퍼클래스에 전달 인자 없는 디폴트 생성자를 명시적으로 한번 더 정의.

–  서브클래스에서 슈퍼클래스의 전달인지가 있는 생성자를 명시적으로 호출.

하지만 모든 클래스에 전달인자 없는 디폴트 생성자를 정의하는 습관을 들여라…..

 

'Java' 카테고리의 다른 글

정적메소드와 인스턴스  (0) 2016.04.29
패키지 - Pakege  (0) 2016.04.29
업캐스팅과 다운캐스팅  (0) 2016.04.29
추상클래스  (0) 2016.04.29
WrapperClass – 오토박싱 오토 언박싱  (0) 2016.04.29