Java 学习和实践笔记(27):Object类的基本特性、toString方法以及IDEA的部分快捷键介绍

Object类基本特性:

1.Object类是所有类的父类,所有的Java对象都拥有Object类的属性和方法(注意拥有并不等于可以直接使用)

2.如果在类的声明中未使用extends,则默认继承Object类。

toString方法是Object类里定义的一个方法,其作用是返回默认对象的地址(对象的hashcode是根据对象的地址生成唯一值,这里暂时直接视作对象的地址。)

使用示例1:

java 复制代码
public class TestObject {
    int id;
    String name;
    String pwd;

    public TestObject(int id, String name, String pwd) {//自定义的构造器
        this.id = id;
        this.name = name;
        this.pwd = pwd;
    }

    TestObject(){};//写了自定义构造器如仍要默认的构造器,就需要写出来。

    public static void main(String[] args) {
        TestObject t1 = new TestObject();
        System.out.println(t1.toString());//使用toString()方法得到t1的地址
        TestObject t2 = new TestObject();
        System.out.println(t2.toString());
        System.out.println(t2);//如果不写toString,默认也是调用toString()
    }
}

运行结果如下:

toString方法如上所示,默认作用只是返回对象的地址。如果我们想用这个方法,返回对象的一些属性,那么需要重写这个方法。示例如下:

java 复制代码
public class TestObject {
    int id;
    String name;
    String pwd;

    public TestObject(int id, String name, String pwd) {//自定义的构造器
        this.id = id;
        this.name = name;
        this.pwd = pwd;
    }

    TestObject(){};//写了自定义构造器如仍要默认的构造器,就需要写出来。


    @Override
    public String toString() { //这就是重写了toString方法,使其能返回想要的对象属性
        return "ID:"+id+"账户名:"+name+"密码:"+pwd;
    }

    public static void main(String[] args) {
        TestObject t1 = new TestObject();
        System.out.println(t1.toString());//使用toString()方法得到t1的地址
        TestObject t2 = new TestObject();
        System.out.println(t2.toString());
        System.out.println(t2);//如果不写toString,默认也是调用toString()
    }
}
相关推荐
for_ever_love__38 分钟前
UI学习:UISearchController基础了解和应用
学习·ui·ios·objective-c
心中有国也有家1 小时前
GE图引擎深度解析——CANN的计算图优化与执行引擎
人工智能·pytorch·python·学习·numpy
東雪木2 小时前
多线程与并发编程 专属复习笔记
java·开发语言·笔记·java面试
GHL2842710902 小时前
换脸工作流学习
学习·ai
_李小白3 小时前
【android opencv学习笔记】Day 28: 滤波算法之中值滤波器
android·opencv·学习
Oll Correct3 小时前
实验二十九:TCP的运输连接管理
网络·笔记
飞翔中文网4 小时前
Java学习笔记之抽象类与接口(设计思想)
java·笔记·学习
智者知已应修善业5 小时前
【proteus设计文氏正弦波信号发生器】2023-5-9
驱动开发·经验分享·笔记·硬件架构·proteus·硬件工程
土星碎冰机5 小时前
xxljob学习(大白话版本)
学习·运维开发
吃好睡好便好6 小时前
说说免疫力的维护
学习·生活