-일반클래스는 추상메소드를 가질 수 없다
-추상 메소드를 하나이상 보유하고 있는 클래스
-추상메소드 : 내용이 없고 이름만 있는 메소드 - 기능이 없음
-추상메소드를 보유하려면 추상클래스가 되어야됨
-class키워드 앞에 abstract라는 키워드를 써줘야됨 !
-객체생성 불가능
-추상클래스를 상속받으면 일반클래스는 안에있는 추상메소드를 반드시 구현해야됨! -> 이름은 같지만 각각의 기능을 담고있다
-하나의 데이터 타입으로 객체가 변환되어 업캐스팅 하더라도 자식클래스에서 재정의한 메소드(오버라이딩) 가 실행됨
-추상화클래스를 상속받을 때 add unimplemented method 체크해서 오버라이딩하기 ->강제성이 부여되기 때문에!