Java中的常见类(object)

本文深入探讨Java中Object类的重要性和其核心方法,如toString()和equals(),解释了如何通过重写这些方法来更好地表示对象状态和比较对象内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Object类

Object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object类。
Object类中的方法,适合所有子类
1.toString()方法
在Objectl类里面定义toString()方法的时候返回的对象的哈希code码(对象地址在字符串)
可以通过重写toString()方法表示出对象的属性

public class Cat extends Animal {
   public String name="小猫";//子类属性
    //使用toString方法进行输出对象属性
    @Override
    public String toString() {
        return "Animal[name="+name+"]";
    }
}

public class Initail {
    public static void main(String[] args) {
        //创建子类对象
        Cat cat=new Cat();
        //调用子类方法
        System.out.println(cat);

    }
}

2.equals()方法
比较的是对象的引用是否指向同一块内存di地址

public class Initail {
    public static void main(String[] args) {
        //创建子类对象1
        Cat cat=new Cat();
        //创建子类对象2
        Cat cat2=new Cat();
        if(cat.equals(cat2)){
            System.out.println("不相同");
        }else {
            System.out.println("相同");
        }
    }
}

在进行引用类型进行判断时,使用==和equals()一样,比较的也是内存地址,双等在进行基本类型的判断时,判断的是基本类型的值是否相等。
但我们想要的是进行比较对象的值是否一样,那么该怎么做?
父类方法不满足子类使用就对其进行重写。

 @Override
    public boolean equals(Object obj) {
        if (this==obj)//比较两个引用的地址是否相同,
            // 如果两个地址相同则说明指向了一个对象,两个对象肯定相等
            return true;
        if(obj==null)//如果为空值就不再进行比较
            return false;
        if(getClass()!=obj.getClass())//getClass()可以得到一个类对象
            //判断类的类型是否相同
            return false;
        Cat other=(Cat) obj;
        if (name!=other.name)
            //最后在进行判断类的值是否相同
            return false;
        return true;
    }

什么是类对象
我们new一个类得到的是类的对象,对象调用getClass()我们得到是类对象,类对象描述的是类的代码信息,就是这个类有哪些属性,属性的类型,变量名是什么,有哪些方法,方法名是什么。类的对象是对象的数据信息,属性值的信息。我们通常可以通过类对象判断类的类型
(会进行持续更新!!!!!!!!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值