Person.java
package insof;
public class Person extends Object{
String name;
static int age;
public Person() {
this.name = "tom";
System.out.println("执行的是构造方法");
}
public void test(){
System.out.println("Person的test方法");
}
Main.java
package insof;
public class Main {
public static void main(String[] args) {
//匿名内部类,为Person的子类
//该类没有类名,不能显示的调用new方法来创建对象,想要初始化属性可以用代码块
Person p = new Person() {
{
super.name = "jack";
}
@Override
public void test() {
System.out.println("匿名子类");
}
};
System.out.println(p.name);
p.test();
}
}
输出:
执行的是构造方法 jack 匿名子类