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

this关键字为什么只显示this.screen,新人向dalao请教,如图

package com.imooc;
import com.imooc.Telphone;
public class initailTelphone 
{

	public static void main(String[] args) 
	{
		// TODO Auto-generated method stub
		//通过无参的构造方法创建对象
     Telphone phone=new Telphone();
       //通过有参的构造方法也可以创建对象,并为对象中的实例变量赋值
     Telphone phone2=new Telphone(5.0f,1.2f,2.0f);
     /*phone2.Cpu=6.0f;*/
     phone2.setScreen(6.0f);
     System.out.println("screen:"+phone2.getScreen());
	}

}
//////////////////////////////////////
package com.imooc;

public class Telphone
{
 private float screen;
 private float Cpu;
 private float Mem;

public float getScreen() {
	return screen;
}
public void setScreen(float screen) {
	this.screen = screen;
}
public float getCpu() {
	return Cpu;
}
public void setCpu(float cpu) {
	Cpu = cpu;
}
public float getMem() {
	return Mem;
}
public void setMem(float mem) {
	Mem = mem;
}
public Telphone()
 {
	 System.out.println("com.imooc.Telphone无参的构造方法执行了");
 }
 public Telphone(float newscreen,float newCpu,float newMem)
 {
 screen=newscreen;
 Cpu=newCpu;
 Mem=newMem;
 System.out.println("有参数的构造方法执行了");
 }
}

http://img1.sycdn.imooc.com//591314a60001290e13610733.jpg


正在回答

1 回答

this.screen = screen 中,如果不用this关键字,则是 screen = screen ,编译器是无法知道是成员变量赋值给了方法中的变量,还是方法中的变量赋值给了成员变量;

使用this关键字后,就没有这个问题:是方法中的变量screen 赋值给了 成员变量screen

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

举报

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

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

进入课程

this关键字为什么只显示this.screen,新人向dalao请教,如图

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号