博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
随写内部类
阅读量:6679 次
发布时间:2019-06-25

本文共 774 字,大约阅读时间需要 2 分钟。

在类里面定义的类就是内部类;

内部类大致的氛围非静态内部类,静态内部类,局部内部类和匿名内部类;内部类可以调用外部类的成员变量,局部内部类除外;下面的java文件编译好后,会生成两个class文件。,一个是Outer.class,另一个是Outer$Inner.class,这个就是内部类的class文件;

下面就是最简单的一个内部类的例子:

class Outer{    class Inner{    }}

下面的代码告诉了如何创建一个内部类对象

class Outer{    class Inner{    }    public static void main(String[] args){         Inner in=new Inner();//这样创建内部类对象会引发编译异常,因为静态成员不能访问非静态成员         Outer.Inner in=new Outer.Inner();//这样来创建内部类对象才是正确的    } }

1.非静态内部类

上面的两个例子就是非静态的内部类,想要创建非静态的内部类的时候,必须调用外部的类因为非静态的内部类是类似于方法,Field;java不允许非静态的内部类中不能定义静态代码块,静态成员变量,静态的方法;

2.局部内部类

局部内部类就是定义在方法里面的类,因为局部内部类不能在外部类以外的方法中用,所以局部内部类不能使用访问修饰符和static修饰符

3.匿名内部类

下面的实例说明了如何声明匿名内部类,匿名内部类只能使用一次。

class Outer{    new D(){        System.out.print("这是匿名内部类");    }}

 

转载于:https://www.cnblogs.com/kong-lin/p/4185471.html

你可能感兴趣的文章
修改root密码
查看>>
Java语言Switch语句详解
查看>>
在Word 2007文档表格中设置行高度和列宽度
查看>>
微软云计算,有多近?有多远?
查看>>
android:layout_gravity和android:gravity
查看>>
我的友情链接
查看>>
使用 docker-compose 批量创建机器
查看>>
洛谷——P2820 局域网
查看>>
php获取数组第一个数组单元值的方法
查看>>
关于MYSQL的一些命令
查看>>
zabbix + RedHat7 安装配置指导
查看>>
Linux基础命令---显示主机名hostname
查看>>
ASP后门、***清理
查看>>
strtus2的xml文件配置
查看>>
Error:No suitable device found: no device found for connection
查看>>
SCCM 2016 为客户端分发管理组件Configuration Manager(一)
查看>>
CentOS 7 多网卡绑定
查看>>
python函数
查看>>
eclipse中要运行带参数的程序
查看>>
1.9-selinux介绍
查看>>