Java中的匿名对象

一:匿名对象

正常情况下一个对象有堆内存空间和指向堆内存的栈内存空间,如果一个对象只有堆内存空间却没有栈内存指向,这样的对象就叫做匿名对象。

DEMO:观察匿名对象

其实匿名对象还可以作为方法的实际参数传递。

DEMO:匿名对象最为参数

匿名对象没有明确的规定说是一定要在某些地方使用,如果非要给出一个规定那么可以这样认为:如果一个对象你预计在整个程序中只使用一次则可以声明为匿名对象。

DEMO:观察字符串匿名对象

如果直接写上一个字符串就是一个匿名字符串对象。我们还可以调用字符串匿名对象的另外一个方法实现内容比较。

DEMO:观察字符串对象

发现了输入的内容和后面设置的用户名密码- -致,但是还是没有匹配成功,原因是我们比较用户名和密码的时候使用的是“==”,使用“==”来实现字符串的比较,比较的内容是字符串的内存地址(而不是比较内容)。如果要正确的比较则应该使用字符串对象的“equals()”方法。

DEMO:使用字符串的“equals()”方法比较

总结:

1、匿名对象的概念
2、匿名兑现可以作为方法的参数传递
3、直接写上的字符串也是一个匿名对象,可以调用其方法,
4、如果要比较两个字符串的内容,那么要使用equals()方法。不能使用“==”

(0)

相关推荐

  • 面向对象编程(中)

    继承性(inheritance) 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类 中, 那么多个类无需再定义这些属性和行为,只要继承那个类即可 多个类称为子类(派生类),单独的这个类称为父类 ...

  • C# 中==与Equals方法比较

    static void Main(string[] args) { string a = new string(new char[] { 'h', 'e', 'l', 'l', 'o' }); str ...

  • java题型解答

    java题型解答

  • java中String str=""与new String()的区别

    常量池: 常量池(constant pool)指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据.它包括了关于类.方法.接口等中的常量,也包括字符串常量. 在常量池中存储字符串常量的 ...

  • Java 中的关键字

    Java 中有多少个关键字,有大小写之分吗? Java 中有 48 个关键字在使用 + 两个保留关键字未使用,共 50 个关键字. Java 关键字全部都由是小写组成. Java 中保留关键字分别是哪 ...

  • Java中的匿名内部类

    一.匿名内部类 之前的所有类都有自己的名字,但是有时候如果某个接口的实现类(或者某个父类的子类)只需要使用一次,此时这样的类如果我们单独定义出来则需要单独为其创建一个"*.java" ...

  • Java中的方法内部类

    一:方法内部类 就是在方法中直接定义一个内部类,之后直接使用这个内部类对象的方法,你作为语法 了解就行了. DEMO:方法中定义内部类     以上是在方法中定义了一个内部类,方法中的内部类能访问方法 ...

  • AI中的封套扭曲命令中的顶层对象如何操作

    在ai软件的封套扭曲命令中有一个顶层对象建立,这个应用比较广泛,下面来看看操作方法. 1.首先我们要准备好素材,并用钢笔绘制出一个形状来. 2.将形状放到图片上方,将两者全部选中,点击对象选项卡. 3 ...

  • Java | 在 Java 中执行动态表达式语句: 前中后缀、Ognl、SpEL、Groovy、Jexl3

    在一些规则集或者工作流项目中,经常会遇到动态解析表达式并执行得出结果的功能. 规则引擎是一种嵌入在应用程序中的组件,它可以将业务规则从业务代码中剥离出来,使用预先定义好的语义规范来实现这些剥离出来的业 ...

  • 【Python核心编程笔记】一、Python中一切皆对象

    Python中一切皆对象 本章节首先对比静态语言以及动态语言,然后介绍 python 中最底层也是面向对象最重要的几个概念-object.type和class之间的关系,以此来引出在python如何做 ...

  • Java中String类的concat方法

    在了解concat()之前,首先需要明确的是String的两点特殊性. 长度不可变 值不可变  这两点从源码中对String的声明可以体现: private final char[] value ; ...

  • java中堆栈(stack)和堆(heap)

    (1)内存分配的策略 按照编译原理的观点,程序运行时的内存分配有三种策略,分别是静态的,栈式的,和堆式的. 静态存储分配是指在编译时就能确定每个数据目标在运行时刻的存储空间需求,因而在编 译时就可以给 ...

  • Java中的通配符

    一.通配符概念 其实.上很多技术点都是为了解决某一问题而出现的,那么我们在学习的过程中可以先提出问题,然后在使用我们的技术去解决. DEMO:观察问题 以上代码可以正常执行,但是如果泛型类中的类型改变 ...