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

这里的name我没有定义静态的,但是我下面可以直接调用它,为什么?

public class Telphone {

//static String name = "iphone";

String name = "Iphone";

float script;

float cpu;

float mem;

public Telphone(){

System.out.println("调用无参构造方法!");

}

public Telphone(float newScript,float newCpu,float newMem){

// System.out.println("这是 " + Telphone.name + "手机"); //错误的调用方式

System.out.println("这是 " + name + "手机");  //正确的调用方式 

if(newScript < 3.5){

System.out.println("你 输入的屏幕大小有问题,将会附上默认值3.5。");

script = 3.5f;

}else{

script = newScript;

}

cpu = newCpu;

mem = newMem;

}

}


正在回答

4 回答

默认为public 公有所以能调用

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

我想说最佳答案是错的,你用的是方法是非静态的,你改为public static 再试试?

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

因为你调用它的方法不是静态的,,并且静态的调用不是类名.成员变量,而是要把类实例化成对象,再用对象名.成员变量

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

在类的方法里,当然可以调用成员变量咯,可以这么说,它们都属于一个对象的东西

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

举报

0/150
提交
取消

这里的name我没有定义静态的,但是我下面可以直接调用它,为什么?

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