Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

インターフェースについて

public class main {

public static void main(String[] args) {
dog  obj1 = new dog("いぬ");
cat  obj2 = new cat("ねこ");
lion obj3 = new lion("らいおん");

Animal[]animal={obj1,obj2,obj3};
for (Animal ani:animal){
System.out.println("私は"+ani.getname()+"です");
※System.out.println("食べ物は"+ani.eat()+"です");
※System.out.println("鳴き声は"+ani.speak()+"で
す");
}
}
}
--------------------------------------------------
public interface Animal{
public void name();
public void eat();
public void speak();
String getname();
}
--------------------------------------------------
public class cat implements Animal {
String name;
public cat (String name){
this.name=name;
}
public void name(){
System.out.println("ねこ");
}
public void eat(){
System.out.println("キャットフード");
}
public void speak() {    System.out.println("にゃー
にゃー");

}
public String getname() {
return null;
}
}
--------------------------------------------------


Javaを学び始めたばかりで、インターフェースのプログ
ラムを組んでいるのですが
※の箇所で「演算子 + は引数の型 String, void で未
定義です」が出てしまうのはどうしたら解決できるので
しょうか。
よろしくお願いします。

2

回答

9917

閲覧

2件の回答

評価

0

http://www.javaroad.jp/index_basic.htm

ちゃんと順を追って勉強すること。

評価

0

interfaceの問題ではなくて
呼び出し側がvoid宣言されていることが問題。
public String eat(){
のような宣言が求められる。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。