1.类 Object 是类层次结构的根类。每个类都使用 Object 作为超类。所有对象(包括数组)都实现这个类的方法

2.hashCode()方法

  返回该对象的哈希值。一般情况下,该方法会根据对象的地址值来计算。

  不同的对象hashCode()一般来说不会相同,但同一个对象的hashCode值肯定一样。

  不是对象的实际地址值,可以理解为逻辑地址值。

package demo1;

public class Demo1 {
public static void main(String[] args) {
Student s1 = new Student("张三", 23);
int hashcode = s1.hashCode();
System.out.println(hashcode);
}
}

3getClass()方法

  返回Object的运行时类

  可以通过Class的一个getName()方法来获得类的全名。

package cn.smx.demo1;

public class Demo1 {
public static void main(String[] args) {
Student s1 = new Student("张三", 23);
Class clazz = s1.getClass();
String str = clazz.getName();
System.out.println(str);
}
}

4.toString()方法

package cn.smx.demo1;

public class Demo1 {
public static void main(String[] args) {
Student s1 = new Student("张三", 23);
String s = s1.toString();
System.out.println(s);
}
}

 

为了更好的获得属性值,我们会重写toString()方法。在eclipse中有快捷键生成toString()方法。右击-->source-->generate toString()..-->select all.

  

    public static void main(String[] args) {
Student s1 = new Student("张三", 23);
System.out.println(s1);
}

5.equals()方法

  比较对象的地址值

package demo1;

public class Demo1 {
public static void main(String[] args) {
Student s1 = new Student("张三", 23);
Student s2 = new Student("张三", 23);
boolean b = s1.equals(s2);
System.out.println(b);
}
}

  没有什么意义,一般来比较对象中的属性值。属性值相同,我们认为是同一个对象。

  重写equals方法。

    public boolean equals(Object obj) {
if(this==obj) {
return true;
}
if(obj==null) {
return false;
}
if(obj instanceof Person) {
Person p = (Person)obj;
if(this.age==age&&this.name==name)
return true;
}
return false;
}

主函数:

    public static void main(String[] args) {
Person p = new Person("zhangsan",23);
Person p1 = new Person("zhangsan",23);
boolean b = p.equals(p1);
System.out.println(b);
System.out.println(p);
System.out.println(p1);

  ==和equals都可以作比较

  区别是:1.==号是比较运算符,既可以比较基本数据类型(比较值),又可以比较引用数据类型(比较地址值)。

      2.equals方法在没重写之前比较的是地址值,底层依赖==号。我们需要重写equals方法,比较对象中的属性值。只能比较引用数据类型。

java_13.2 Object的更多相关文章

  1. CoreCLR源码探索(一) Object是什么

    .Net程序员们每天都在和Object在打交道 如果你问一个.Net程序员什么是Object,他可能会信誓旦旦的告诉你"Object还不简单吗,就是所有类型的基类" 这个答案是对的 ...

  2. JavaScript Object对象

    目录 1. 介绍:阐述 Object 对象. 2. 构造函数:介绍 Object 对象的构造函数. 3. 实例属性:介绍 Object 对象的实例属性:prototype.constructor等等. ...

  3. javascript之Object.defineProperty的奥妙

    直切主题 今天遇到一个这样的功能: 写一个函数,该函数传递两个参数,第一个参数为返回对象的总数据量,第二个参数为初始化对象的数据.如: var o = obj (4, {name: 'xu', age ...

  4. c# 基础 object ,new操作符,类型转换

    参考页面: http://www.yuanjiaocheng.net/webapi/config-webapi.html http://www.yuanjiaocheng.net/webapi/web ...

  5. APEX:对object中数据进行简单处理?

    在Salesforce中,常常要对各种数据进行处理,已满足业务逻辑.本篇文章会介绍如何实现从object获取数据,然后将取得的数据进行一系列简单处理. 第一步:SongName__c 是一个新建的ob ...

  6. 笔记:Memory Notification: Library Cache Object loaded into SGA

    笔记:Memory Notification: Library Cache Object loaded into SGA在警告日志中发现一些这样的警告信息:Mon Nov 21 14:24:22 20 ...

  7. Selenium的PO模式(Page Object Model)[python版]

     Page Object Model 简称POM  普通的测试用例代码: .... #测试用例 def test_login_mail(self): driver = self.driver driv ...

  8. Object是什么

    Object是什么 .Net程序员们每天都在和Object在打交道如果你问一个.Net程序员什么是Object,他可能会信誓旦旦的告诉你"Object还不简单吗,就是所有类型的基类" ...

  9. a different object with the same identifier value was already associated with the session:

    hibernate操作: 实例化两个model类,更新时会提示  a different object with the same identifier value was already assoc ...

随机推荐

  1. Delphi Qjson

    使用QJSON解析数据: JSon 字符串: {"Code":1,"Msg":"", "Data":[{"Ne ...

  2. js中实现cookie的增删改查(document.cookie的使用详情)

    一.设置cookie的值 1.每个cookie都是一个名称/值对,名称/值对用等号连接,并将该名称/值对赋值给document.cookie即可.如:document.cookie="id= ...

  3. ACM__并查集

    并查集是树型的数据结构,处理不想交集合 主要解决查找和合并的问题 步骤: 初始化 把每个点所在的集合初始化为自身 复杂度为O(N) 查找 查找元素所在的集合,即根节点 合并 将两个元素所在的集合合并在 ...

  4. myeclipse提示错误。

    Syntax error, parameterized types are only available if source level is 1.5 解决方法:编译器问题.注意myeclipse10 ...

  5. 剑指offer例题——二维数组中的查找

    //实现一个函数,将一个字符串的每个空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. public class Solutio ...

  6. Linux性能测试分析命令_sar

    sar主要用于收集并统计系统资源的信息,包括CPU.IO.内存.网卡流量等. sar语法 用法:sar [ 选项 ] [ <时间间隔> [ <次数> ] ] 常用选项说明: - ...

  7. 如何用java读取properties文件

    1.Properties类与Properties配置文件 Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值对的形式来保存属性集.不过Properties有特殊的地 ...

  8. Unity3d资源管理分析

    原创链接:http://blog.csdn.net/ox_thedarkness/article/details/9197453 分离资源管理 参考 1.Unity3D占用内存太大的解决方法 - 星尘 ...

  9. Elasticsearch搜索异常-------org.elasticsearch.common.io.stream.NotSerializableExceptionWrapper: parse_exception

    异常问题: Caused by: org.elasticsearch.index.query.QueryShardException: Failed to parse query [LOL: Uzi和 ...

  10. Multiple APK Support

    [Multiple APK Support] Multiple APK support is a feature on Google Play that allows you to publish d ...