文献:http://www.verydemo.com/demo_c89_i222168.html
public class Driver {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void drive(Vihecle v) {
v.go(this,new Address("武汉"));
}
}
public abstract class Vihecle {
public abstract void go(Driver d,Address dest);
}
public class Address {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Address(String name) {
super();
this.name = name;
}
}
public class Car extends Vihecle{
public void go(Driver d,Address dest) {
System.out.println(d.getName()+"开车去" + dest.getName());
}
}
public class Plane extends Vihecle{
@Override
public void go(Driver d, Address dest) {
// TODO Auto-generated method stub
System.out.println(d.getName()+"坐飞机去" + dest.getName());
}
}
public class Test {
public static void main(String[] args) {
Driver d = new Driver();
d.setName("杨小聪");
d.drive(new Car());
d.drive(new Plane());
}
}
本文通过具体的Java代码示例介绍了多态设计的基本概念及其在实际编程中的应用。演示了如何定义抽象类`Vihecle`及其实现类`Car`和`Plane`,并展示了一个`Driver`类来驱动这些交通工具。通过对不同类型的交通工具进行实例化和调用,展现了多态性的强大之处。
1万+

被折叠的 条评论
为什么被折叠?



