天天看點

Java中匿名内部類1. new 類名/接口/抽象類(){2.匿名内部類

Java中匿名内部類

  • 1. new 類名/接口/抽象類(){
  • 2.匿名内部類

1. new 類名/接口/抽象類(){

}

例如:

new Interface(){

}

2.匿名内部類

本質:匿名内部類會隐式的繼承一個類或者實作一個接口,或者說,匿名内部類是一個繼承了該類或者實作了該接口的子類匿名對象。

代碼:

public class Test02{
	public static void main(String[] args){
		Teacher jt = new JavaTeacher();
		jt.teach();	
		
		//建立的不是接口本身,new Teach()後面的大括号就是一個匿名類實作了Teach接口
		Teacher jt1 = new Teacher(){
		public  void teach(){
			System.out.println("内部老師正在教Java。");	
			}
		};
		jt1.teach();
		new Teacher(){
		public  void teach(){
			System.out.println("内部老師正在教Java。");	
			}
		}.teach();	
	}
}
interface Teacher{
	public void teach();
}
class JavaTeacher implements Teacher{
	public  void teach(){
		System.out.println("Java老師正在教Java。");	
	}
}