public class Car
{
public void drive()
{
System.out.println("Driving a car!");
}
public static void main(String[] args)
{
Car car = new Car(){
public void drive()
{
System.out.println("Driving anther car!");
}
};
car.drive();
}
}
B、接口式的匿名内部类。
interface Vehicle
{
public void drive();
}
class Test
{
public static void main(String[] args)
{
Vehicle v = new Vehicle(){
public void drive()
{
System.out.println("Driving a car!");
}
};
v.drive();
}
}
C、参数式的匿名内部类
class Bar
{
void doStuff(Foo f){}
}
interface Foo
{
void foo();
}
class Test
{
static void go()
{
Bar b = new Bar();
b.doStuff(new Foo(){
public void foo()
{
System.out.println("foofy");
}
});
}
}
静态嵌套类
静态内部类中可以定义静态或者非静态的成员
class Outer
{
static class Inner{}
}
class Test
{
public static void main(String[] args)
{
Outer.Inner n = new Outer.Inner();
}
}作者: 孙辉辉 时间: 2012-12-16 17:05
单的说,内部类就是将一个类的定义放到另一个类的定义内部。内部类分为:成员内部类、局部内部类、静态内部类、匿名内部类。