変更する必要のあるJavaパブリッククラスがあります(1つのメソッドのみ)。クラスはパッケージに含まれているため、最初のクラスを拡張する新しいクラスを作成し、変更する必要のあるメソッドをオーバーライドします。
クラス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をパッケージに追加したりすることはできません。