package car;
class Car
{
public String carname;
public int cost;
}
//Car를 상속받는 3개 클래스 작성
//각 클래스에 인수를 받지않는 생성자 작성
//각 클래스의 생성자의 구현부에서 carname과 cost에 적당한 값 할당
class Jeep extends Car
{
Jeep()
{
carname = "Ranguler";
cost = 5000;
}
}
class BMW extends Car
{
BMW()
{
carname = "X3";
cost = 6000;
}
}
class Volkswagen extends Car
{
Volkswagen()
{
carname = "Tiguan";
cost = 4500;
}
}
public class InheritanceTest
{
// main에서 각 네개의 객체를 생성
// 각 각체의 carname과 cost 출력
public static void main(String args[])
{
Car c = new Car();
Jeep j = new Jeep();
BMW b = new BMW();
Volkswagen v = new Volkswagen();
System.out.println(c.carname+", "+c.cost+"만원");
System.out.println(j.carname+", "+j.cost+"만원");
System.out.println(b.carname+", "+b.cost+"만원");
System.out.println(v.carname+", "+v.cost+"만원");
}
}
PolymorphismTest.java
package car;
class CarCenter
{
void engineer(Car car)
{
System.out.print("수리, ");
System.out.println("청구비용 "+car.cost/50);
}
}
public class PolymorphismTest
{
public static void main(String args[])
{
CarCenter cc = new CarCenter();
Jeep j = new Jeep();
BMW b = new BMW();
Volkswagen v = new Volkswagen();
cc.engineer(j);
cc.engineer(b);
cc.engineer(v);
Car c = new Car();
if(j instanceof Jeep) System.out.println("true");
else System.out.println("false");
if(j instanceof Car) System.out.println("true");
else System.out.println("false");
}
}
댓글 없음:
댓글 쓰기