생성자 ( constructor )

생성자명은 클래스 이름과 동일하다.
반환값이 없다.
객체를 생성할 때 자동적으로 호출된다.
오버로딩( Overloading )이 가능하다.
default 생성자는 매개변수가 없다.


추상 메서드 ( abstruct method )

몸체가 정의되지 않는 메서드.
추상 클래스에 속한다.


추상 클래스( abstruct class ) / 인터페이스 ( interface )

공통점
불완전한 class로써 객체를 생성할 수 없다.
추상 메서드를 포함한다.

차이점
추상클래스 : 서로 비슷한 클래스의 공통적인 요소를 뽑아서 만든 클래스
인터페이스 : 서로 다른 클래스의 공통적인 요소를 뽑아서 만든 클래스
완전한 메서드를 포함 가능하다. / 모두가 추상 메서드로만 이뤄진다.
일반 변수 선언이 가능하다. / 변수 선언이 안되고 상수만 가능하다.
단일상속. / 다중상속
extends로 상속 받는다. / implements로 상속 받는다.
접근한정자가 모두 다르다. / public만 올 수 있다.


오버로딩( overloading ) / 오버라이딩( overriding )

오버로딩
동일한 이름을 갖는 메서드가 한개 이상.
매개변수의 갯수나 자료형이 반드시 달라야 한다. 반환 자료형은 상관없음.

오버라이딩
부모가 정의해놓은 메서드를 자식이 재정의 하는 것.
상속관계에서 가능하다.
부모 메서드의 이름과 반환자료형, 매개변수가 모두 통일되어야 한다.
접근한정자는 같거나 커야하며 예외처리는 더 작아야 한다.


final

클래스 : 상속을 할 수 없다.
메서드 : 오버라이딩이 안된다.
변수 : 상수가 된다.

Posted by 윤연식
,