Thinking in java 里有这么一句话:so private allows you to freely change that member without concern that it will affect another class in the same package;
我的理解就是我可以随意改变private成员,不必考虑这么做是否会影响其他类!
但有这样的情况:
一个类a中有private属性,public方法,方法中调用了private属性;然后另一个类b调用此public方法,此时可以运行,但如果把a中private属性更改了,b中就会报错吧,那么private的作用何在?
很是不解,求大神指导!

解决方案 »

  1.   

    private属于封装,是私有的
      

  2.   

    为什么会报错啊, 你可以这样理解, private 是瓶子里的水, 给了一个public 方法相当于给你一个吸管, 如果你设置为Public了,那就相当于拧开盖子了,为什么会报错?
      

  3.   

    private 是私有的 它的权限只有在本类中使用,你所说的public方法中调用了此属性,而且另一个类中又调用这个方法。
    方法调用 必然产生内存空间,第一次运行成功,当你再次修改private中的属性,由于限制,会编译出错。(个人理解……大牛勿喷,如有错误,指教一二,共同进步)
      

  4.   

    你可以把这个类看做是你的手机,public方法就是你看到的手机里的各种功能,而这些功能的实现又离不开手机硬件的支持,这个硬件就是手机private的,你根本就不知道这些硬件的存在和是如何动作的
      

  5.   

    你可以把这个类看做是你的手机,public方法就是你看到的手机里的各种功能,而这些功能的实现又离不开手机硬件的支持,这个硬件就是手机private的,你根本就不知道这些硬件的存在和是如何动作的