黑马程序员技术交流社区

标题: 今天注意到的的一个private细节 [打印本页]

作者: huyang936    时间: 2015-1-22 19:34
标题: 今天注意到的的一个private细节
  1. class Person
  2. {
  3.         private String name;
  4.         private int age;
  5.         Person(String name,int age)
  6.         {
  7.                 this.name = name;
  8.                 this.age = age;
  9.         }
  10.         public String getName()
  11.         {
  12.                 return name;
  13.         }
  14.         public int getAge()
  15.         {
  16.                 return age;
  17.         }
  18.         public void show(Person p)
  19.         {
  20.                 System.out.println(p.name);        //此处可以直接调用
  21.                 System.out.println(p.age); //此处可以直接调用
  22.         }
  23. }
复制代码
解释:同一个类中,可以直接访问类中的成员,另:不用关心这个调用的对象是什么。是这样吗?


作者: I'can'do'it    时间: 2015-1-22 19:37
需要有接收的方法,进行传值。
作者: huyang936    时间: 2015-1-22 19:50
I'can'do'it 发表于 2015-1-22 19:37
需要有接收的方法,进行传值。

此处 Person p是从外部传入的对象,也能直接调用Person的成员。先前我只注意到了this可以直接调用(private),今天一见,半天没反应过来
作者: 南丶多    时间: 2015-1-23 00:58
私有的成员变量和成员方法 只有在本类中可以被访问   如果其他类像访问这个方法 就得调用这个类(Person类)里面的方法,而你的show方法 就是private所在的类(Person类)的方法,所以是可以访问的。跟person p没有关系 主要是看你的方法是不是在(Person)类里面。
作者: 我为你着迷    时间: 2015-1-23 14:30
私有的成员在本来的访问中是有效的
作者: 浅木头    时间: 2015-1-23 21:26
私有的访问权限在同一个类中,出了这个类则不可。
作者: Quasimodo    时间: 2015-1-25 23:26
对比几种访问修饰符的权限就知道啦  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2