생성자를 만들때 나오는 super()라는 것은?


super 예약어

-상속 관계의 클래스에서 자식클래스의 메소드에 부모클래스를 표현할 때 사용하는 예약어

=> 자식클래스의 메소드에서 부모클래스의 멤버변수 또는 메소드를 표현할 때 사용 : 생략


-super 예약어를 사용하는 경우

1) 자식클래스의 생성자에서 부모클래스의 원하는 생성자를 호출하기 위해 사용

형식)super(값,...);

->자식 클래스의 생성자가 호출되기 전에 super()에 의해 부모클래스의 생성자가 먼저 호출-생략되어있다.

->super(값,,..)명령 위에 다른 명령이 존재하면 에러 발생

2) 오버라이딩에 의해 부모클래스의 숨겨진 메소드를 자식 클래스의 메소드에서 사용하고자 할 경우

형식)super.메소드명(값,...);

-> 자식 클래스와 부모클래스에 존재하는 메소드 명이 같기 때문에 부모클래스의 메소드를 사용하기 위해

super사용


'자바 이론 > this. 생성자 + 변수의 초기화' 카테고리의 다른 글

생성자 만드는 이유  (0) 2019.02.28

+ Recent posts