1. 추상클래스란
클래스의 공통된 부분을 뽑아서 별도의 클래스(추상클래스)로 만들어 놓고, 이것을 상속해서 사용한다.
abstract 클래스의 특징
- 멤버변수를 가진다.
- 상속하기 위해서는 extends를 사용한다.
- 상속한 클래스에서 반드시 구현해야한다.
- 일반 메서드도 가질수 있다.
- 생성자도 있다.
2. 추상클래스의 구현
public abstract class AbstClass{
int num;
String str;
public AbstClass(){//생성자
}
public void func(){//일반 메서드도 가질수 있다
}
public abstract void func2(); //추상메서드
}
public class ExampleClass extends AbstClass{
public ExampleClass(){//생성자
}
@Override
public void func2(){
//추상메서드 구현
}
}
추상메서드는 무조건 구현해야함
3. Interface VS 추상클래스
① 공통점
추상메서드를 가진다.
객체 생성이 불가능하여 자료형으로 사용된다.
② 차이점
Interface :
상수, 추상메서드만 가진다.
추상 메서드를 구현만 하도록 한다.
다형성을 지원한다.
추상클래스 :
클래스가 가지는 모든 속성, 기능을 가진다.
추상메서드 구현 및 상속 기능을 가진다.
단일 상속만 지원한다.
728x90
반응형
'개발자 :-) > Java' 카테고리의 다른 글
[Java] 문자열 클래스 (0) | 2022.09.04 |
---|---|
[Java] 람다식 (0) | 2022.09.04 |
[Java] 인터페이스 (0) | 2022.09.03 |
[Java] 내부클래스와 익명클래스 (0) | 2022.09.03 |
[Java] 상속 (0) | 2022.09.03 |
댓글