java中的几种内部类
Java中的几种内部类
内部类,听名字就可以知道是什么意思,就是类里面的类。有成员内部类,静态内部类,局部内部类和匿名内部类。
下面说一个每种内部类的的使用。
一. 成员内部类
这样设置就是看看成员内部类可以调用外部类哪些变量和方法,输出的结果为
可以总结出一下的三条
1 成员内部类可以等同于看作是成员变量
2 不能有静态声明
3 可以访问外部的所有数据
二. 静态内部类
看一下输出的结果
可以总结出
1 可以用访问控制权限的修饰符修饰。
2 内部可以声明静态变量和成员变量,静态方法和成员方法。
3 可以访问外部的静态变量和静态方法,不能访问成员变量和成员方法。
三. 局部内部类
输出的结果为
成员方法里面,不可以声明静态变量的,局部内部类属于成员变量里面的,可以知道也不可以的,总结如下
1 局部内部类可以访问外部类所有权限的变量和方法
2 局部内部类可以里面不可以用静态变量和静态方法
四. 匿名内部类
指在方法调用时,方法的效用需要传入某个类对应的对象实参,但是也可以直接new一个某个类型的一个对象,这个对象没有名字
如果反方定义形参,一般是个接口,那么调用的时候,要用其实现类传入,但是我可以不实现这个实现类,而是直接new这个接口的对象,也可以。相当于省下了书写实现类和实例化实现类对象的代码,也可以这么说,直接实例化了一个类,只不过这个类和接口名相同。
谢谢观看 阿童木与小丸子的博客http://www.cnblogs.com/atongmyuxiaowanzi/
java中的几种内部类的更多相关文章
- Java中的四种内部类
Java中有四种内部类: 成员内部类:定义在另一个类(外部类)的内部,而且与成员属性和方法平级,故称成员内部类.类比于外部类的非静态方法,如果用static修饰就变成了静态内部类 静态内部类:使用st ...
- java中的四种内部类使用(1)
内部类 (一) 概述 把类定义在另一个类的内部,该类就被称为内部类. 举例:把类Inner定义在类Outer中,类Inner就被称为内部类. class Outer { class Inner { } ...
- java中的几种单例模式
目前比较常见的有4种(DCL为懒汉模式的线程安全版本). 单例模式的实现一般需要满足以下条件: 1.构造方法私有化,实例属性私有化. 2.必须仅在类的内部完成实例的初始化过程. 3.提供公共静态方法, ...
- JAVA基础学习之throws和throw的区别、Java中的四种权限、多线程的使用等(2)
1.throws和throw的区别 throws使用在函数外,是编译时的异常,throw使用在函数内,是运行时的异常 使用方法 public int method(int[] arr) throws ...
- Java中的五种单例模式实现方法
[代码] Java中的五种单例模式实现方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 2 ...
- JAVA中的四种引用以及ReferenceQueue和WeakHashMap的使用示例
简介: 本文主要介绍JAVA中的四种引用: StrongReference(强引用).SoftReferenc(软引用).WeakReferenc(弱引用).PhantomReference(虚引用) ...
- Java中的四种引用
引用定义 实际上,Java中存在四种引用,它们由强到弱依次是:强引用.软引用.弱引用.虚引用.下面我们简单介绍下这四种引用: 强引用(Strong Reference):通常我们通过new来创建一个新 ...
- java中的几种架构对象(PO,VO,DAO,BO,POJO)
java中的几种对象(PO,VO,DAO,BO,POJO) 一.PO :(persistant object ),持久对象 可以看成是与数据库中的表相映射的java对象.使用Hibernate来生 ...
- JAVA中的四种JSON解析方式详解
JAVA中的四种JSON解析方式详解 我们在日常开发中少不了和JSON数据打交道,那么我们来看看JAVA中常用的JSON解析方式. 1.JSON官方 脱离框架使用 2.GSON 3.FastJSON ...
随机推荐
- cookie理解
cookie的作用域是domain本身以及domain下的所有子域名. cookie的作用域是domain本身以及domain下的所有子域名. cookie的作用域是domain本身以及domain下 ...
- 手把手教你如何利用Meterpreter渗透Windows系统
在这篇文章中,我们将跟大家介绍如何使用Meterpreter来收集目标Windows系统中的信息,获取用户凭证,创建我们自己的账号,启用远程桌面,进行屏幕截图,以及获取用户键盘记录等等. 相关Payl ...
- 【SSH2(理论篇)】--Struts2配置具体解释
上篇博客讨论了SSH2框架模型,在开发过程中发现SSH2的开发模型事实上类似于经典的三层模式,在每一层中分别加入了不同的框架,显示层使用的是Struts2进行配置的,业务逻辑层使用的是Spring配置 ...
- HDFS源代码分析(二)-----元数据备份机制
前言 在Hadoop中,全部的元数据的保存都是在namenode节点之中,每次又一次启动整个集群,Hadoop都须要从这些持久化了的文件里恢复数据到内存中,然后通过镜像和编辑日志文件进行定期的扫描与合 ...
- aapt命令获取apk具体信息(包名、版本号号、版本号名称、兼容api级别、启动Activity等)
aapt命令获取apk具体信息(包名.版本号号.版本号名称.兼容api级别.启动Activity等) 第一步:找到aapt 找到sdk的根文件夹,然后找到build-tools文件夹.然后会看到一些b ...
- WPF popup控件的使用
<Window x:Class="WPFPopup.RuntimePopup" xmlns="http://schemas.microsoft.com/wi ...
- Android 调用QQ登录
调用QQ登录 在如今的项目开发.调用第三方登录.差点儿是必须的,而调用QQ登录也是不可缺少的,这里把相关代码分享出来,希望能拿去就能够用,降低项目开发的时间.希望对大家实用. 1,去QQ ...
- Js 模拟鼠标点击事件
var obj = document.getElementById('go'); if(document.all){ obj.click(); }else{ var e = document.crea ...
- kubernetes-notes--阅读笔记
文档地址 https://www.huweihuang.com/kubernetes-notes/
- java编程之JDBC
JDBC的常用类和接口 1. DriverManager类 管理数据库中的所有驱动程序,其所有的方法都是静态方法,调用时无需实例化,通过类名就可以直接调用. 2. Connec ...