テストクラスに含まれるコードを正しく実行できるように、継承を使用しようとしています。goPee() メソッドを備えたバスルームと呼ばれる抽象クラスまたはインターフェースを実装する方法がわかりません。コーディングする方法を知っていますか?
抽象クラスまたはインターフェイスのいずれかを追加し、それぞれ extends または implements を介して Human クラスに追加すると、常に goPee() メソッドの Human クラスに実装を記述するように求められますが、これはやりたくありません。私の goPee() メソッドの実装は、Male および Female 子クラスに記述されています。
import java.util.ArrayList;
class Human
{
private String name;
public Human (String name)
{
this.name = name;
}
public String getName()
{
return name;
}
public void eat()
{
System.out.println(name + " went to fridge.");
}
}
class Male extends Human
{
public Male(String name)
{
super(name);
}
public void goPee()
{
System.out.println(getName() + " stood up.");
}
}
class Female extends Human
{
public Female(String name)
{
super(name);
}
public void goPee()
{
System.out.println(getName() + " sat down.");
}
}
public class TestHuman
{
public static void main(String[] args)
{
ArrayList<Human> arr = new ArrayList<Human>();
arr.add(new Male("john"));
arr.add(new Female("sally"));
for (int count = 0; count < arr.size(); count++)
{
arr.get(count).eat();
arr.get(count).goPee();
}
}
}