美文网首页
java内部类

java内部类

作者: 栋哥0228 | 来源:发表于2018-03-18 11:07 被阅读0次

java内部类:1一个类定义在一个类的内部。2一个类定义在一个方法的内部。

实现方式:1成员内部类、2局部内部类、3匿名内部类、4静态内部类

(1)成员内部类(一个A类定义在一个B类的内部)

Fruite叫做外部类,Apple叫做内部类,内部类可以无条件的访问外部类的所有成员属性和成员方法。包括private成员和静态成员。、注意:当内部类和外部类出现同名方法和变量时,会发生隐藏现象。(默认情况下访问的是内部类的成员)如果要访问外部类的同名成员,需要以下面的形式进行访问。

外部类访问内部类变量,必须要创建一个内部类对象,通过对象引用来访问内部类成员。

成员内部类是衣服于外部类而存在的。所以要创建一个内部类需要首先创建一个外部类对象。

内部类可以拥有private访问权限、protected访问权限、public访问权限及包访问权限。比如上面的例子,如果成员内部类Inner用private修饰,则只能在外部类的内部访问,如果用public修饰,则任何地方都能访问;如果用protected修饰,则只能在同一个包下或者继承外部类的情况下访问;如果是默认访问权限,则只能在同一个包下访问。这一点和外部类有一点不一样,外部类只能被public和包访问两种权限修饰。我个人是这么理解的,由于成员内部类看起来像是外部类的一个成员,所以可以像类的成员一样拥有多种权限修饰。

(2)局部内部类(定义在一个方法或者一个作用域里面的类)

注:局部内部类的变量不能使用 public protected private static 修饰。

(3)匿名内部类(多用于事件的监听,使用较多)

注:匿名内部类也是不能有访问修饰符和static修饰符的

(4)静态内部类(定义在一个类内部的static 类)

静态内部类不依赖于外部类,静态内部类不能使用外部的非静态变量。

内部类使用场景:1有事件监听的情况。

相关文章

  • Java 中的方法内部类

    Java 中的方法内部类 方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内...

  • PHP转JAVA的记录

    Java 数组 内部类 内部类的创建:内部类可以对包内其他类隐藏想实现一个接口时, 不想新建类文件 内部类可以访问...

  • Java内部类

    Java内部类,简单来说就是将一个类定义在另一个类或者方法里面,主要分为成员内部类,局部内部类,匿名内部类和静态内...

  • Java内部类

    Java内部类 大纲: java内部类有什么特点?为什么需要内部类? 非静态内部类持有外部类的引用 内部类的分类。...

  • 内部类

    内部类可以分为:非静态内部类;静态内部类;匿名内部类。 一、内部类 首先要说,Java为什么要使用内部类?java...

  • Java静态内部类

    Java静态内部类 博客分类: java 两种内部类 Java的内部类有两种,一种是静态内部类,另一种是普通内部类...

  • Kotlin内联类、内部类、嵌套类

    Kotlin内联类、内部类、嵌套类 在开始介绍Kotlin内联类、内部类、嵌套类之前,先简要回顾一下java中的内...

  • JavaSE基础知识学习-----内部类

    内部类 类的五个成分:属性,方法,构造器,代码块,内部类。什么是内部类?在java中,允许一个类定义在另一个类的内...

  • Java 内部类和泛型的理解

    Java 内部类 Java非静态内部类持有对外部类的引用,可以访问外部类的状态使用方法 OuterClass.th...

  • kotlin之内部类,匿名内部类与伴生对象

    个人博客:haichenyi.com。感谢关注 内部类   kotlin的内部类与java的内部类有点不同java...

网友评论

      本文标题:java内部类

      本文链接:https://www.haomeiwen.com/subject/mhzjqftx.html