继承、接口与泛型.ppt

继承、接口与泛型.ppt

5.16 匿名类 匿名类就是一个子类,由于无名可用,所以不可能用匿名类声明对象,但却可以直接用匿名类创建一个对象。假设Hello是父类,那么下列代码就是用Hello的一个子类(匿名类)创建对象: new Hello() { 匿名类的类体 } 5.16 匿名类 因此,匿名类可以继承类的方法,也可以重写类的方法。我们使用匿名类时,必然是在某个类中直接用匿名类创建对象,因此匿名类一定是内部类,匿名类可以访问外嵌类中的成员变量和方法,匿名类不可以声明static成员变量和static方法。 5.16 匿名类 尽管匿名类创建的对象没有经过类声明的步骤,但匿名类对象的引用必须传递给一个匹配的参数,匿名类的主要用途就是向方法的参数传值。 5.16 匿名类 假设f(B x)是一个方法 void f(B x) { x调用B类中的方法 } 其中的参数是B类对象,那么我们在调用方法f()时可以向f()的参数x传递一个匿名对象: 5.16 匿名类 f(new B() { 匿名类的类体 继承B类的方法或重写B类的方法 } ); 如果匿名类继承了类的方法,x就调用继承的方法;如果匿名类重写了父类的方法,x就

文档评论(0)

1亿VIP精品文档

相关文档