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

private修饰的成员变量能被重新赋值吗?

public class Study{
 private int a=0;
 public void setA{
  a=1;
 }
 public int getA{
 return a;
 }
 public static void main(String[] args){
  Study hello=new Study();
  System.out.println("a:"+hello.a);
 }
}
输出结果是a:0
这么说利用方法也不能改变private修饰的成员变量吗?
望解答,谢谢。


正在回答

3 回答

public class Student{
	 private int a=0;
	 public void setA(){
	  a=1;
	 }
	 public int getA(){
	 return a;
	 }
	 public static void main(String[] args){
		 Student hello=new Student();
		 hello.setA(); //需要调用Student对象的setA方法。
		 System.out.println("a:"+hello.a);  //输出结果: a:1
	 }
	}

private 只是将成员变量私有化,不能直接的去修改private 修饰的成员变量。而需要通过调用get/set 方法去对其进行修改。

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

_Jack_Han_ 提问者

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

方法没参数

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

setA方法你没有调用为a赋值,当然你的hello.a=0。

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

半成品LY

他这个应该是set和get方法写错了。都少了一个()。但是为什么不报错我想知道这一点?请问你知道什么原因吗?
2016-01-10 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

private修饰的成员变量能被重新赋值吗?

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