알고리즘 연습 사이트
www.hackerrank.com
Day 13:Abstract Classes
추상 클래스란 ?
class를 abstract 로 선언하기만 하면 추상 클래스다. 추상 클래스 그 자체로는 인스턴스를 생성할 수 없다.
body가 없는 추상 메소드가 1개 이상 포함되어 있어서 인스턴스를 생성할 수 없기 때문이다.
추상 클래스를 반드시 subclass가 extends를 하여 abstract 선언된 메소드들의 body를 구현하고나서야 subclass의 인스턴스 생성(new 키워드)을 할 수 있다.
Day 12에서 배웠던 상속 개념을 확장시킨 것이 추상 클래스 이다.
13일 문제는 추상클래스 Book을 상속하는 MyBook 클래스를 구현하는 것이다.
abstract class Book {
String title;
String author;
Book(String title, String author) {
this.title = title;
this.author = author;
}
abstract void display(); //추상 메소드
}
class MyBook extends Book{ //Inherits from Book
int price;
MyBook(String title, String author, int price){
super(title, author);
this.price = price;
}
void display(){ //추상 메소드를 구현
System.out.println("Title: "+title);
System.out.println("Author: "+author);
System.out.println("Price: "+price);
}
}
댓글 없음:
댓글 쓰기