한 걸음 두 걸음
자바 Java ] 추상클래스 abstract class / 추상 메소드 abstract method 본문
반응형
추상클래스
abstract 키워드를 활용한 클래스, 최소한 하나 이상의 abstract메소드를 갖는 클래스를 말합니다.
(추상메소드가 아닌 메소드도 가질 수 있습니다.)
public abstract class Car {
}; //세미콜론을 붙여주어야합니다.
이는 객체 생성이 불가능합니다.
추상메소드
abstract 키워드를 활용한 메소드로, 바디에 구현하는 코드가 없습니다.
public abstract class Car {
public abstract void move(); //구현되는 코드가 없습니다.
}
추상클래스는 아직 완성되지 않은 클래스이기 때문에 추상클래스로 객체를 만들 수 없고, 추상 클래스를 상속받아서 만든 클래스의 객체를 만들 수 있습니다. 상속받은 클래스(concrete class)에서는 추상클래스에 적힌 추상메소드를 재정의하여 사용해야합니다.
콘크리트 클래스에서는 추상클래스에서 정의한 모든 추상 메소드를 재정의해서 사용해야합니다.
예시
abstract class Shape{
public abstact void draw();
public abstact void print(){
System.out.println("일반함수도 있음");
}
}
public class Circle extends Shape{
public void draw(){
System.out.println("원");
}
}
final Class
이는 상속이 불가능한 클래스입니다. 자식 클래스를 만들 수 없습니다.(종단클래스)
class final A{
}
반응형
'Language > Java' 카테고리의 다른 글
자바 JAVA ] 인터페이스 interface / CompareTo, Comparable (0) | 2019.11.20 |
---|---|
자바 Java ] 오브젝트 클래스 Object Class (0) | 2019.11.20 |
자바 JAVA ] final (0) | 2019.11.20 |
자바 JAVA ] 상속 Inheritance (0) | 2019.11.20 |
자바 JAVA ] static / final 개념 간단하게 알아보기~ (0) | 2019.11.18 |