//抽象类作为形参
abstract class Stu
{
public abstract void study();
}
class Person
{
void method(Stu s)
{
s.study();
}
}
class Man extends Stu
{
public void study()
{
System.out.println("好好学习,天天向上");
}
}
class Haha
{
public static void main(String args[])
{
Person person = new Person(); //多态,编译看Stu类里面有没有study这个成员方法,如果有就编译成功
//然后执行是看右边的Man类,执行Man.study()
Stu student = new Man();
person.method(student);
}
}
//接口作为形参
interface Person
{
public abstract void study();
}
class Man
{
void method(Person person)
{
person.study();
}
}
class Stu implements Person
{
public void study()
{
System.out.println("good good study,day day up");
}
}
class Haha
{
public static void main(String args[])
{
Person person = new Stu();
new Man().method(person);
}
}