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

关于此题的成员变量问题

此题构造方法使用的参数是float newCpu之类的,对象调用构造方法时直接就可以把值赋给参数,那为什么还要在构造方法中把成员变量float cpu的值赋给float newCpu?这不是多此一举吗?通过代码已经验证此问题(将成员变量注释掉了),希望打什么解答下

package object1;


public class Telphone {

/*

float pingmu;

float cpu;

float neicun;

*/

public Telphone(){

System.out.println("这个课程好!");

}

public Telphone(float x,float y,float z){

if(x<3.0f){

x=3.5f;

System.out.println("您输入的尺寸有误,自动更改为3.5");

}

if(y<1){

y=1.2f;

System.out.println("您输入的信息有误,自动更改为1.2");

}

if(z<1.5){

z=2.0f;

System.out.println("您输入的信息有误,自动更改为2.0");

}

System.out.println("有参的构造方法执行了");

System.out.println("屏幕:"+x);

System.out.println("cpu:"+y);

System.out.println("内存:"+z);

}

}


正在回答

5 回答

在不需要通过使用对象去获取其属性值是确实可行,但是这只是最普通的情况。如果你把它们注释掉,之后使用get和set方法去获取某个对象的属性值时,你就会发现无法实现了。所以,还是把成员变量定义好才行。

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

慕先生1225276 提问者

非常感谢!
2016-07-09 回复 有任何疑惑可以回复我~

还是把成员变量定义好

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

因为你这段代码根本没有调用过成员变量,所以注释掉也没什么问题。在前面加一个System.out.println(phone2.cpu);就有区别了

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

便于区分

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

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530559    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

关于此题的成员变量问题

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