/*
匿名对象:就是没有名字的对象。 匿名对象的应用场景:
A:调用方法,仅仅只调用一次的时候。
注意:调用多次的时候,不适合。
匿名对象调用完毕就是垃圾。可以被垃圾回收器回收,释放了系统资源。
B:匿名对象可以作为实际参数传递
*/
class Student {
public void show() {
System.out.println("我爱学习");
}
} class StudentDemo {//如果你看到了一个方法的形式参数是一个类类型(引用类型),这里其实需要的是该类的对象。
public void method(Student s) {//调用的时候,把main方法中的s的地址传递到了这里 Student s = new Student();
s.show();//new student()的对象s传递过来,Student类的对象s调用show()方法
}
} class NoNameDemo {
public static void main(String[] args) {
//带名字的调用
Student s = new Student();
s.show();//s对象调方法
System.out.println("--------------"); //匿名对象
//new Student();
//匿名对象调用方法
new Student().show();
new Student().show(); //这里其实是重新创建了一个新的对象,两次new就创建了两次对象,而且两个对象的地址值是不同的
System.out.println("--------------"); //匿名对象作为实际参数传递
StudentDemo sd = new StudentDemo();
//Student ss = new Student();
sd.method(s); //这里的s对象是一个实际参数,没有用到匿名对象作为实际参数传递的情况
//匿名对象
sd.method(new Student());//sd对象调用该类的mathod方法,匿名对象作为实际参数,作为引用数据类型传递给形式参数。 //再来一个
new StudentDemo().method(new Student());//与上一行代码的本质是一样的
}
}

《java入门第一季》之面向对象(匿名对象)的更多相关文章

  1. JAVA入门第一季(mooc-笔记)

    笔记相关信息 /** * @subject <学习与创业>作业1 * @author 信管1142班 201411671210 赖俊杰 * @className <JAVA入门第一季 ...

  2. Java入门第一季——从此投身Java??

    找工作告一段落. 最后的工作呢,和java紧密相关,也是阴差阳错,不过都是软件开发,都好了,不过以后侧重点肯定是在java这边,php有机会还是一直学下去的,那么美的说~ Java开发第一季  一.简 ...

  3. 《java入门第一季》之面向对象匿名内部类面试题

    面试题一: /*         按照要求,补齐代码             interface Inter { void show(); }             class Outer { // ...

  4. 《java入门第一季》之面向对象(匿名内部类)

    1.认识匿名内部类 /* 匿名内部类 就是内部类的简化写法. 前提:存在一个类或者接口 这里的类可以是具体类也可以是抽象类. 匿名内部类的格式: new 类名或者接口名(){ 重写方法; }:这代表的 ...

  5. 《java入门第一季》之面向对象(形式参数和返回值问题的深入研究3)

    /*     形式参数:         引用类型 接口:需要的是该接口的实现类对象 这个时候就没什么了,和抽象类的解释差不多. */ interface Love { public abstract ...

  6. 《java入门第一季》之面向对象(谈谈接口)

    软件中有接口,这里的接口与硬件中的接口还是有很大区别的. 这里介绍接口不考虑JDK8的新特性(JDK8开始接口里面可以有非抽象方法了,介绍JDK8新特性可能要到整个第一季写完吧!) 还是直接进入接口的 ...

  7. Java入门第一季

    慕课网:http://www.imooc.com/learn/85 Java入门知识第一季 1.Java开发环境和IDE的使用: 2.变量和常量 3.常用的运算符 4.流程控制语句 5.数组:使用Ar ...

  8. Java入门第一季学习总结

    一.课程总概 这门课程的学习难度属于入门级别,又由于有c++的基础,所以学习这门课程也是比较轻松的.可以简单地把这门课的学习分为四部分:第一部分,java的介绍(第一章):第二部分,java的数据类型 ...

  9. 《java入门第一季》之Arrays类前传(排序案例以二分查找注意的问题)

    根据排序算法,可以解决一些小案例.举例如下: /* * 把字符串中的字符进行排序. * 举例:"dacgebf" * 结果:"abcdefg" * * 分析: ...

随机推荐

  1. DoesNotExist at /admin/

    DoesNotExist at /admin/ User has no account. Request Method: GET Request URL: http://127.0.0.1:8000/ ...

  2. Java异常处理-----自定义异常

    自定义异常 问题:现实中会出现新的病,就需要新的描述. 分析: java的面向对象思想将程序中出现的特有问题进行封装. 案例: 定义功能模拟凌波登录.(例如:lb(String ip))需要接收ip地 ...

  3. iOS下使状态栏颜色与H5中背景色一致

    iOS 中有的页面也能会内嵌WebView,然后WebView中用H5做了一个导航,而iOS 中状态栏的颜色很难调整的与H5中导航颜色一致.如下图所示: 其实出现这种原因,主要是因为使用16进制颜色, ...

  4. 从Cell类型转变成数据型

    我们有一个如下的cell数据 cdata = {'1' '11' '111' '1111' '11111'}; 现在要把他转变成double型的数组,很自然会想到的方法是cell2mat,可悲的是会遇 ...

  5. 1086. Tree Traversals Again (25)

    题目如下: An inorder binary tree traversal can be implemented in a non-recursive way with a stack. For e ...

  6. Android初级教程:对文件和字符串进行MD5加密工具类

    转载请注明出处:http://blog.csdn.net/qq_32059827/article/details/52200008   点击打开链接 之前写过一篇博文,是针对字符串进行md5加密的.今 ...

  7. gradle编译自定义注解(annotation)的未解决问题

    最近把一个用eclipse构建的项目,加上了Gradle脚本,用它来编译.虽然最后编译是显示BUILD SUCCESSFUL,但是在编译过程中,却打印出一大堆栈信息,似乎是在编译我自定义的注解时出现的 ...

  8. [GitHub]第七讲:GitHub issues

    文章转载自:http://blog.csdn.net/loadsong/article/details/51591701 Github 上的每个项目仓库,都有三套基础设置可供使用:一个是通过 Gith ...

  9. 如何彻底的删除MySQL数据库(图文教程)

    最近有个小课题数据库使用Mysql,提前写一下Mysql作为复习. 第一步当然是要看如何卸载Mysql,因为安装之前要清理掉一切与Mysql有关的数据,否则后边安装失败. 以下操作以Window7操作 ...

  10. 【IOS 开发】Object - C 语法 之 流程控制

    1. if 条件语句 if 表达式 : 表达式是一个 整型 或者 布尔型, 0 或者 FALSE 为 FALSE, 大于 0 为 TRUE; 代码示例 : /********************* ...