0
私は以前の質問に対して優れた応答を得ましたので、ここで私の運を押していきます。 これについて既に優れた記事がありますが、 What does a "Cannot find symbol" compilation error mean?私は、どの理由が当てはまるのか、その理由を見つけるのは難しいです。Inheritedクラスが見つかりません
ここでのエラーは、オブジェクトFirstClassTicketを、FirstClassを呼び出すequalsの前後の両方に作成するときに発生します。 FirstClassをTicketから継承したときにエラーが発生したと仮定します。これは、元々は、別のTicketタイプにインクルードし始める前に、これが元のTicketを実行していたからです。
class Booking{
public static class Ticket{
int Price;
int Amount=1;
int Discount=0;
public int WhatCost(){
int Cost =Amount*(Price-Discount);
return Cost;
}
//Inheriting Ticket classes.
class FirstClass extends Ticket{ //Defines standard class tickets.
int Price =10;
}
}
public static void main(String args[]) {
FirstClass FirstClassTicket=new FirstClass();
Scanner scanner = new Scanner(System.in);
System.out.println("Welcome to the advance booking service.");//Introduce program.
System.out.println("A first class ticket costs:");
System.out.println(FirstClassTicket.WhatCost());
}
}
FirstClassをBookingの内部クラスとして定義しました。あなた自身の好意を持って、各クラスをJava標準に従って別々のファイルに定義してください。もちろん、あなたが実際に内部クラス(私は非常に疑う)を持っていない限り。関連資料:[Javaチュートリアル:ネストされたクラス](https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html) –
...または単に 'FirstClass'を' static'にしてください。 –
さて、私はそれを見てみましょう。 'static class FirstClass extends Ticket {//標準クラスのチケットを定義します.''に変換しようとしても、エラーは変更されませんでした。 –