美文网首页Java学习笔记技术干货
Java中的内部类的种类及其使用

Java中的内部类的种类及其使用

作者: WebberCao | 来源:发表于2016-12-20 17:02 被阅读75次


江户川米兰

Java中的内部类共分为四种:

静态内部类static inner class (also called nested class)

成员内部类memberinner class

局部内部类localinner class

匿名内部类anonymous inner class

静态内部类:

只可以访问外部类的静态成员和静态方法,包括了私有的静态成员和方法

静态内部类与静态内部方法相似,只能访问外部类的static成员,不能直接访问外部类的实例变量与实例方法,只有通过对象引用才能访问。

由于static内部类不具有任何对外部类实例的引用,因此static内部类中不能使用this关键字来访问外部类中的实例成员,但是可以访问外部类中的static成员

静态内部类的对象可以直接生成:Outer.Inner in = newOuter.Inner();

成员内部类:

成员内部类就像一个实例变量。

它可以访问它的外部类的所有成员变量和方法,不管是静态的还是非静态的都可以。

在外部类内部创建成员内部类的实例:

this.new Innerclass();

在外部类之外创建内部类的实例:

(new Outerclass()).new Innerclass();

在内部类里访问外部类的成员:

Outerclass.this.member

局部内部类:

局部内部类定义在方法中,比方法的范围还小。是内部类中最少用到的一种类型。

像局部变量一样,不能被public, protected, private和static修饰。

只能访问方法中定义的final类型的局部变量。

局部内部类在方法中定义,所以只能在方法中使用,即只能在方法当中生成局部内部类的实例并且调用其方法

static方法中定义的内部类可以访问外部类定义的static成员

匿名内部类:

匿名内部类就是没有名字的局部内部类,不使用关键字class, extends, implements,没有构造方法。

匿名内部类隐式地继承了一个父类或者实现了一个接口。

匿名内部类使用得比较多,通常是作为一个方法参数。

相关文章

  • Java中的内部类的种类及其使用

    Java中的内部类共分为四种: 静态内部类static inner class (also called nest...

  • java内部类种类及其特点

    定义 内部类是指在一个外部类的内部再定义一个类。编译成功,就会成为完全不同的两类。 内部类有四种情况 成员内部类:...

  • Java中内部类到底有什么用?

    java中内部类种类较多,语法比较复杂,用法也不尽相同。概括下来,可以分类为以下五种内部类。 内部类 嵌套内部类 ...

  • Java 中的方法内部类

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

  • java内部类

    一、内部类为什么存在 为什么要使用内部类 二、内部类的分类 java内部类的分类 三、为什么内部类中访问局部变量,...

  • Java 内部类和泛型的理解

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

  • android 内存泄漏的初级见识

    内部类的使用 java的非静态内部类和匿名内部类会默认包含外部类的引用,因此在非静态(或匿名)内部类中我们可以直接...

  • 内部类

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

  • 内部类与外部类的区别和联系

    java:内部类与外部类的区别和联系 注意事项一:在内部类中可以随意使用外部类的成员方法以及成员变量。 众所周知...

  • Java 中的内部类

    这篇文章主要包括下面几个方面的内容 Java 内部类的意义 Java 中内部类的分类 Java 中内部类在设计模式...

网友评论

    本文标题:Java中的内部类的种类及其使用

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