我写了一个小程序来练习和演示 Java 中的多态性,所以请看一下,让我知道这个想法是否正确实现。
public class Main {
public static void main(String[] args) {
porche porche_car = new porche("Porche 9/11",8,"black");
porche_car.startEngine(true);
porche_car.accelerate(250);
porche_car.brake(true);
Ford ford_car = new Ford("Ford SUV",4,"blue");
ford_car.startEngine(true);
ford_car.accelerate(200);
ford_car.brake(false);
}
}
public class Car {
private boolean engine;
private String name;
private int cylinders;
private int wheels;
public Car(String name, int cylinders)
{
this.engine = true;
this.name = name;
this.cylinders = cylinders;
this.wheels = 4;
}
public void startEngine(boolean start)
{
if(start)
{
System.out.println(getName()+"Class.Engine Started.");
}
else
{
System.out.println(getName()+" Class.Engine Stopped.");
}
}
public void accelerate(int acceleration)
{
System.out.println(getName()+" class.Accelerating car at " + acceleration + " Km/h");
}
public void brake(boolean applybrake)
{
if (applybrake)
{
System.out.println(getName()+" class called.Brakes applied.");
}
else
{
System.out.println(getName()+" class, brakes released.");
}
}
public boolean isEngine() {
return engine;
}
public String getName() {
return name;
}
public int getCylinders() {
return cylinders;
}
public int getWheels() {
return wheels;
}
}
public class porche extends Car{
private String color;
private int doors;
public porche(String name, int cylinders, String color) {
super(name, cylinders);
this.color = color;
this.doors = 2;
}
@Override
public void startEngine(boolean start) {
super.startEngine(start);
}
牛魔王的故事
人到中年有点甜
相关分类