java 中的this和基本数据类型的值传递

public class C{
	private static int p;
	public static void main(String[] args){
		//  创建一个空参的对象
	C c1 = new C();
	System.out.println(c1.p);
		// 创建一个有参的对象
	C c2 = new C(2);
	System.out.println(c2.p);	
		/*此处输出的成员变量的值  由局部变量传入  
		注意与成员变量的值传给局部变量,局部变量的值发生变化,成员变量本身不变  这个不同*/
	c1.setP(3);		//对象调用setP()方法 这个方法将局部变量的值传给调用对象的静态变量
	System.out.println(c1.getP());
	c2.setP(4);
	System.out.println(c2.getP());
	}
	
	public C(){
		// 构造器是为了创建对象时对其初始化   这个空参的构造器中 调用了有参的构造器
		this(1);
		System.out.println("123");
	}
	public C(int p){
		// 有参构造器中将局部变量的值传给了由对象调用的成员变量
		this.p = p;
		p = 3;	//此处将局部变量的值由2 改为3 并不影响成员变量的值
	}
	public void setP(int p){
		this.p = p;		//如果不加此处的this.  依旧可以编译运行  但是局部变量并未改变成员变量的值
	}
	public int getP(){
		return p;
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值