内部类前面我们讲过了 就是类的内部再定义类;

匿名内部类 这里指的是实例化内部对象 就是没有名字的内部类;

作用:假如某个类只使用一次,则可以使用匿名内部类;

先定义一个接口:

package com.xuyigang1234.chp03.niming;public interface A {public void a();
}

在定义一个具体实现类:

package com.xuyigang1234.chp03.niming;public class B implements A{@Overridepublic void a() {System.out.println("a方法");}}

我们来写个简单的测试类:

package com.xuyigang1234.chp03.niming;public class Test {public void test(A a) {a.a();}public static void main(String[] args) {Test t = new Test();t.test(new B());}
}

运行输出:

a方法

假如,我们这个地方仅仅调用一次一个test,并且没有A接口的具体实现类,这时候,匿名内部类就派上用场了;

package com.xuyigang1234.chp03.niming;public class Test {public void test(A a) {a.a();}public static void main(String[] args) {Test t = new Test();t.test(new B());//匿名内部类t.test(new A(){@Overridepublic void a() {System.out.println("匿名内部类,一次性使用");}});}
}

运行输出:

a方法

匿名内部类,一次性使用

这里我们直接new 接口名字即可 然后写上实现方法  之所以说匿名内部类,我们这里压根没有定义类似 A a=new B()的a对象;

转载于:https://www.cnblogs.com/xyg-zyx/p/9831613.html

Java 面向对象 --匿名内部类相关推荐

  1. 9.Java面向对象-方法参数类型及返回值类型、权限修饰符、内部类、匿名内部类

    9.Java面向对象-方法参数类型及返回值类型.权限修饰符.内部类.匿名内部类 一.类名作为形式参数 A:案例演示: 类名作为形式参数当你以后看到一个方法的形参要一个 类 类型,你就传递一个该类的对象 ...

  2. 第7篇-JAVA面向对象Ⅲ

    第7篇-JAVA面向对象Ⅲ 每篇一句 :任何值得去的地方,都没有捷径 初学心得: 温故而知新 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-04-09| JAVA面向对象 Ⅲ] 1.J ...

  3. Java 面向对象细节

    文章目录 前言 二.类与对象 2.0.类的定义与对象的使用 2.0.1.类的语法格式 2.0.2.对象的创建和使用 2.0.3.Java堆内存与栈内存 2.0.4.this引用 2.1.static修 ...

  4. Java面向对象编程篇4——内部类

    Java面向对象编程篇4--内部类 1.内部类的概念 当一个类的定义出现在另外一个类的类体中时,那么这个类叫做内部类 (Inner),而这个内部类所在的类叫做外部类(Outer). 类中的内容:成员变 ...

  5. ❤️什么是Java 面向对象《装、继承、多态、抽象》?建议收藏)❤️

    Java 面向对象(详解) 一.面向对象 (1).面向对象编程(Object-Oriented Programming,OOP) (2).面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装 ...

  6. JAVA面向对象的基础知识快速通过---自学笔记(一)

    网上的教学很多,看视频非常浪费时间,看文字快点,快速捡起知识点,我只根据我学到的,集各种教学学习,把精华提取出来,把主要概念通俗的展示出来,基本常识就不介绍了,其他的资料谁看了都能看懂,只是java特 ...

  7. Java面向对象总结

    Java 面向对象一览 111111010n 1100111 010000111100 101010套10010m0 JaVa面向对象一览 本文大纲: 总结 前言 与 C++ 比较 Java 语言特点 ...

  8. Java自学笔记——Java面向对象——04.抽象类、接口、内部类

    Java 面向对象各节 Java自学笔记--Java面向对象--01.回顾方法 Java自学笔记--Java面向对象--02.构造器.类和对象 Java自学笔记--Java面向对象--03.封装.继承 ...

  9. 面试轻松讲清楚 Java 面向对象的问题与知识(类与对象,封装,继承,多态,接口,内部类...)

    写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...

  10. Java面向对象高阶

    继承 继承是java面向对象编程技术的基石,因为它允许创建分等级层次的类 继承就是子类继承父类的特征和行为,使得子类对象具有父类的属性(特征)和方法(行为). 子类实例化内存分析 super不是引用类 ...

最新文章

  1. DevOps:怎么实现源代码注释和系统文档的自动化更新?
  2. Go语言写的解析器(支持json,linq,sql,net,http等)
  3. EEG数据、伪影的查看与清洗
  4. Raspbian安装Opencv3
  5. HIBERNATE 持久化基础
  6. 计算机管理无法连接虚拟磁盘服务,虚拟磁盘服务错误怎么操作【图文教程】
  7. 第一个MapReduce程序-------WordCount
  8. 编译原理:利用yacc/bison进行语法分析
  9. MVC 中使用uploadify上传图片遇到的蛋疼问题
  10. 蒙特卡洛模拟Ising模型
  11. 孙玄:转转如何打造AI工程架构体系
  12. Python-修改图片分辨率
  13. Lazada和Shopee选品分析之马来西亚电商市场详解-海鲸跨境
  14. 用html设计一个时间距离查询,使用HTML5 Geolocation实现一个距离追踪器
  15. SIP协议详解(中文)-1
  16. 2021年目标,我打算这样去实现
  17. 宋词欣赏 李清照
  18. 如何有效开展小组教学_小学语文教学中如何有效开展小组合作学习
  19. 给定三角形边长,求三角形面积
  20. webstorm破解方法(2018.3.2 64x版本)

热门文章

  1. 拓端tecdat|R语言马尔可夫区制转移模型Markov regime switching
  2. java swing结束事件_java swing清除事件队列
  3. 全国各地收货详细地址_2020高考成绩在哪里查询 2020全国各地高考分数查询时间地址最新...
  4. 图卷积网络(Graph Convolutional Network)
  5. deepfake 资源总结
  6. 支持向量机在风控竞赛数据集上的应用
  7. Uber开源深度学习工具Ludwig学习实践
  8. python 包的使用 (四)——Seaborn绘图
  9. C++ std::vector 自定义排序
  10. vue el-input输入框禁止输入空格