2 qq 39487922 qq_39487922 于 2017.09.04 15:45 提问

java一个时钟练习 在构造中抱错 很是不解 求组各位

图片说明

9个回答

caozhy
caozhy   Ds   Rxr 2017.09.04 15:48

类型不同,一个是Display一个是int

caozhy
caozhy   Ds   Rxr 2017.09.04 15:56

或者把参数int换成Display类型

caozhy
caozhy   Ds   Rxr 2017.09.04 15:56

this.hour = new Display(hour);
别的类似

qq_32565575
qq_32565575   2017.09.04 16:16

类型不匹配,改为 this.hour = new Display(hour);

baidu_26611019
baidu_26611019   2017.09.04 16:18

假设你的Display类中有一个value字段用来存int类型的数据(应该是有的),避免创建多余的对象可做如下修改
代码修改成:
public Clock(int hour , int minute , int second){
this.hour. value= hour;
this.minute.value =minute;
this.second.value = second;
}

Sweet__dream
Sweet__dream   2017.09.05 09:30

类型不符,自然就报错了,最初赋值的是Display类型,而后面是int

weixin_37490221
weixin_37490221   2017.09.04 16:09

即让引用类型和对象类型匹配即可(引用赋值号后的对象可以是引用的类型或者引用的类型的子类,而你赋值java的基础类型给一个Display类型是不符合java语法规范的,所以编译时即报错)
望采纳!

weixin_37490221
weixin_37490221   2017.09.04 16:05

代码修改成:
public Clock(int hour , int minute , int second){
this.hour = new Display(hour);
this.minute = new Display(minute);
this.second = new Display(second);
}

Small_Mouse0
Small_Mouse0   Ds   Rxr 2017.09.04 16:06

【this.hour = new Display(hour);】
正解。。。。

Csdn user default icon
上传中...
上传图片
插入图片