JAVA-匿名内部类
标签:demUIrri语法使用packagergside实例
匿名内部类
1.定义:
实现一个接口,或者继承一个父类,并返回new好的实例。
2. 语法:
new 类名或者接口名 类的实现体
3.什么情况下使用匿名内部类:
类在创建后马上被使用,且只使用一次
4.注意点:
·匿名内部类不能有构造方法
·匿名内部类不能定义任何静态成员、静态方法。
·匿名内部类不能是public,protected,private,static。
·只能创建匿名内部类的一个实例。
·一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。
5.举栗子
通过继承的方式实现匿名内部类:
1 package com.han6.java;
2
3 public class Fruit
4 {
5 public void saySomething()
6 {
7 System.out.println(\”I am Fruit!\”);
8 }
9
10 public static void main(String[] args)
11 {
12 Fruit fruit = new Fruit()
13 {
14 @Override
15 public void saySomething() {
16 System.out.println(\”I am Apple!\”);
17 }
18
19 };
20 fruit.saySomething();
21 }
22
23 }
通过实现接口的方式来使用匿名内部类:
1 package com.han6.java;
2
3 public class Demo
4 {
5 public static void main(String[] args)
6 {
7 Person person = new Person()
8 {
9 @Override
10 public void eat()
11 {