抽象类的匿名子类
代码:
package test3;
public class PersonTest {
public static void main(String[] args) {
method(new Student());// 匿名对象
Worker worker = new Worker();
method1(worker);// 非匿名的类非匿名的对象
method1(new Worker());// 非匿名的类匿名的对象
System.out.println("*************************************");
// 创建了一个匿名类的对象:p
Person p = new Person() {
@Override
public void eat() {
System.out.println("我的肚子好饿~");
}
@Override
public void breath() {
System.out.println("看!空气!");
}
};
method1(p);
System.out.println("**************************************");
method1(new Person() {
@Override
public void eat() {
System.out.println("吃美食");
}
@Override
public void breath() {
System.out.println("吃空气!");
}
});
}
public static void method1(Person p) {
p.eat();
p.walk();
p.breath();
}
public static void method(Student s) {
}
}
class Worker extends Person {
@Override
public void eat() {
// TODO Auto-generated method stub
}
@Override
public void breath() {
// TODO Auto-generated method stub
}
}
输出:
人能走路
人能走路
*************************************
我的肚子好饿~
人能走路
看!空气!
**************************************
吃美食
人能走路
吃空气!