public class HelloWorld
{
public static void main(String[] args)
{
Dog animal1 = new Dog();
Cat animal2 = new Cat();
Duck animal3 = new Duck();
animal1.sayHello();
animal2.sayHello();
animal3.sayHello();
}
}
class Dog
{
public void sayHello()
{
System.out.println("Bark");
}
}
class Cat
{
public void sayHello()
{
System.out.println("Meow");
}
}
class Duck
{
public void sayHello()
{
System.out.println("Quack");
}
}
public class HelloWorld
{
public static void main(String[] args)
{
Dog animal1 = new Dog();
Cat animal2 = new Cat();
Duck animal3 = new Duck();
System.out.println("A dog says "
+animal1.getHello()
+", is carnivorous: "
+animal1.isCarnivorous()
+", is a mammal: "
+animal1.isAMammal());
System.out.println("A cat says "
+animal2.getHello()
+", is carnivorous: "
+animal2.isCarnivorous()
+", is a mammal: "
+animal2.isAMammal());
System.out.println("A duck says "
+animal3.getHello()
+", is carnivorous: "
+animal3.isCarnivorous()
+", is a mammal: "
+animal3.isAMammal());
}
}
abstract class Animal
{
public boolean isAMammal()
{
return(true);
}
public boolean isCarnivorous()
{
return(true);
}
abstract public String getHello();
}
class Dog extends Animal
{
public String getHello()
{
return("Bark");
}
}
class Cat extends Animal
{
public String getHello()
{
return("Meow");
}
}
class Duck extends Animal
{
public boolean isAMammal()
{
return(false);
}
public boolean isCarnivorous()
{
return(false);
}
public String getHello()
{
return("Quack");
}
}
在编译并运行我们的程序以后,输出应该如下:
A dog says Bark, is carnivorous: true, is a mammal: true
A cat says Meow, is carnivorous: true, is a mammal: true
A duck says Quack, is carnivorous: false, is a mammal: false