4-4 内嵌类之匿名类

Anonymous class - 匿名类

匿名类是一种特殊的局部类。局部类的特性与约束都适用

	public void instanceMethod() {
		// 定义一个匿名类,实现一个接口
		Action action = new Action() {
			public void doAction() {
				System.out.println("a simple anonymous class demo");
			}};
		action.doAction();
		
		// 定义一个匿名类,扩展其功能
		new BaseClass(5) {
			public void printData(){
				System.out.println("data = " + getData());
			}
		}.printData();
	}
}

interface Action {
	void doAction();
}

class BaseClass {
	private int data;
	
	public BaseClass (int data) {
		this.data = data;
	}
	
	public int getData() {
		return data;
	}
}
-- 何时使用
该类定义代码段很短
只需要创建该类的一个实例
类的定义代码与类的使用代码紧邻
不影响代码的易读性


你可能感兴趣的:(Class,扩展,action,interface)