IT/Programming / / 2023. 4. 21. 17:29

[JAVA] abstract class(추상클래스) 사용 예제

반응형
package dayday11;
/*
 * 추상 클래스와 메소드
 *  - > 형태가 없는 메소드
 *  - > 어차피 자식 클래스가 오버라이드할 운명의 메소드라면 굳이 몸통을 만들필요는 없다.
 *  
 *  - > 추상메소드는 추상클래스에서만 선언 가능
 *  	우리가 방금 만든 Shape클래스를 추상 클래스로 만들어보자
 *  - > 추상 : abstract KEYWORD
 *   - 선언 : abstract 클래스명{..}
 *   - 추상 메소드 선언 : abstract 접근 제어자 리턴 자료형 method(매개변수);
 *   				 (몸통대신 -> ;)
 */
abstract class Shape {
	String name = "도형";
	Shape(String name){
		this.name = name;
	}
	abstract public double getArea();//몸통이 없는 미완성 .. 메소드
	public void showMessage(){
		System.out.println(name + "의 넓이 : " + getArea());
	}
}
//
//CLASS SADARI EXTENDS SHAPE{ // 추상 메소드는 자식클래스가 반드시 오버라이드 해야한다.
//
//	SADARI(STRING NAME) {
//		SUPER(NAME);
//		// TODO AUTO-GENERATED CONSTRUCTOR STUB
//	}
//
//	@OVERRIDE
//	PUBLIC DOUBLE GETAREA() {
//		// TODO AUTO-GENERATED METHOD STUB
//		RETURN 0;
//	}
//	
//}
public class test03 {
	public static void main(String[] args) {
		//추상 클래스의 객체 생성
		Shape s = new Shape("도형"){
			public double getArea(){
				System.out.println("즉석에서 만듬");
				return 0;
			}
		}; //아직 getArea미완성 -> 그 객체만을 위해 즉석에서 만드는 행위 : 
		   //익명클래스.. 이름이 없는 클래스다. s라는 클래스에만 적용가능
		
		s.getArea();
	}
}
반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유