추상클래스

채종윤·2023년 7월 25일
0

추상 클래스 선언: 클래스 선언에 abstract키워드를 붙이면 추상 클래스 선언이 된다.
추상 클래스는 new 연산자를 이용해서 객체를 직접 만들지 못하고 상속을 통해 자식 클래스만 만들 수 있다.

강제로 자식클래스에서 메소드를 구현하도록 함

public class ShapeExam {
	public static void main(String[] args) {
		MyShape ms = new MyLine(0,0,5,5); 
		System.out.println(ms.draw()); //오버라이딩된 자식메소드 호출ㄴ
	}

}
/** 도형들의 공통속성 정의 */
public abstract class MyShape {
	private int x,y; //도형 기준좌표
	
	public MyShape() { //정상적인 메소드
		
	}
	public MyShape(int x, int y) {
		super();
		this.x = x;
		this.y = y;
	}
	
	public abstract String draw();// 추상적인 메소드(도형그리기 기능 제공)
	
	public int getX() {
		return x;
	}
	public void setX(int x) {
		this.x = x;
	}
	public int getY() {
		return y;
	}
	public void setY(int y) {
		this.y = y;
	}
	@Override
	public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append("MyShape [x=").append(x).append(", y=").append(y).append("]");
		return builder.toString();
	}
	

}
public class ShapeExam {
	public static void main(String[] args) {
		MyShape ms = new MyLine(0,0,5,5); 
		System.out.println(ms.draw()); //오버라이딩된 자식메소드 호출
	}

}

결과 : Line

profile
안녕하세요. 백앤드 개발자를 목표로 하고 있습니다!

0개의 댓글