• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:コンパイルエラー)

コンパイルエラー: Cls1はabstractで宣言する必要があります

このQ&Aのポイント
  • 以下のようなソースファイルをコンパイルしたらコンパイルに失敗してしまいました。
  • エラーは『Cls1はabstractで宣言する必要があります。show(int)をCls1で定義しません』と出ます。
  • これはどういうことでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • UKY
  • ベストアンサー率50% (604/1207)
回答No.1

Int1 インターフェースでのメソッドの宣言が間違っています。 void Show(int y) ではなく void show(int y) ですね。 Cls1でshowメソッドは定義されていますが、Int1でメソッド名をShowにしてしまったため、メソッド名が食い違ってエラーになっているということです。 jun さんはよく変数やメソッドの大文字/小文字を間違えておられますね。 名前を付けるときに一貫性を保ちましょう。 Javaでは、通常次のようにします。 クラスの名前は、各単語の頭文字のみ大文字にする。 例) Sample SampleClass SampleLongNameClass メソッド・変数の名前も各単語の頭文字を大文字にするが、一番最初だけは小文字にする。 例) value valueName longValueNameSample methodName(int intValue) public static final な「定数」フィールドは、すべて大文字で書き、各単語の間に下線を入れる。 例) CONSTANT_VALUE

jun2249
質問者

お礼

