これらの2つのクラスを持っています。継承作業はできません
public class TVChannel
{
/**
* Fields
*/
private String name;
private int length;
private int day;
private String start;
private int year;
private String comment;
/**
* Constructor
*/
public TVChannel (String name, int length, int day, String start, int year)
{
this.name=name;
this.length=length;
this.day=day;
this.start=start;
this.year=year;
comment=" ";
}
public void changeDay(int newday){day=newday;}
public void changeStart(String start){this.start=start;}
public String giveName(){return name;}
public int giveLength(){return length;}
public int dajDay(){return day;}
public String toString(){return name + " " + length + ":" + start + ":" + year;}
}
そしてもう一つは、次のとおりです。
public class Quiz extends TVChannel
{
private String author;
private String host;
public String giveHost(){return host;}
}
だから私はここにTVChannelスーパークラスを作成しようとしています。しかし、クイズをコンパイルすると、エラーメッセージが表示されます。
Constructor TVCHannel in class TVChannel cannot be applied to given types. required:java.lang.String,int,int,java.lang.String,int,java.lang.String,java.lang.String. found:no arguments actual and formal argument lists differ in length
これまでのクラスでこの問題は発生していませんでした。
私はこのようにそれを解決しようとした:
public Quiz(String name, int length, int day, String start, int year)
{
super(name, length, day, start, year);
}
しかし、私はこの取得:公共クイズで
error: invalid method declaration; return type required?
を。
Javaがメソッドのコンストラクタを誤っているのはなぜですか?
これを再現できません(http://ideone.com/EI7tcK)。 [mcve]を提供してください(あなたのコンストラクターを追加する方法は正しい - コンストラクターは継承されず、スーパークラスはこれらの5つのパラメーターを持つコンストラクターしか持たないので、サブクラス**は 'super( ...) ')。 –
main()メソッドを提供できますか? – Kaushal28
どのIDEを使用していますか?タイプミスをチェックして、きれいにして再構築してください。また、paranthesesをチェックしてください。どこでCTORを宣言しましたか?上記のスニペットでは、クラススコープの外にあるようです。 – Fildor