現在、Java の拡張クラスを理解しようとしています。
何が行われたか: 私はクラスを作成し、彼のためにクラスを拡張します。拡張クラスでは、単純なコマンドでコンストラクターを作成します - スーパークラスからの変数を表示します。別のファイルで拡張クラスのオブジェクトを作成しようとしましたが、エラーが発生しました - 「CObj 型の囲みインスタンスにアクセスできません。CObj 型の囲みインスタンスで割り当てを修飾する必要があります (egxnew A() x は CObj のインスタンスです)。 )」
コード:メインファイル
public class Demo {
public static void main (String[] args){
CObj.Co n=new CObj.Co();
n.show();
}
}
クラスを含むファイル
class CObj {
int i,k,l;
CObj summ (CObj object){
object.i*=i;
object.k*=k;
object.l*=l;
return object;
}
void show (){
System.out.println("this is super class");
System.out.println(i+" "+k+" "+l);
}
...少数のコンストラクター...および拡張クラス
class Co extends CObj{
Co(){
super(1,2,3);
}
void show(){
System.out.println("this is extended class and overloaded meth");
super.show();
}
}
質問; 何が間違っていたのですか?なぜこのエラーが発生し、何を変更する必要があるのですか? それとも、私は何か悪いことをしているのだろうか?