一貫性に気をつけてなるべく自分でそれを見つけられるようにしないとだめですよね。まだこんなかんじのプログラムだからですがもっとJavaをやっていこうと思っているのでがんばります。 ほんとにありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • java コンパイルエラー (初心者です)

    次のようなソースコードを入力してコンパイルすると、 class, interface, or enum expectedというエラーが出ます。 なぜでしょうか?{}の数はあってると思いますが... dentaku.java class dentaku{ public static void main (String args[]){ //3つの変数「a」と「b」と「c」を宣言 int a =0; int b =1; int c =1; System.out.println("xを10進数,aを2進数の1の位、bを10の位、cを100の位とするとと" + (x=a^2+b^2+c^2) + "です。"); } }

    • ベストアンサー
    • Java
  • Java初心者です

    次のようなプログラムを作りました interface Vehicle{ void drive(); } abstract class Animal{ abstract void show(); } class Lion extends Animal{ public void show(){ System.out.println("ライオンです"); } } class Horse extends Animal implements Vehicle{ public void show(){ System.out.println("馬です"); } public void drive(){ System.out.println("乗り物として使えます"); } } class Elephant extends Animal implements Vehicle{ public void show(){ System.out.println("象です"); } public void drive(){ System.out.println("乗り物として使えます"); } } class Bear extends Animal{ public void show(){ System.out.println("熊です"); } } class twentyeight{ public static void main(String args[]){ Animal an[]; an = new Animal[4]; an[0] = new Lion(); an[1] = new Horse(); an[2] = new Elephant(); an[3] = new Bear(); for(int i = 0;i < an.length;i++){ if(an[i] instanceof Vehicle){ an[i].drive();//ここにエラーが出る } else{ an[i].show(); } } } } インターフェイスを実装しているオブジェクトを判別し、そのdriveメソッドの呼び出しをしたいのですができません、どなたか教えてください。

    • ベストアンサー
    • Java
  • コンパイルエラー(Threadオブジェクト化)

    Runnableを継承したNormalClassをThreadとしてオブジェクト化しようとしているのですが、コンパイルエラーが出現して困っています。どうすればいいでしょうか? 下記エラー参照 Main.java:1: NormalClass は abstract でなく、java.lang.Runnable 内の abstract メソッド run() をオーバーライドしません。 下記ソース class NormalClass implements Runnable{ } class Main extends Thread{ public static void main(String args[]){ test = new Thread(new NormalClass()); } }

    • ベストアンサー
    • Java
  • コンパイル時のエラー。

    いつも大変お世話になりありがとうございます。 public static void main(String[] args)は何の意味があるのですか? http://www.task-notes.com/entry/20150930/1443582000 などを見てもイマイチ納得がいきません。 下記のプログラムでは public static void main(String[] args)がないためにエラーになりました。 解らないため適当な箇所に付け足したら、また異なったエラーになりました。 ;を付け足すとまた別のエラーが出ます。 ご多忙中恐れ入ります。 アドバイスのほど宜しくお願い申し上げます。 class Hero { public static void main(String[] args) private int point; Hero(int p) {point = p; } int getPoint() { return point; } void addPoint(int p) { point += p; } } コンパイルエラー C:\JAVA>javac Hero.java Hero.java:3: エラー: ';'がありません public static void main(String[] args) ^ エラー1個

  • すみませんが以下のJavaプログラムが実行できないです。

    どこが間違ってる所を修正してくれませんか? abstract class Vehicle { protected int speed; public void setSpeed(int s) { speed = s; System.out.println(“速度を” + speed + “にしました。”); } abstract void show(); } class A { public static void main(String[] args) { Vehicle vc; vc = new Vehicle(); vc.setSpeed(100); vc.show(); } }

  • Javaについて

    Javaについての質問です。 下記のプログラムは Abst_Class show1 can be inheritted to a subclass num1=1 Class1 show2 is created in Class1 num1=1 num2=2 Class2 show1 is inheritted and overridden in Class2 num1=10 str=SSSSSS Class2 show2 is created in Class2 num1=10 str=SSSSSS と出力するプログラムなのですがエラーが出て出力できません。どこがいけないのか教えていただけないでしょうか? お願いいたします。 interface itr{ itr(){} void show(); void dai(); } abstract abr implements itr{ abr(){ int num1; num1=1; } public void dai(){ if(num1==0){ num1=1; } } public void show(){ dai(); System.out.println("Abst_Class show1 can be inheritted to a subclass num1="+num1); } abstract show1(); } class Class1 extends abr{ int num2; Class1(int a,int b){ num1=a; num2=b; } public void show1(){ super.show(); } void show2(){ super.show(); System.out.println("Class1 show2 is created in Class1 num1="+num1+"num2="+num2); } } class Class2 extends abr{ String str; Class2(int num,String str){ this.str=str; num1=num; } public void show1(){ System.out.println("Class2 show1 is inheritted and overridden in Class2 num1="+num1+"str="+str); } void show2(){ System.out.println("Class2 show1 is inheritted and overridden in Class2 num1="+num+"str="+str); } } class K10_6{ public static void main(String args[]){ Class1 f1 = new Class1(1, 2); Class2 f2 = new Class2(10,"SSSSSS"); f1.show1(); f1.show2(); f2.show1(); f2.show2(); } } .\abr.java:1: class、interface、または enum がありません。 abstract abr implements itr{ ^ .\abr.java:4: class、interface、または enum がありません。 num1=1; ^ .\abr.java:5: class、interface、または enum がありません。 } ^ .\abr.java:6: class、interface、または enum がありません。 public void dai(){ ^ .\abr.java:9: class、interface、または enum がありません。 } ^ .\abr.java:11: class、interface、または enum がありません。 public void show(){ ^ .\abr.java:13: class、interface、または enum がありません。 System.out.println("Abst_Class show1 can be inheritted to a subclass num1="+num1 ); ^ .\abr.java:14: class、interface、または enum がありません。 } ^ .\abr.java:15: class、interface、または enum がありません。 abstract show1(); ^ .\abr.java:16: class、interface、または enum がありません。 }

    • ベストアンサー
    • Java
  • コンパイル時のエラー。

    いつも大変お世話になりありがとうございます。 初心者向けのJAVAの件。 コンパイルが下記の通りになりました。 どこが間違っているのでしょうか? アドバイスのほど、宜しくお願い申し上げます。 C:\JAVA>javac Lesson09.java C:\JAVA>java Lesson09 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at Lesson09.main(Lesson09.java:4) コード public class Lesson09 { public static void main(String[] args) { int x, y; x = Integer.parseInt(args[0]); y = Integer.parseInt(args[1]); java.awt.Point point = new java.awt.Point(); point.setLocation(x, y); System.out.println("X, Y座標をフィールドで参照します(int)"); System.out.println("X 座標:" + point.x); System.out.println("Y 座標:" + point.y); System.out.println("X, Y座標getメソッドで参照します(double)"); System.out.println("X 座標:" + point.getX()); System.out.println("Y 座標:" + point.getY()); } }

    • ベストアンサー
    • Java
  • 抽象クラス、インターフェイスについて

    少し長いですが、以下にコードを書きました。これでコンパイルすると、13個ほどエラーが出て、何がなんだかわかりません。何が間違っているのでしょうか?よろしくお願いします。ちなみに本を見ながらの独学です。 //のりものインターフェイス interface iVehicle { abstract void show(); } //車くらす class Car implements iVehicle { private int num; private double gas; public Car(int n, double g)) { num = n; gas = g; System.out.println("ナンバー" + num +"ガソリン量" + gas +"の車を作成しました"); } public void show() { System.out.println("車のナンバーは" + num +"です"); System.out.println("ガソリン量は" + gas +"です"); } } //飛行機クラス class Plane extends Vehicle { private int flight; public Plane(int f) { flight = f; System.out.println("便" + flight +"の飛行機を作成しました"); } public void show() { System.out.println("飛行機の便は" + flight +"です"); } } class sample8 { public static void main(String args[]) { iVehicle ivc[]; ivc = new iVehicle[2]; ivc[0] = new Car(1234, 20.5); ivc[1] = new Plane(232); for(int i=0; i<ivc.length; i++){ if(vc[i] instanceof Car) ivc[i].show(); } } }

    • ベストアンサー
    • Java
  • JAVAのコンパイルについて教えてください。

    public class exam05d { public static void main(String[] args) { int value=args[0]; if(value==0) { System.out.println("valueの値は0"); } else { System.out.println("valueの値は0以外"); } } } 上記のプログラムをコンパイルすると exam05d.java:3: 互換性のない型 検出値:java.lang.String 期待値:int int value=args[0]; というエラーが出てしまいます。 これを正常に動作させるにはどう改良すれば良いか教えて頂けないでしょうか。 また変更を行わなければならない理由も教えていただけると有難いです。 プログラミングを始めたばかりで行き詰っています。 回答お待ちしております。

  • setNameの使いかたでコンパイルエラーになる。

    「これならわかるJava」講談社を教科書にして勉強している初心者です。下記サンプルが、タイプミスはないとは思うのですが、教科書ではうまく行っているのに、私の場合コンパイルエラーになります。 理由がわかりませんのでご教示くださると助かります。 class Dog { String name; int energy; Dog(String n,int e){ name=n; energy=e; } Dog(){ name="未定"; energy=50; } void bark(){ System.out.println("わん、わん"); energy--; } void intro(){ System.out.println("僕の名前は"+name+"だ。わん。"); System.out.println("エネルギーは"+energy+"だ。わん。"); } void eat(int e){ energy+=e; } void setName(String n){ name=n; } } class PlayWithDog9 { public static void main(String[] args) { Dog x=new Dog("太郎",100); x.intro(); Dog y=new Dog(); y.setName=("次郎");1 //エラー箇所 y.intro(); } } エラー:シンボルが見つけられません。 シンボル:変数setName 場所  :y.setName=("次郎");

    • ベストアンサー
    • Java
このQ&Aのポイント
  • 東京もしくは川口市内にある漫画喫茶や漫画カフェ、図書館などで2冊の漫画を楽しめる店舗を探しています。
  • 1種類目の漫画は「ゲーミングお嬢様」というタイトルの作品で、少年ジャンププラスで連載されていました。全7巻で、作者は大@さんという方です。
  • 2種類目の漫画は「対ありでした」というタイトルの作品で、KADOKAWA関連の漫画です。作者は江島(えじま)さんで、既刊は5巻まで存在します。
回答を見る

専門家に質問してみよう