java基础之匿名内部类
内部类:
概述: 类里边还有一个类, 里边那个类叫内部类, 外边那个类叫外部类.
分类:
成员内部类: 定义在成员位置的内部类.
局部内部类: 定义在局部位置的内部类.
格式:
new 类名或者接口名(){
//重写类或者接口中 所有的 抽象方法;
};
本质:
就是一个继承了类或者实现了接口的 匿名的子类对象. 匿名内部类不是类, 而是子类对象.
匿名内部类的实际应用:
1) 当对 对象方法(成员方法) 仅调用一次的时候.
2) 可以作为方法的实参进行传递.
建议:
当接口中或者抽象类中的 抽象方法仅有一个的时候, 就可以 考虑使用匿名内部类.
代码说明:
public class DemoClass { //外部类 String name; //成员变量class Inner1 { //成员内部类 }//成员方法public void show() {int num = 10; //局部变量, 基本类型 Object obj = new Object(); //局部变量, 引用类型//局部内部类. 局部变量, 引用类型class Inner2{}} }
应用举例:
public static void main(String[] args) { // 对, Jumpping#jump(); 调三次. //1) 当对 对象方法(成员方法) 仅调用一次的时候. Jumping jm = new Jumping() { //多态 @Override public void jump() { System.out.println("我会跳"); } }; jm.jump(); jm.jump(); jm.jump(); //2) 可以作为方法的实参进行传递. show(new Jumping() { @Override public void jump() { System.out.println("我会跳, 可以作为方法的实参进行传递"); } }); } public static void show(Jumping jm) { jm.jump(); } public interface Jumping {final public static int num = 10;public abstract void jump(); }
public static void main(String[] args) { /* * 通过匿名内部类实现. * new 类名或者接口名(){ //重写类或者接口中 所有的 抽象方法; }; */ new Animal() { public void eat() { System.out.println("我是匿名内部类的方式实现的, 猫吃鱼"); } }.eat(); } /*** 抽象类: Animal* @author**/ public abstract class Animal {public abstract void eat(); }
转载于:https://www.cnblogs.com/blazeZzz/p/9153747.html
java基础之匿名内部类相关推荐
- Java基础之匿名内部类,匿名内部类是什么?为什么要用匿名内部类,匿名内部类详解。
Java基础之匿名内部类,匿名内部类是什么?为什么要用匿名内部类,匿名内部类详解. 什么是匿名内部类? 顾名思义 匿名 就是没有名字,一个没有名字的内部类,称为匿名内部类. 下面先看一个例子,比如说你 ...
- JAVA基础16-Java匿名内部类
文章目录 匿名内部类的特点 匿名内部类的特点 匿名内部类是没有名称的内部类,没办法引用他们.必须在创建时,作为new语句 的一部分来声明并创建他们的实例. 匿名内部类必须继承一个类(抽象的,非抽象的都 ...
- java 基础(匿名内部类)
匿名内部类 特点:不对外公开,进行实现功能,继承类,继承抽象类,实现某个接口的匿名内部类,实现相应的方法 特别注意:匿名内部类,匿名指的是 ,new 关键字右边的那个对象--如继承,或是接口 { ...
- Java基础——匿名内部类详解及举例
Java基础--匿名内部类详解及举例 说明:定义在外部类的局部位置,比如方法中,并且没有类名 匿名内部类的使用 匿名内部类的基本语法 new 类或接口(参数列表){类体 }; 用途:有些时候为了简化开 ...
- Java基础(内部类和匿名内部类的用法)
Java内部类和匿名内部类的用法 一.内部类: (1)内部类的同名方法 内部类可以调用外部类的方法,如果内部类有同名方法必须使用"OuterClass.this. ...
- java基础(十三)-----详解内部类——Java高级开发必须懂的
java基础(十三)-----详解内部类--Java高级开发必须懂的 目录 为什么要使用内部类 内部类基础 静态内部类 成员内部类 成员内部类的对象创建 继承成员内部类 局部内部类 推荐博客 匿名内部 ...
- Java类与匿名内部类
大家好,这篇文章我们主要向大家介绍Java基础中的Object类.匿名内部类.构造方法的继承知识,一起来学习下吧! 一.Object类 Object类是所有类的父类,所有类都继承Object类. Ob ...
- 四、Android学习第四天——JAVA基础回顾(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 四.Android学习第四天--JAVA基础回顾 这才学习Android的 ...
- (CZ深入浅出Java基础)线程笔记
这是刘意老师的JAVA基础教程的笔记 讲的贼好,附上传送门 传智风清扬-超全面的Java基础 一.线程的引入 1.多线程概述 进程 a.正在运行的程序,是系统进行资源分类和调用的独立单位. b.每个进 ...
最新文章
- SpringBoot第十八篇: 定时任务(Scheduling Tasks)
- 威纶通触摸屏维修_威纶通WEINVIEW触摸屏维修故障检测
- mysql5.7 archive安装_对于Mysql 5.7.19 winx64 ZIP Archive的运用安装详细说明
- MySQL注射绕过技巧(三)
- 云原生消息、事件、流超融合平台——RocketMQ 5.0 初探
- Java 垃圾回收算法之G1
- 数据挖掘:围绕 统计与概率、分类与聚类、检索方法 ,原理演示或应用程序
- 无监督端到端检索式问答系统方案实践
- 矩池云上使用nvidia-smi命令教程
- three.js获取模型大小
- vfp 中调用硬盘_硬盘你真的选对了么?固态真的好用么?细数硬盘这些年出现的坑!...
- 基于Spring的医院药品管理系统的设计与实现
- 舞台音效控制软件_QLab Pro 4.3.2 优秀的舞台音乐控制软件
- 通过U盘刻录镜像安装windows系统
- Ajax技术体系的组成部分
- 亿网文交孟建州艺术品该怎么鉴别,代码分析
- Safari浏览器兼容性问题处理
- linux 怎么看出io是瓶颈,IO瓶颈探测方法
- Android NFC M1卡读写芯片卡读写(CPU卡读写)(RFID读写)
- Python数据处理实例
热门文章
- java三板斧_Java 枚举使用三板斧
- flutter 国际化_Flutter 开发实战资源推荐
- uni-app内置地图轨迹_MIUI11 新增亲情守护,支持安全围栏、运动轨迹功能
- css中的媒体查询_CSS中的媒体查询
- 三、“涤纶纤维和棉纤维两组分纤维在涤/棉混纺织物燃烧过程中有着明显的物理相互作用和化学相互作用”,解释这两种作用。
- php xml表格形式输出,PHP XML如何输出nice格式
- ps命令与top命令参数意义详解
- 计算机组装活动口号,广教育、多技能、求发展喜迎计算机系第五届电脑文化节...
- 四阶龙格库塔法的基本思想_数值常微分方程-欧拉法与龙格-库塔法
- 设计模式---3(工厂方法模式的概念,工厂方法模式的实现,工厂方法模式和简单工厂模式比较)