内部类

  1. 理解:我可以在类A的内部定义一个类B,B为A的内部类,A为B的外部类
  2. 内部类的分类:成员内部类(静态的、非静态的) vs 局部内部类(方法内、代码块内、构造器内)

3. 成员内部类的理解

3.1. 成员内部类作为一个类
可以被abstract修饰,表示不能被实例化
可以被final修饰,不能被继承
3.2成员内部类作为外部类的成员,可以被4中权限修饰符修饰
可以被static修饰
可以调用外部类的结构(主要是属性、方法)

内部类的使用:
Person–外部类
Dog-静态内部类
Bird-内部类

1.创建静态成员内部类的对象

Person.Dog dog=new Person.Dog();
dog.shout//调用dog中的方法

2.创建非静态的成员内部类的对象

Person p1= new Person();
Person.Bird b1=new p1.Bird();
b1.sing();
  1. 调用外部类的属性
    当出现参数同名时用类.this.,来调用外部类的属

局部内部类的使用

  1. 返回一个类时
interface A(){
	classB implements A{}
	return B;
	或者return new A(){};
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值