`

Object

阅读更多
1.所有类的父类

	public static void stringArray(){
		String [] strArray = new String[]{};
		test(strArray);
	}
	
	public static void test(Object[] objectArray){
		
	}


不知道传入参数的类型或兼容所有类型,使用object参数

2.
object.toString()

String.valueOf(object)


    public static String valueOf(Object obj) {
	return (obj == null) ? "null" : obj.toString();
    }


优先选择后者,源码中含有判空操作,避免空指针异常

3.equals

object 的 equals() 与 == 效果相同

    public boolean equals(Object obj) {
	return (this == obj);
    }



    public boolean equals(Object anObject) {
// 1.若传入对象为空
	if (this == anObject) {
	    return true;
	}
// 2.是否是同一对象  this == anObject 如果是同一对象,直接返回TRUE
// 3.是否是同一类型
	if (anObject instanceof String) {
	    String anotherString = (String)anObject;
	    int n = count;
// 4.众多属性中关键属性是否相同
// 5.如person属性众多,客观上身份证号码相同,即为同一个人
	    if (n == anotherString.count) {
		char v1[] = value;
		char v2[] = anotherString.value;
		int i = offset;
		int j = anotherString.offset;
		while (n-- != 0) {
		    if (v1[i++] != v2[j++])
			return false;
		}
		return true;
	    }
	}
	return false;
    }



4.equals 与 ==

基本数据类型:无equals 方法,无需比较
引用数据类型:

String str1 = new String("123");
String str2 = new String("123");



变量名 说明
str10x55堆中所占空间的首地址"123"
                                
str20x99堆中所占空间的首地址"123"


object 的equals方法 与 == 等价,比较的是栈中的内容,
引用类型栈中存储的是堆中的地址,new 操作会开辟新的空间,所有一定不等
分享到:
评论

相关推荐

    Object-Cios苹果app开发入门object-c例子demo14个实例 一般编程问题

    【Object-C】ios苹果app开发入门object-c例子demo14个实例 一般编程问题 【实例简介】 ios苹果app开发入门,object-c,例子,demo,14个实例 初学者难得的学习实例 【实例截图】 【核心代码】 归档 ├── Air...

    Object Pascal中文手册(清晰非扫描版)

    Object Pascal是一种高级编译语言,以严格的强类型特性著称,这意味着在Object Pascal中,数据类型会被严格检查。这种语言支持结构化编程和面向对象编程,其代码具备很好的易读性,并且编译速度快。由于支持使用多个...

    Delphi json superobject 支持XE10.3

    在Delphi编程环境中,SuperObject是一个非常流行的JSON库,它为开发者提供了高效、灵活的JSON解析和序列化功能。在Delphi XE10.3版本中,SuperObject的兼容性和支持是至关重要的,因为JSON作为一种轻量级的数据交换...

    Android 三方数据库ObjectBox使用

    为了解决这些问题,开发者们引入了第三方数据库,ObjectBox便是其中的一款优秀选择。ObjectBox是一款专门为移动设备优化的关系型数据库,它以其高性能、易用性以及对对象持久化的支持而受到广泛欢迎。 ObjectBox的...

    object标签遮罩问题

    ### Object标签遮罩问题解析及解决方案 #### 一、Object标签概述 在Web开发中,`<object>` 标签是一种非常重要的元素,主要用于在HTML文档中嵌入多媒体内容,如图像、音频、视频、Java Applets、ActiveX 控件、PDF...

    delphi7-json-superobject

    Delphi 7 JSON SuperObject 深度解析 在 Delphi 开发环境中,处理 JSON 数据是一项常见的任务。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其易读易写、机器易于解析和生成的特点,被广泛...

    SuperObject增加排序.rar

    在IT行业中,JSON(JavaScript Object Notation)是一种广泛使用的轻量级数据交换格式,它易于人阅读和编写,同时也易于机器解析和生成。SuperObject是一个开源的、高性能的JSON库,专门为Delphi和FreePascal设计。...

    Java Object类认识

    在Java编程语言中,`Object`类是所有类的根,每个自定义类如果没有明确指定父类,都默认继承自`Object`。因此,对`Object`类的理解是每个Java开发者的基本功。本文将深入探讨`Object`类,以及其核心方法`equals()`与...

    Visual Object Net++

    《Visual Object Net++:探索Petri网建模与仿真》 Visual Object Net++是一款专为初学者设计的模拟软件,其主要功能在于提供一个友好的环境来构建和分析Petri网模型。Petri网,全称是Place/Transition Net,是一种...

    Delphi7版本 - X-Superobject

    **Delphi 7 版本 - X-SuperObject** X-SuperObject 是一个在 Delphi 开发环境中广泛使用的 JSON 库,特别适用于 Delphi 7 这样的较早版本。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其...

    lwm2m下object和resource定义_OBJECT和RESOURCE_lwm2m_LWM2Mobj_lwm2mobje

    《LWM2M中的Object与Resource定义:深入理解物联网平台对接》 在物联网(IoT)领域, Lightweight Machine to Machine (LWM2M) 协议作为一种轻量级的通信协议,广泛应用于设备管理和服务提供。它允许远程访问和管理...

    用C# MapObject编写的一个GIS程序

    在本文中,我们将深入探讨如何使用C#编程语言与Esri的MapObject库结合,来构建一个GIS(地理信息系统)程序。MapObject是Esri公司提供的一个强大的地图开发组件,它允许开发者创建交互式地图应用,支持多种地理数据...

    网页Object标签遮盖DIV标签解决方法

    在网页开发过程中,我们经常会遇到各种布局问题,其中之一就是`<Object>`标签遮盖`<div>`标签的情况。`<Object>`标签在HTML中用于嵌入外部资源,如Flash、PDF或其他插件,而`<div>`标签则常用于创建页面上的容器或...

    objecthook_objecthook_

    在Python编程中,`objecthook`是一个非常关键的概念,特别是在序列化和反序列化操作中。这个概念主要与`json`模块相关,因为当我们使用`json`进行数据转换时,`objecthook`允许我们自定义如何将JSON对象转化为Python...

    基于MapObject的GIS程序

    MapObject是ESRI公司开发的一款GIS(地理信息系统)组件,它为开发者提供了在应用程序中集成地图和地理数据的能力。基于MapObject的GIS程序设计主要涉及以下几个核心知识点: 1. **地图对象模型**:MapObject的核心...

    ldap提示object class violation

    ### LDAP提示Object Class Violation详解 #### 一、问题背景 在LDAP(Lightweight Directory Access Protocol,轻量目录访问协议)的使用过程中,有时会遇到一个常见的错误提示:“object class violation”。这一...

    c#实现object与byte[]互转

    C#实现object与byte[]互转 在C#中,实现object与byte[]互转是一种常见的需求,特别是在网络通信和数据存储中。这篇文章将详细介绍如何将object转换为byte[],并介绍相关的知识点。 序列化 序列化是将对象转换为二...

    DELPHI之superobject实现JSON格式,可实现POST

    在 DELPHI 开发中,SuperObject 是一个非常流行的库,用于处理 JSON 数据。这个库提供了强大而灵活的 API,使得解析、创建和操作 JSON 对象变得轻而易举。在本文中,我们将深入探讨如何使用 SuperObject 实现 JSON ...

    delphi 使用superobject库解析和生成json实例

    SuperObject是一个轻量级且高效的JSON库,为Delphi开发者提供了方便的接口来解析和生成JSON对象。本篇文章将深入探讨如何在Delphi中使用SuperObject库进行JSON操作。 首先,要使用SuperObject,你需要在项目中引入...

    ObjectBrowser10中文版

    **标题:“ObjectBrowser10中文版”** **描述解析:** `SI Object Browser`是一款专为Oracle应用开发和数据库管理设计的图形用户界面(GUI)工具。它集成了多种功能,方便开发者和DBA进行高效的工作。通过GUI,...

Global site tag (gtag.js) - Google Analytics