首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java嵌套

参考链接: Java嵌套接口 本文来自于Java深入解析——透析Java本质的36个话题  Java的嵌套分为 静态成员(静态嵌套)、内部类(非静态嵌套)、嵌套接口。...内部类还可以分为内部成员、本地内部类、匿名内部类。  一、静态成员  习惯上将它成为静态嵌套。标记为在中使用 static 声明的。...静态成员可以访问外围的任何成员,包括声明为private的成员。但是非静态的外围成员,则需要经过恰当的对象引用才能访问。因为是静态成员,所以可以不依赖于外围而独立存在并访问。...在继承方面,静态成员与外围也没有什么区别,在访问权限允许的情况下,任何都可以继承静态成员,静态成员也可以继承任何(允许继承的)或者接口。...而静态成员又是不需要对象就可以直接访问的,由于这种依赖与矛盾关系,内部类不可以申明为静态成员(包括静态成员变量、静态方法、静态成员嵌套接口)或静态初始化块。

66130

java嵌套

class NestedClass {         ...     } }   术语:嵌套分为两种:静态或非静态。嵌套声明为static称为静态嵌套。非静态嵌套都称为内部类。   ...非静态嵌套可以访问它的封装的其他成员,即使这些成员声明是private。静态嵌套不能访问封装的其他成员。...的逻辑分组—如果一个只是被其他一个使用,那么合乎逻辑的是把它嵌套到该类,让这两个在一起。嵌套这样的帮助可以让包更加精简。   ...更可读性,可维护性的代码—在顶级嵌套,让代码更靠近使用的地方。   静态嵌套   和方法,变量一样,一个静态嵌套是和它的外部类关联的。...事实上,一个静态嵌套就像一个顶级,只是行为上嵌套在另一个顶级里而已,达到打包方便的目的。

1.3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java 的嵌套(内部类和静态嵌套

    参考链接: Java嵌套静态 嵌套   Java允许在一个定义另一个,称为嵌套 (Nested Classes),类似下面的形式   class OuterClass {     ...    ...class NestedClass {        ...    } } 复制代码  内部类与静态嵌套    嵌套有静态和非静态两种,其中静态的称为静态嵌套(static nested classes...),非静态的称为内部类(Inner Classes)  一个嵌套是包含它的外部类的一个成员,内部类能够访问外部类的其他成员,而静态嵌套没有访问外部类的权限  作为外部类的成员,嵌套能被声明为private...静态嵌套   静态嵌套与静态里面的方法类似,一个静态嵌套不能直接调用外部类里面的实例变量或者方法,它只能通过对象引用访问他们。  ...由于静态嵌套是通过外部类名来访问的:   OuterClass.StaticNestedClass   所以可以通过以下的语法来创建静态嵌套的对象:   OuterClass.StaticNestedClass

    87620

    友元嵌套

    嵌套 c++允许将的声明放在另外一个中,在另外一个中声明的被称为嵌套。对进行嵌套的主要目的是为了帮助实现另外一个,并避免名称冲突。...嵌套和包含 包含往往意味着将对象作为另外一个的成员,而嵌套不创建成员,而是定义一种类型,该类型仅在包含嵌套声明中有效。...嵌套的作用域特征: 声明位置 包含它的是否可以使用它 从包含它的派生而来的是否可以使用它 在外部是否可以使用 私有部分 是 否 否 保护部分 是 是 否 公有部分 是 是 是,通过限定符来使用...(注:嵌套结构和枚举与嵌套相似,也适用于上表。)...声明的位置决定了的作用域和可见性。可见后,访问控制规则(公有、私有、保护、友元)决定程序对嵌套成员的访问权限。

    73440

    Java进阶07 嵌套

    到现在为止,我们都是在Java文件中直接定义。这样的出现在包(package)的级别上。Java允许嵌套定义。 这里将讲解如何在一个嵌套定义另一个。  ...嵌套 内部类 Java允许我们在的内部定义一个。如果这个是没有static修饰符,那么这样一个嵌套在内部的称为内部类(inner class)。 内部类被认为是外部对象的一个成员。...嵌套static  我们可以在的内部定义static。这样的称为嵌套static(nested static class)。...我们可以直接创建嵌套static的对象,而不需要依附于外部类的某个对象。相应的,嵌套static也无法调用外部对象的方法,也无法读取或修改外部对象的数据。...总结 嵌套允许我们更好的组织 内部类实现了闭包

    85470

    Java中嵌套用法

    在Java中,可以在另一个中定义一个。这些称为嵌套。它们使您能够对只在一个地方使用的进行逻辑分组。因此,这增加了封装的使用,并创建了更具可读性和可维护性的代码。...嵌套的作用域由其封闭的作用域限定。因此,在上面的例子中,NestedClass并不独立于的 OuterClass外部类而存在。 嵌套可以访问嵌套的成员,包括私有成员。...然而,反之则不然,即封闭不能访问嵌套的成员。 嵌套也是其封闭的成员。...嵌套分为两: 1、静态嵌套(static nested class):声明为静态的嵌套称为静态嵌套。 2、内部类(inner class):内部类是非静态嵌套。...(非静态嵌套)的区别: 静态嵌套不能直接访问封闭的其他成员(非静态变量和方法),因为由于它是静态的,它必须通过对象访问封闭的非静态成员。

    2.1K40

    08 内部类(嵌套

    目前,见到的、接口和枚举类型都定义为顶层类型。也就是说,都是包的直接成员,独立于其他类型。不过,类型还可以嵌套在其他类型中定义。...这种类型是嵌套类型(nested type),一般称为“内部类”,是 Java 语言的一个强大功能。 嵌套类型的使用目的,都和封装有关。...静态成员类型 / 静态内嵌 静态成员类型是定义为其他类型静态成员的类型。嵌套的接口、枚举和注解始终都是静态成员类型(就算不使用 static 关键字也是)。 2....根据语境的不同,这个术语可以指代非静态成员、局部类或匿名,但不能指代静态成员类型,因此使用“内部类”这个术语时无法区分指代的是哪种嵌套类型。...局部类往往在方法中定义,但也可以在的静态初始化程序或实例初始化程序中定义。 因为所有 Java 代码块都在中,所以局部类都嵌套在外层中。因此,局部类和成员有很多共同的特性。

    66610

    C++嵌套与局部类

    代码编译运行环境:VS2012+Debug+Win32 ---- 1.嵌套 1.1嵌套的定义 在一个体中定义的叫作嵌套。拥有嵌套叫外围。...1.2嵌套的作用 定义嵌套的初衷是建立仅供某个的成员函数使用的类型。目的在于隐藏名,减少全局的标识符,从而限制用户能否使用该类建立对象。...这样可以提高的抽象能力,并且强调了两个(外围嵌套)之间的主从关系。...(2)从访问权限的角度来看,嵌套既可为私有,也可为公有。在上面的例子中,嵌套B的访问权限是public,可以在外围的成员函数之外使用该嵌套,使用时加上名字限定。...如果将嵌套B的访问权限设置为private,那么只能在外围内使用。 (3)嵌套中的成员函数可以在它的体外定义。

    1.3K10
    领券