首页 > 其他分享 >02类与对象--ObjectEquals

02类与对象--ObjectEquals

时间:2022-11-12 23:35:39浏览次数:47  
标签:02 ObjectEquals obj MyTestClass -- Object equals Value public

代码:

public class ObjectEquals
{



public static void main(String[] args)
{

MyTestClass obj1=new MyTestClass(100);

MyTestClass obj2=new MyTestClass(100);
System.out.println(obj1==obj2);

System.out.println(obj1.equals(obj2));

}


}

class MyTestClass

{

public int Value;

//注意:只有参数类型为Object的,才是重写了Object的equals方法

//参数类型为MyTestClass的,仅仅是Overload了equals方法。

// @Override

// public boolean equals(Object obj)

// {

// return ((MyTestClass)obj).Value==this.Value;

// }


public boolean equals(MyTestClass obj)

{

return obj.Value==this.Value;

}

public MyTestClass(int initValue)

{

Value=initValue;

}

}

结果:

 

 

结论:

当“==”施加于原始数据类型变量时,是比较变量所保存的数据是否相等 当“==”施加于引用类型变量时,是比较这两个变量是否引用同一对象。 引用代表地址,所以“==”实际上相当于比较两个引用类型变量中保存的对象地址是否相同。

两个对象的“内容”,其实是指它们在某一时刻的所有字段的值,“内容相等”,其实是就“对应字段值”一致。 在Java中要比对两个对象的字段值,可以 “重写(override)”基类的equals()方法

当你定义一个类时,如果不显式指明它的“父亲”类是哪个,则默认是Object。 Object是Java的最顶层基类,其中定义了equals( )方法

除了重写基类的equals方法,也可以“重载(overload)”equals( )方法:

 

标签:02,ObjectEquals,obj,MyTestClass,--,Object,equals,Value,public
From: https://www.cnblogs.com/xlm926/p/16885033.html

相关文章

  • 实验3:OpenFlow协议分析实践
    (一)基本要求搭建下图所示拓扑,完成相关IP配置,并实现主机与主机之间的IP通信。用抓包软件获取控制器与交换机之间的通信数据。(二)抓包流程图1、hello6633向60096发送hell......
  • 【数据结构-图】图的定义
    目录1邻接矩阵2邻接表3带权无向图4带权有向图1邻接矩阵#defineMAX50typedefcharVertexType;typedefintEdgeType;typedefstruct{VertexTypeVex[MA......
  • Git创建、diff代码、回退版本、撤回代码,学废了吗
    GIT运行流程图GIT常规操作创建分支,clone、checkoutdiff代码,查看代码具体改动diff分支,查看分支commit的差异合并代码,merge还是rebase版本回退,gitl......
  • 02类与对象--动手动脑
      原因:在主函数下面定义了一个自定义的Foo()构造方法,将导致系统不再默认提供构造方法修改方法:1.删除Foo(int)的定义 2.再敲一下Foo()默认构造函数......
  • easyexcel 2.2.6 新版本以列表的形式读取 Excel
    使用步骤:注:讲述使用EasyExcel的读取Excel数据列表的案例,项目基于springboot+maven模式。1、引入EasyExcel依赖包,文章以easyexcel2.2.6为基础。<dependenc......
  • 【读书笔记】《Verilog HDL数字设计与综合(第二版 本科教学版)》第一章:Verilog HDL数字
    一、数字电路CAD技术的发展历史真空管晶体管,集成电路(IntegratedCircuit,IC)小规模集成电路(SmallScaleIntegrated,SSI):逻辑门数量很少中规模集成电路(MediumScaleI......
  • 2.Sentinel介绍和安装以及与微服务整合
    Sentinel介绍和安装Sentinel是阿里巴巴开源的一款微服务流量控制组件。官网地址:https://sentinelguard.io/zh-cn/index.html1.安装Sentinel1.1下载sentinel官方提供了U......
  • 一台路由器引发的血案
    短短24小时内,一个路由器经历了刷机到变砖再到成功救砖……一切都发生在这台小米路由器PRO型号R3P的路由器身上。一刷机需求U盘一个可以正常链接的网线一根起因......
  • 02-类与对象 进行试验--Java字段初始化的规律
    1.类的构造方法(1)“构造方法”,也称为“构造函数”,当创建一个对象时,它的构造方法会被自动调用。构造方法与类名相同,没有返回值。(2)如果类没有定义构造函数,Java编译器......
  • Javascript(笔记32) - ES6特性 - let
    Javascript(笔记32)-ES6ECMA EuropeanComputerManufactureresAssociation,中文名:欧洲计算机制造商协会,目标是评估、开发和认可电信和计算机标准。1994年后改名为 ECM......