内部类---匿名内部类

1、成员内部类

含义;在一个类中定义另一个类,可以访问外部类成员,包括私有。外部类成员要访问内部类的方法,得创建内部类的对象。

访问方式

(1)、需要静态的成员内部中的成员方法

外部类名.内部类名 对象名=new 外部类对象().new内部类对象();

(2)、静态的成员内部类中成员的访问方式:

外部类名.内部类名 对象名=new 外部类名.内部类名();

2、局部内部类

含义

在局部位置(外部类的成员方法中)定义的一个类

class Test{
	int num=2;
	//成员内部类
	public class Test1{
		public void num() {
			System.out.println(num);
		}
	}
	//局部内部类(在方法中)
	public void num2() {
		class Test3{
			
		}
	}
}
public class Demo {

	public static void main(String[] args) {
		Test.Test1 t=new Test().new Test1();
		t.num();
	}

}

3、匿名内部类

它是内部类一种简化方式!

格式:new 类名/接口名/抽象类(){

​ 重写方法;

​ }.方法名();//调用方法


```java
abstract class Inner{
		public abstract void show();
		public abstract void show2();
		}
class Aa{
		public void method() {
		 //匿名内部类
			 new Inner() {
				 public void show() {
					 System.out.println("show Inner");
				 }
				 public void show2() {
					 System.out.println("show2 Inner");
				 }
			 }.show2();
		 }

		}
	 
public class Demo1 {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Aa a=new Aa();
		a.method();
	}
}

## 匿名内部类的本质是:
	继承该类或者是实现该接口的子类对象!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值