Java——Object类详解

我们学习的所有类、我们以后定义的所有类,都是Object类的子类,也都具备Object类的所有特性。因此,我们非常有必要掌握Object类的用法。

Object类的基本特性

Object类是所有Java类的根基类,也就意味着所有的Java对象都拥有Object类的属性和方法。如果在类的声明中未使用extends关键字指明其父类,则默认Object类。

java 复制代码
public class Person{
   ......
}
//等价于:

public class Person extends Object{
    ......
}

toString方法

Object类中定义有public String toString()方法,其返回值类型是String类型。Object类中toString方法的源码为:

java 复制代码
public String toString(){
    return getClass().getName()+"@"+Integer.toHexString(hashCode());
        }

根据如上源码得知,默认会返回"类名+@+16进制的hashcode"。在打印输出或者用字符串连接对象时,会自动调用该方法的对象的toString()方法。

重写toString()方法的实例代码

java 复制代码
class Person{
    String name;
    int age;
    @Override
    public  String tostring(){
        return name+",年龄:"+age;
        
    }

}
public class Test{
    public static void main(String[]args){
        Person p=new person();
        p.age=20;
        p.name="kuku";
        System.out.println("info:"+p);
        Test t=new Test();
        System.out.println();

    }
}
相关推荐
彭于晏Yan16 小时前
SpringBoot整合ECC实现文件签名与验签
java·spring boot·后端
pupudawang16 小时前
Spring EL 表达式的简单介绍和使用
java·后端·spring
jiankeljx16 小时前
Spring Initializr创建springboot项目,提示java 错误 无效的源发行版:16
java·spring boot·spring
competes16 小时前
深圳程序员职业生涯
java·大数据·开发语言·人工智能·java-ee
深蓝轨迹16 小时前
Redis 消息队列
java·数据库·redis·缓存·面试·秒杀
小小小米粒16 小时前
Collection(单列集合)、Map(双列集合),容易搞混的 Collections 工具类。
java·开发语言
Rhystt16 小时前
代码随想录算法训练营第六十天|多余的边?从基础到进阶!
开发语言·c++·算法·图论
skiy17 小时前
springboot+全局异常处理
java·spring boot·spring
愤豆17 小时前
07-Java语言核心-JVM原理-JVM对象模型详解
java·jvm·c#
东离与糖宝17 小时前
零基础Java学生面试通关手册:项目+算法+框架一次搞定
java·人工智能·面试