public class Test {
public static void main(String[] args) {
Animal a = new Dog();
a.syaHi();
Animal b = new Bulldog();
b.syaHi();
Dog dog = (Dog)b;
dog.syaHi();
check(dog);
Bulldog bulldog = (Bulldog)b;
check(bulldog);
}
public static void check(Dog dog)
{
System.out.println("check dog"+dog.getName()+".");
}
public static void check(Bulldog bulldog)
{
System.out.println("check bulldog"+bulldog.getName()+".");
}
}
interface Animal
{
void syaHi();
String getName();
}
class Dog implements Animal
{
public String getName()
{
return "Bob";
}
private String bark()
{
return "wang-wang";
}
public void syaHi()
{
System.out.println("I am "+getName()+"."+bark());
}
}
class Bulldog extends Dog
{
@Override
public String getName(){return "Mike";}
private String bark(){return "WOO-WOO";}
}
请问这段程序的输出是什么 为什么
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-