为了账号安全,请及时绑定邮箱和手机立即绑定

实在不知道怎么弄了,想请教下大家,怎么把车辆信息和主程序联系起来

566972480001e56d05000269.jpg

566972480001a1ae05000293.jpg

5669724800011df205000299.jpg

5669724a000146e305000291.jpg

谢谢大家了,指点我一下,感激不尽

正在回答

2 回答

Car1 car1 = new Car1();
System.out.println("car1,name:" + car1.name + ";rental:" + car1.rental + ";busload:" + car1.busload + ";boatload:" + car1.boatload);

你这个extends用的毫无意义,因为你的Car1,Car2实际上还是车,并且属性完全相同,并没有自己的变量。

这里更适合的写法是,直接new Vehicle()来实例化你的车就可以了,然后分别设置属性值。

不要盲目写程序,弄清楚基础语法的含义再写更重要

0 回复 有任何疑惑可以回复我~
#1

啊哦cc 提问者

感谢,我明白了
2015-12-10 回复 有任何疑惑可以回复我~
#2

啊哦cc 提问者

但是如果用抽象方法来保存车辆信息该怎么弄
2015-12-10 回复 有任何疑惑可以回复我~
#3

十一不哭 回复 啊哦cc 提问者

如果你说的抽象方法是指abstract 的话,你可以使用abstract关键字将Vehicle声明为抽象类,这样的话,Vehicle就只能被extends了,不能通过new关键字来创建新对象。只能通过new Vehicle的子类(也就是Car)来创建对象,然后为新创建的对象设置具体的属性值。 你说的保存车辆信息我只能理解为你想知道从哪里获取。真正意义上的保存是要写入硬盘的,这样运行的程序会在每次程序的线程结束后丢失刚才的所有信息,再次运行程序是又在内存中重新创建,大概就是这样
2015-12-10 回复 有任何疑惑可以回复我~
#4

啊哦cc 提问者 回复 十一不哭

不好意思,刚才没表述清楚,我的意思是通过建议个abstract类,将这个作为一个模板,我图上的代码就是想表达着个意思,但是你说我的exetends没有意义,所以我想问下问题出在哪,我改怎么改进,麻烦了
2015-12-10 回复 有任何疑惑可以回复我~
#5

十一不哭 回复 啊哦cc 提问者

这个你要再看一下extends 的使用场景,继承通常用于多个子类对父类属性和方法的复用,并且子类有自己独有的属性或方法,你创建的2个Car只是简单的对已有属性赋了一下值。这样的场景直接new来创建新对象就可以了,完全没有必要抽象。 由于你2个车的信息各自不同,所以模版也没有存在的必要。 如果是多个车的信息有一些是相同的,可以理解成默认配置,可以在抽象类中对属性赋值,子类中仅修改需要修改的地方即可
2015-12-10 回复 有任何疑惑可以回复我~
#6

啊哦cc 提问者 回复 十一不哭

恩恩,明白了,非常感谢
2015-12-10 回复 有任何疑惑可以回复我~
查看3条回复

多态

Vehicle v = null;

if(number == 1)

    v = new Car1();

else

    v = new Car2();

输出 比如  v.xxx;

0 回复 有任何疑惑可以回复我~
#1

啊哦cc 提问者

明白你的意思了,非常感谢
2015-12-10 回复 有任何疑惑可以回复我~
#2

啊哦cc 提问者

这个null是什么意思?
2015-12-10 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

实在不知道怎么弄了,想请教下大家,怎么把车辆信息和主程序联系起来

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信