要执行:“司机开车去贵阳”
用交通工具类(Vehicle)来封装下面的三个对象
有三个对象:Driver,Car,Address
Driver的代码:
package com.yang.study;
public class Driver {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void driving(Vehicle c,Address add){
c.go(Driver.this,add);
}
}
Car的代码:
package com.yang.study;
public class Car extends Vehicle {
@Override
public void go(Driver driver, Address address) {
System.out.println(driver.getName()+":开车去"+address.getName());
}
}
Address的代码:
package com.yang.study;
public class Address {
private String name ;
public Address() {
}
public Address(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Vehicle的代码:用所有的车去继承交通工具类(可扩展性)
package com.yang.study;
public abstract class Vehicle {
public abstract void go(Driver driver,Address address);
}
Test的测试代码:
package com.yang.study;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
Driver driver = new Driver();
driver.setName("夏文权");
Address address = new Address();
address.setName("贵阳");
driver.driving(new Car(), address);
}
}