본문 바로가기

추상화

[ JAVA ] 추상화(abstract) - 공통된 특성 1. 추상클래스 main method에서 instance화 할 수 없다. 추상 클래스에서 메서드를 생성한다는 것은 상속 받는 어떤 클래스에서도 변하지 않는 행위일 때만 한다. public acstract class 클래스 { //필드 //생성자 //메서드 } 2. 추상메서드 상속받는 class(자식 클래스)에서 반드시 재정의되어야 한다. 추상메서드를 구체화해줘야만 한다. [public / protected] acstract 리턴타입 메소드이름(매개변수, ...); abstract 키워드와 함께 메소드의 선언부만 있고 메소드 실행 내용인 중괄호가 없다. 더보기
[ JAVA ] 상속 - 중복코드 줄이기 클래스 상속 선언법 class 자식클래스 extends 부모클래스{ // 필드 // 생성자 // 메소드 } 부모생성자 호출 super() 자식클래스(매개변수선언, ...){ super(매개값, ...); } 메소드 재정의 자식클래스에서 부모 클래스의 메소드를 다시 정의하는 것으로 부모 메소드와 동일한 리턴 타입, 메소드 이름, 매개 변수 목록을 가져야 한다. 접근 제한을 더 강하게 재정의 할 수 없다. 새로운 예외를 throws 할 수 없다. 부모 메소드 호출 super.부모메소드(); 상속할 수 없는 final 클래스 클래스를 선언할 때 final 키워드를 class 앞에 붙이면 이 클래스는 최종적인 클래스이므로 상속할 수 없는 클래스가 된다. (부모 클래스가 될 수 없어 자식 클래스를 만들 수 없다... 더보기