菜鸟发问 请教一个小问题

loveyou13 2010-09-12 04:59:10
public class Car {
public void run(){
System.out.println("汽车在跑");
}
}
public class Benz extends Car {
public void run(){
System.out.println("奔驰在跑");
}
}
public static void main(String[] args) {
Car car = (Car)( new Benz() ); //请教这里的(Car)(.....)是什么意思,前一个括号的Car是什么意思,转换类型吗??
car. run();
}
...全文
173 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
succeedloveaaaa 2010-09-13
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 liukelin 的回复:]
小汽车的意思
[/Quote]
哈哈
ruiwu123 2010-09-13
  • 打赏
  • 举报
回复
(Car)( new Benz() ,这个是把Benz强制转换为Car,
cs_dubin 2010-09-13
  • 打赏
  • 举报
回复
没有必要转,转了体现不出Java的优点多态了
zhenge1020 2010-09-13
  • 打赏
  • 举报
回复
没有转的必要,java多态的一种。例如苹果本身就是水果,而水果转换成苹果的时候这种情况下需要强制转换
lliiqiang 2010-09-13
  • 打赏
  • 举报
回复
类型转换。即查看是不是置顶类型如果不是报错,如果是就转换,即视为某种类型对象
凉岑玉 2010-09-13
  • 打赏
  • 举报
回复
这是强制转换··但是这样的转换可以认为是没有任何意义的··楼上的各位··这不是多态··因为它不是父类引用指向子类对象啊··而是子类引用转换成父类而已···
liukelin 2010-09-12
  • 打赏
  • 举报
回复
小汽车的意思
  • 打赏
  • 举报
回复

接上 指向父类的引用 与 接口回调 实则是异曲同工之妙! 面向对象的思维才是面向对象语言中学习的终极目标! 不然所谓的面向对象终将成为不伦不类的语言。。。。。。。。。
  • 打赏
  • 举报
回复


实际用法等你学到容器那章你就知道了!

作用在于你所继承父类的子类他们之间的灵活使用,你看下面:

Car car = (Car)( new Benz() );
Car car1=(Car)(new Baom());
Car car2=(Car)(new Bent());
看到以上三句代码,我想你就应该能明白了如何要要如此了! 这样写才能算得上真正意义上的面向对象!

将代码上的重用性降低到了最低! 而且使用起来方便之极!
oO寒枫Oo 2010-09-12
  • 打赏
  • 举报
回复
就是给男人标注 他是人
dabanphoto 2010-09-12
  • 打赏
  • 举报
回复
父类引用指向子类对象,不需要,反之则不行。
loveyou13 2010-09-12
  • 打赏
  • 举报
回复
嗯 谢谢各位 我看一个文档上面的 不明白所以上来问问 现在明白了 再次感谢大家
holly2k 2010-09-12
  • 打赏
  • 举报
回复
如3楼所说,直接Car car =new Benz()即可;
一夜相思愁 2010-09-12
  • 打赏
  • 举报
回复
你这个没必要转换的,都是那样。
marty_xzh 2010-09-12
  • 打赏
  • 举报
回复
强制转换
db_cwade 2010-09-12
  • 打赏
  • 举报
回复
为什么要去转呢?
「已注销」 2010-09-12
  • 打赏
  • 举报
回复
不用转……
pywepe 2010-09-12
  • 打赏
  • 举报
回复
不要转 转了就没意思了
lewis600859 2010-09-12
  • 打赏
  • 举报
回复
强制类型转换
xiaoheixiadao 2010-09-12
  • 打赏
  • 举报
回复
类型转换
加载更多回复(6)

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