1. 피자
원을 나타내는 Circle 클래스를 상속받아서 피자를 나타내는 Pizza 클래스를 작성해보자
//결과

완성 코드
package ex06.example5;
class Circle {
public String pizzaName;
protected int radius;
public Circle(int r) {
radius = r;
}
}
public class Pizza extends Circle {
public Pizza(String pizzaName, int radius) {
super(radius);
this.radius = radius;
this.pizzaName = pizzaName;
}
public void print() {
System.out.println("피자의 종류 : " + pizzaName + " 피자의 크기 : " + radius);
}
public static void main(String[] args) {
Pizza obj = new Pizza("Pepperoni", 20);
obj.print();
}
}
완성 코드 (private)
package ex06.test01;
public class Circle {
private int radius;
public int getRadius() {
return radius;
}
public Circle(int r) {
radius = r;
}
}
package ex06.test01;
public class Pizza extends Circle {
private String name;
public Pizza(String name, int r) {
super(r);
this.name = name;
}
public void print() {
System.out.println("피자의 종류 : " + name + "피자의 크기 : " + getRadius());
}
public static void main(String[] args) {
Pizza obj = new Pizza("페퍼로니 ", 20);
obj.print();
}
}
2. 새
동물을 나타내는 Animal 클래스를 상속받아서 새를 나타내는 Bird 클래스를 작성해보자
//결과

완성 코드
package ex06.example5;
class Animal {
void walk() {
System.out.println("걸을 수 있음");
}
void fly() {
System.out.println("날을 수 있음");
}
void sing() {
System.out.println("노래 부를 수 있음");
}
}
public class Bird extends Animal{
public static void main(String[] args) {
Bird bird = new Bird();
bird.walk();
bird.fly();
bird.sing();
}
}
완성 코드 동적바인딩
package ex06.test01;
public class Animal {
void walk() {
System.out.println("걸을 수 있음");
}
}
package ex06.test01;
public class Bird extends Animal {
void fly() {
System.out.println("날을 수 있음");
}
void sing() {
System.out.println("노래부를 수 있음");
}
public static void main(String[] args) {
Bird bird = new Bird();
bird.walk();
bird.fly();
bird.sing();
}
}
3. 축구
Sport 클래스를 상속받아서 축구를 나타내는 클래스 Soccer을 작성하고 getName()과 getPlayers()를 재정의하여서 다음과 같은 출력이 나오도록 하라
//결과

완성 코드
package ex06.example5;
class Sport {
String getName() {
return "아직 결정되지 않음";
}
int getPlayers() {
return 0;
}
}
package ex06.test01;
public class Soccer extends Sports {
private String sportName;
private int sportPlayer;
public Soccer(String sportName, int sportPlayer) {
this.sportName = sportName;
this.sportPlayer = sportPlayer;
}
public String getName() {
return this.sportName;
}
public int getPlayers() {
return this.sportPlayer;
}
public static void main(String[] args) {
Soccer sc = new Soccer("최강기아", 10);
System.out.println("경기이름 : " + sc.getName() + " 경기자수 : " + sc.sportPlayer);
}
}
4. 사각형
Rectangle 클래스를 상속받고, 필드 String color;가 추가되는 ColorRectangle 클래스를 만들어라
//결과

완성 코드
package ex06.test01;
public class Rectangle {
private int width, height;
public int getWidth() {
return width;
}
public int getHeight() {
return height;
}
public Rectangle(int width, int height) {
this.width = width;
this.height = height;
}
}
package ex06.test01;
public class ColorRectangle extends Rectangle {
private String color;
public String getColor() {
return color;
}
public ColorRectangle(int width, int height, String color) {
super(width, height);
this.color = color;
}
public static void main(String[] args) {
ColorRectangle cr = new ColorRectangle(100, 100, "blue");
System.out.println("가로 : " + cr.getWidth());
System.out.println("세로 : " + cr.getHeight());
System.out.println("색상 : " + cr.getColor());
}
}
Share article