您的位置:首页 > 编程语言 > Java开发

JAVA中子类能不能继承父类的私有属性和方法?

2016-08-17 14:28 393 查看


JAVA中子类能不能继承父类的私有属性和方法?

 java编程语言

专业回答



中级财务探讨
 团队  cheng701898
2015-10-25 09:09

  JAVA中,子类可以继承父类的私有属性和方法,但一般不能直接访问,但通过反射还是可以访问的:

  import java.lang.reflect.Field;

import java.lang.reflect.InvocationTargetException;

import java.lang.reflect.ParameterizedType;

import java.lang.reflect.Type;

public class A extends B{

public void set(int x) throws Exception{

Field i=((Class<? extends A>) this.getClass().getGenericSuperclass()).getDeclaredField("i");

i.setAccessible(true);

i.set(this, x);

}

public Object get() throws Exception{

Field i=((Class<? extends A>) this.getClass().getGenericSuperclass()).getDeclaredField("i");

i.setAccessible(true);

return i.get(this);

}

public static void main(String[] args) throws Exception{

A a=new A();

System.out.println(a.get());

a.set(777);

System.out.println(a.get());

}

}

public class B {

private int i=100;

}

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: