我有一个需要修改的 java 公共类(只有一种方法)。该类在一个包中,所以我正在编写一个扩展第一个类并覆盖我需要更改的方法的新类。
A类是
public class A {
GL gl;
GLU glu;
PGraphicsOpenGL pgrap;
//other fields
//constructor
public void method() {
this.gl = pgrap.gl;
this.glu = pgrap.glu;
//something else I don't want in class B
}
}
B类是这样的
public class B extends A {
//constructor that recalls super()
public void method() {
super.gl = pgrap.gl;
super.glu = pgrap.glu;
}
}
但我得到一个错误super.gl = pgrap.gl
:The field A.gl is not visible
。我的包里没有写getter方法,怎么办?
谢谢。
注意:我无法重新编译包或将 B 类添加到包中。