Car 是 所有汽车的接口,在编译的时间void do(Car car){ 传入参数的型式是Car,这就为多态的实现提供了便利,当我们运行的时间只要传入实现的Car接口的任何实例do都接收,也就实现了多态我们写程序的时间void do(Car car)
{
car.build();
}运行的时间do(雪铁龙实例) ->雪铁龙实例.build();
{
car.build();
}运行的时间do(雪铁龙实例) ->雪铁龙实例.build();
解决方案 »
- 关于spring3.0的拦截器
- spring页面传值,在线等,急啊
- hibernate-spring整合遇到了问题请高手指点
- 紧急寻求使用javascrip访问struts2标签tabbedPanel的selectedTab属性的问题
- 抽签! 抽签! 算法
- 求jdom.jar,急用!
- eclipse配置struts插件时的困惑
- 我的eclipse2.1上为啥没有tomcat的菜单?
- 怎么取出这种类型Map里面的数据 Map<Integer, Map<String, RankDto>>
- 如何在建实体的时候就指定设置的索引的名称
- client测试CMP出错!!!大家给看看!!
- 这种情况该不该用xslt 的第归转化?
InterFace也可以有自己的对象自己的实例么?(在这一点上面是不是和类一样的啊?)
然后Car car只是表示这个实例是属于car这个类型的
雪铁龙 objOf雪铁龙 = new 雪铁龙(); //-->这是类的实例化
objOf雪铁龙.build(xxxx)
接口也可以实例化么?:我的意思是有下面这样的写法么?
Car objOfCar = new Car(); //-->接口也可以像类一样的实例化么???
....决定objOfCar但前的实例是雪铁龙的实例还是平治的实例!
objOfCar.build(.....); //-->这里就是运行时来决定具体调用什么东西了!
void do(Car car){
car.build();
}
++++++++++++Car表示是class,car表示是实例;不管是"雪铁龙"还是"平治",他们都是"Car"
++++++++++++ .build();是接口的方法,可以通过具体实现.
实际上调用car.build();的时候,JVM就会向下转型,JVM回找出car实例的到底是什么对象,
你可以通过car.class得到car的具体型别!<不知道对不对,我是看了《Think in JAVA》,再这么理解的>
错了别怪我噢