/*** @Author: YuShiwen* @Date: 2020/11/18 2:06 PM* @Version: 1.0*/
public class AnonymousTest {public static void main(String[] args) {//非匿名类 的 非匿名对象,即类名为Freshman,对象名为:freshmanFreshman freshman = new Freshman("Mr.Yu",18);freshman.setUniversity();System.out.println(freshman);//非匿名类 的 匿名对象,即new Freshman("Ms.cheng", 18),知其类名为Freshman,对象名匿名了freshman.printStudent((new Freshman("Ms.cheng", 18)));//匿名子类 的 非匿名对象,即以下语句,// 知其父类名为Student,不知其子类名,创建了子类对象名为:firstClassStudent 用父类接收Student firstClassStudent = new Student("小明",19) {@Overridepublic void setUniversity() {this.school = "Tsinghua University";}};firstClassStudent.setUniversity();System.out.println(firstClassStudent);//匿名子类 的 匿名对象,即以下语句// 知其父类名为Student,不知其子类名,用子类创建对象,也不知其对象名freshman.printStudent(new Student("小华",18) {@Overridepublic void setUniversity() {this.school = "Peking University";}});}}//抽象类
abstract class Student{String name;int age;String school;public Student() {}public Student(String name, int age) {this.name = name;this.age = age;}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", age=" + age +", school='" + school + '\'' +'}';}public abstract void setUniversity();}class Freshman extends Student{public Freshman() {}public Freshman(String name, int age) {super(name, age);}@Overridepublic void setUniversity() {this.school = "Yangtze University";}public void printStudent(Student student){System.out.println(student);}}

输出结果:

Student{name='Mr.Yu', age=18, school='Yangtze University'}
Student{name='Ms.cheng', age=18, school='null'}
Student{name='小明', age=19, school='Tsinghua University'}
Student{name='小华', age=18, school='null'}Process finished with exit code 0

Java中匿名子类 的 匿名对象、匿名子类 的 非匿名对象、非匿名类 的 匿名对象、非匿名类 的 非匿名对象相关推荐

  1. Java开发知识之Java中的集合上List接口以及子类讲解.

    Java开发知识之Java中的集合类 一丶什么是集合类 如果你学习说数据结构,那么学习集合就很简单. 因为集合就是存储数据的结构. 例如 有链表结构 (list ) 还有 map结构.等等. 集合类就 ...

  2. Java 中父类一定可以强转成子类吗??

    1 父类类型变量指向子类对象,不用强转: 如: Object    a =new A(); public class SocketTest {public static void main(Strin ...

  3. java中的CAS和原子类的实现

    什么是CAS     CAS的全称为Compare-And-Swap,直译就是对比交换.是一条CPU的原子指令,其作用是让CPU先进行比较两个值是否相等,然后原子地更新某个位置的值,经过调查发现,其实 ...

  4. java中对象的生存期_Java中对象的生存周期

    文章目录 JAVA对象的生存周期 1.创建阶段(Created) 为对象分配内存需要考虑的问题 2.应用阶段(In Use) 3.不可见阶段(Invisible) 4.不可达阶段(Unreachabl ...

  5. java中形参不可以是对象吗_(重要)java都是值传递,与对象形参所指向的对象改变,其实参所指向的对象也相应改变并不矛盾(2011年9.30日一天写的两个程序的总结结果)...

    1.0建立二叉树的代码,在java中必须创建二叉树的方法必须用返回值,因为不存在c语言中的引用传递,在java中只有值传递 代码1为正确,代码2(没有使用返回值)为错误.那么为什么之前的例子中将对象作 ...

  6. java中的静态、动态代理模式以及Spring中的CgLib动态代理解读(面试必问)

    java中的静态.动态代理模式以及Spring中的CgLib动态代理解读(面试必问) 静态代理 动态代理 CgLib动态代理     基础知: 反射知识 代理(Proxy)是一种设计模式,提供了对目标 ...

  7. java中构造函数使用(一)

    Java中构造函数不能被继承.子类在继承父类的时候,首先运行父类构造函数,也就是说,运行子类时会先调用父类的构造函数.构造函数一般用来初始化成员属性和成员方法. Java中构造函数不能被继承. 解析: ...

  8. java中,剩下的这两个内部类不太好理解!

    点击上方蓝色关注我们! 大家好,我是雄雄,今天我们接着昨天的分享,将剩余的两个内部类(方法内部类和匿名内部类)结束掉,这两个内部类都不太好理解. 昨天的推文:java中常见的几种内部类,你会几个?(未 ...

  9. java中的多态_Java中的多态

    多态与HoFs 朋友们好久不见啊,最近笔者同时在写脚本型语言--JavaScript,和工业级的面向对象语言--Java. 在写代码的同时呢,也会思考这些语言的不同.今天就拿 Java 中的多态,来谈 ...

  10. java 中线程的创建方式

    如果说在java中创建线程的有几种方式的话,归根结底我认为就两种方式 1.继承Thread类,重写run方法 继承Thread类,如下图重写了run()方法 通过start()方法来启动线程 最后的输 ...

最新文章

  1. 人工智能行业应用之:为建筑工程提供全新解决方案
  2. 老生常谈,正确使用memset
  3. html标签table的使用,HTML标签之table
  4. python面向对象继承_Python 面向对象 --- 继承
  5. java 文件 递归_JAVA实现遍历文件夹下的所有文件(递归调用和非递归调用)
  6. c++ amp vs2017 报错_opencv4教程-1 opencv的安装与调试Windows10+vs2017
  7. VC实现在ListBox中选择背景位图
  8. FZU 1402 猪的安家 中国剩余定理
  9. Discuz在Firefox下无法切换至编辑器状态解决(Z)
  10. UVA299 UVALive5600 Train Swapping【逆序偶+暴力】
  11. 洛谷——P1155 双栈排序
  12. 手机 debian linux,Android上的Ubuntu Debian Armel
  13. CF1151div2(Round 553)
  14. 领克车机2.0安装 app 方法,亲测有效
  15. 马哥 linux 活动,马哥linux | Linux系统性能和使用活动监控工具 sysstat
  16. jit流线制_JIT精益生产实务四—安定化生产.ppt
  17. 3A算法—自动曝光(AE)
  18. word背景颜色怎么设置绿色?把word背景调成绿色
  19. 获取当前的格林尼治时间
  20. Uniapp 添加Iconfont

热门文章

  1. 音乐播放上一首,下一首
  2. SpringBoot小彩蛋
  3. iOS 项目多环境配置
  4. uniapp做H5项目渲染后端接口返回的图片流
  5. 一个女孩如何准备行装和安全的独自旅行
  6. 【CCTC 2017】云计算核心技术与实践专场:剖析云计算关键技术,探寻金融、气象行业转型升级之路...
  7. DeepFace--Facebook的人脸识别&& FaceNet--Google的人脸识别
  8. DM3730 x-loader 分析 五
  9. 模拟芯片和数字芯片的比较
  10. 游戏开发常用算法 (一)