1.abstract 추상클래스

 - abstract public class Animal{ }

 - new 키워드를 통해서 instance를 생성할수 없다.(compile error)

 - 추상class를 제외한 클래스를 '구상' class라 한다.

 - 반드시 확장(extends) 해야하는 class


2.abstract method 추상 메소드

 - 몸통(중괄호)가 없는 형태이다. ex) public abstract void eat();

 - 세미콜론(;)으로 선언을 끝내는 형태이다.

 - abstract class 이내에서만 선언되어야 한다. (추상 클래스안에 일반메서드와 추상메서드의 혼용은 가능하다.)

 - 왜 사용할까? 

    1. 실제 메서드에 코드를 집어넣지 않았더라도 하위클래스를 위한 일종의 규약(protocol)의 일부를 정의한다.

    2. 다형성의 장점이 있다.(오버라이드)

 

3.구상class를 처음 만들때는 상위에서 선언된 추상메서드를 모두 구현해야 한다.

 - 확장관계 중간에 이미 구현된 추상메서드는 구현할 필요가 없다.


'개발 > JAVA' 카테고리의 다른 글

LocalDateTime, ZonedDateTime  (0) 2019.10.11
Collections를 이용한 정렬(sort method) 활용  (0) 2017.05.09
BigDecimal & BigInteger  (0) 2017.04.18
Array 와 ArrayList 사이의 변환  (0) 2017.03.28
9. 생성자와 가비지 컬렉션  (0) 2017.02.22

+ Recent posts