Java嵌套类

本文详细介绍了Java语言中的嵌套类概念,包括静态嵌套类和内部类的区别,以及内部类的三种形式:普通内部类、局部内部类和匿名内部类。文章还深入探讨了内部类与其外层类之间的依赖关系及访问权限。

 

Java语言支持类的嵌套定义,也就是说,允许将一个类定义在其他类的内部,其中内层的类被称为嵌套类(Nested Class)。

 

嵌套类可以分为两种:

·静态嵌套类(static Nested Class):使用static修饰

·内部类(Inner Class):非static修饰

 

例如:

public class A

{

    private class B

    {}  //内部类

    private static class C

    {}  //静态嵌套类

}

 

内部类又可以分为三种情况:

1.普通的内部类:在Java类中、方法或语句块的外部定义的非static类。

2.局部内部类:也称局部类(Local Class),定义在方法或语句块中的类。

3.匿名内部类:也称匿名类(Anonymous Class),定义在方法或语句块中,该类没有名字、只能在其所在之处使用一次。

 

·内部类与其所在的外层类之间存在着逻辑上的依赖关系——内部类的对象不能单独存在,它必须依赖一个其外层类的对象;

·在内部类中可以直接访问其外层类中的成员、包括属性和方法,即使这些方法和属性是private的。

·内部类可以声明为抽象类,因此可以被其他的内部类继承,也可以声明为final的。

·和外层类不同,内部类可以声明为private或protected。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值