**추상클래스(Abstract Class)
1. 추상메소드를 하나 이상 가진 클래스.
2. abstract keyword 사용. (해당 method가 추상 메소드, 추상 클래스인 것을 알려줌)
형식)
접근제어자 abstract class ClassName {
변수(field)
접근제어자 DT varName;
생성자(Constructor)
접근제어자 ClassName([args]) {
}
메소드(Method)
접근제어자 RT methodName([args]) { //구현메소드
method body
}
접근제어자 abstract RT methodName([args]); //추상메소드
}
3. 추상 클래스는 하위 클래스를 제어하기 위해 사용.
4. 추상 클래스는 자신의 생성자를 이용하여 객체 생성 불가능.
클래스의 생성자를 사용하는 이유는 외부에서 사용하기 위해.
추상클래스는 완전체 X 구현이 안된 것이 있기때문에 완벽하지 않으면 외부에서 사용할 수 없다.
>>추상 클래스를 하위 클래스에 상속 시킨 후(하위클래스도 추상클래스가 되버림) 반드시 추상메소드를 override 후 사용.
>>하위 클래스를 참조하여 상위(추상) 클래스의 객체를 생성
>>다형성
5. 객체 생성 방법 (일반 클래스에서도 가능하지만 추상클래스에서 많이 사용)
a. 하위 클래스 참조.
b. 자신의 객체를 return 하는 static method 이용.
c. 외부 클래스를 이용.
d. 자신의 생성자를 이용. < 특수한 경우
[출처] 빡쏘끼룩
'IT > JAVA' 카테고리의 다른 글
[Java]추상클래스2- 객체생성방법 (0) | 2020.07.29 |
---|---|
[Java]추상클래스 예제- 사각형,원의 둘레,넓이 구하기 (0) | 2020.07.27 |
[Java]상속(inheritance)- Button,Frame 만들기 (0) | 2020.07.23 |
[Java]상속 (inheritance) - 다형성 (0) | 2020.07.22 |
[Java]Override 2 (0) | 2020.07.21 |