A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 雷丹 中级黑马   /  2013-10-23 23:23  /  1461 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. class Father{      private int a;      int getA()      {return a;}      void SetA(int a)      {        this.a = a;       }  } class Son extends Father{} Class Test{        public static void main(String[] args)        {             Son son = new Son();             son.setA(a);             System.out.println(son.getA());         }}
复制代码

评分

参与人数 1技术分 +1 收起 理由
狼王 + 1 赞一个!

查看全部评分

7 个回复

倒序浏览
class Father
{
      private int a;
      int getA()
      {return a;}
      void SetA(int a)
      {
        this.a = a;
       }  
}

class Son extends Father
{
}

Class Test
{
        public static void main(String[] args)
        {
             Son son = new Son();
             son.setA(a);
             System.out.println(son.getA());

        }
}
回复 使用道具 举报
对于a这个私有成员,子类进行getA,setA方法的使用,是在使用父类的那个私有成员么?可以使用,只是没有进行直接控制。
这是说明子类中其实是存在这一个私有成员变量的,只是无法直接访问?
回复 使用道具 举报
子类继承父类,也就说继承了父类的 成员变量和属性!
这样可以对子类继承过来的成员进行操作!希望对你有所帮助!加油!

评分

参与人数 1黑马币 +6 收起 理由
狼王 + 6

查看全部评分

回复 使用道具 举报
对于你上面的代码我感到有点疑惑,第一:为什么它接收一个整型参数而你传递一个a,第二:上面Set方法中S是大写而到下面却成了小写。当一个类继承另一个类时,子类继承了父类的所有成员和所有方法,子类也可以重写父类的方法
回复 使用道具 举报
子类当然继承了父类的所有私有属性和方法,只是没有访问权限,只能通过方法间接访问,
就像即使是父类自己,在外部也是访问不了自己的私有属性的
extends声明了子类拥有基类中所有的域和方法
还有就是反射访问私有是 setAccessible(true),
这说明了什么 说明了继承了  只要设置访问权限就可以访问私有的了

评分

参与人数 1技术分 +1 收起 理由
狼王 + 1 赞一个!

查看全部评分

回复 使用道具 举报
我感觉 不是继不继承 应该是继承了什么  我感觉子类其实是拥有父类的一个引用 所以拥有父类的一切 父类在其他类中也必须要通过方法才能访问私有变量
子类要想访问私有的 必须通过这个引用 反射得到一个复制的类(跟父类一样) 再通过设置权限 才能访问

评分

参与人数 1技术分 +1 收起 理由
狼王 + 1 赞一个!

查看全部评分

回复 使用道具 举报
下次,一定要注意排版哦 亲,谢谢合作!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马