【发布时间】:2013-01-18 11:39:54
【问题描述】:
public class A{
private int getC(){
return 0;
}
}
public class B extends A{
public static void main(String args[]){
B = new B();
//here I need to invoke getC()
}
}
你能告诉我是否可以通过 java 中的反射来做 sush 事情?
【问题讨论】:
-
请不要使用父/子类比继承。
B对象是A对象。你是你父亲吗? -
@aioobe
B是继承层次结构中A的子级。这是合法的。 -
我仍然认为这是一个不好的类比,尤其是当用作“从孩子调用父私有方法”时。我肯定会使用“子类中的超类方法”。
-
@aioobe 同意这在技术上是不正确的,但是我们是否可以同意父/子类与类继承的类比是如此完善,以至于它已成为超类/ 的事实上的同义词子类。面向对象编程的文献中充斥着它。
-
不。不能说我同意你的看法。我只看到它是由对继承概念不熟悉的人编写的,或者是那些根本没有考虑过父/子没有“is a”-关系这一事实的人写的。您总是可以通过使用不同(更准确)的术语轻松绕过它,但我认为它并不成熟。
标签: java reflection