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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 邹铭钰 中级黑马   /  2013-3-20 10:21  /  1562 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 邹铭钰 于 2013-3-20 11:10 编辑

子类可以继承父类的属性和方法,那么父类定义了私有的,子类可能继承???

点评

如果你的问题已经得到解决,请及时将主题改为[已解决]。如果还有问题请继续追问,谢谢  发表于 2013-3-20 12:11

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

5 个回复

倒序浏览
不可以的,被private修饰的只能在本类中有效。被私有修饰的函数,子类是看不见的也就是不能继承的。
回复 使用道具 举报
不可以,父类的私有方法只有自己的实例可以访问到
如果该私有方法为静态则也可以通过类名来访问
子类是无法访问父类的私有方法的,但是父类的protect方法子类是可以访问的

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

回复 使用道具 举报
  1. 当然不能,私有的只能在本类中才可以访问 。
  2. 1) private
  3.   类中限定为private的成员,只能被这个类本身访问。
  4.   如果一个类的构造方法声明为private,则其它类不能生成该类的一个实例。

  5.   2) default
  6.   类中不加任何访问权限限定的成员属于缺省的(default)访问状态,可以被这个类本身和同一个包中的类所访问。

  7.   3) protected
  8.   类中限定为protected的成员,可以被这个类本身、它的子类(包括同一个包中以及不同包中的子类)和同一个包中的所有其他的类访问。

  9.   4) public
  10.   类中限定为public的成员,可以被所有的类访问。
复制代码

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

回复 使用道具 举报
子类不能继承父类,那么多态里定义一个父类引用指向子类对象,这样能不能使用父类里的私有呢?
回复 使用道具 举报
子类不能继承父类的私有方法,但是可以通过get方法获取父类的私有属性
例:
class Parent{
        private String name;
        private int age;
       Parent(String name,int age){
           this.name=name;
           this.age=age;
      }
     public void getAge(){//提供get方法,让子类进行访问
             return this.age;   
     }
}
class Son{
            Son(){
                  super(name,age);           
             }
             super.getAge();//通过getAge获取age信息
}

评分

参与人数 1技术分 +1 收起 理由
贾文泽 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马