Java只要定义一个类,那么它都在继承,没有说明它在继承哪个类的时候,则默认继承java.lang.Object类,也就是说Object类是所有类的父类。看下面一段代码。

public class ObjectInstance{   //没有继承类则默显示继承Object类
public static void main(String[] args){
ObjectInstance o1=new ObjectInstance();
Object o2=new Object();   //因为继承了Object类,所以可以创建Object类的对象,注意Object首字母大写  
System.out.println(o1.toString());
System.out.println(o2.toString());
Person p1=new Person("张三",32);
System.out.println(p1.toString());
}
}
class Person{
String name;
int age;
Person(String name,int age){  //构造方法
this.name=name;
this.age=age;
}
public String toString(){
return "Person[name=" + this.name + ",age=" + this.age + "]"; 
}
}

上面这段代码根据需要重写了toString()方法,在Object中设计toSring()方法的目的:返回java对象的字符串表示。而在现实的开发过程中,Object里边的toString()方法已经不够用了,因为Object中的toString()方法实现的结果不太满意,Object中的toString()方法就是要被重写的。上面这段代码可以拆分来看:

public class ObjectInstance{   //没有继承类则默显示继承Object类
public static void main(String[] args){
ObjectInstance o1=new ObjectInstance();
Object o2=new Object();   //因为继承了Object类,所以可以创建Object类的对象,注意Object首字母大写  
System.out.println(o1.toString());
System.out.println(o2.toString());
}
}

这就是原始的Object类中的toString()方法,它将创建的o1,o2对象的字符串形式表示出来。接下来在创建Person类,默认继承默认继承Object类,重写toString()方法。

class Person{
String name;
int age;
Person(String name,int age){  //构造方法
this.name=name;
this.age=age;
}
public String toString(){   //重写toString()方法
return "Person[name=" + this.name + ",age=" + this.age + "]"; 
}
}

之后创建对象,并调用重写的toString()方法。代码如下:

Person p1=new Person("张三",32);
System.out.println(p1.toString());

整段代码运行后输出:

ObjectInstance@15db9742
java.lang.Object@6d06d69c
Person[name=张三,age=32] wx搜索“程序员考拉”,专注java领域,一个伴你成长的公众号!

Java Object类的toString()方法的更多相关文章

  1. Java Object类中toString方法的重写

    Object类中的tostring方法的: 当我们输出一个对象时,实际是输出的是这个类中的tostring方法,是一个地址值,而不是类中的属性. 1 一:子类没有重写Object类中的toStrinn ...

  2. Java中的Object类的toString()方法,equals()方法

    Object类是所有类的父类,若没有明确使用extends关键字明确表示该类继承哪个类,那么它就默认继承Object类,也就可以使用Object中的方法: 1.toString 如果输出一个对象的时候 ...

  3. Java基础知识强化27:Object类之toString()方法

    1. Object类的toString()方法: public  String  toString():返回该对象的字符串表示 2. 案例演示: (1)Student类: package cn.itc ...

  4. Java Object类及其equals方法

    基本概念: Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入: Object类是所有Java类的祖先.每个类都使用 Object 作为超 ...

  5. Java Object类的equals()方法

    所有类都从Object类中继承了equals方法,Object类中equals方法源代码如下: public boolean equals(Object obj)     {         retu ...

  6. Object类的toString方法

          Object类是所有Java类的祖先.每个类都使用 Object 作为超类.所有对象(包括数组)都实现这个类的方法.在不明确给出超类的情况下,Java会自动把Object作为要定义类的超类 ...

  7. object类之toString方法

    object是所有类的基类 如果没有使用extends关键字指明其基类,则默认基类为object类 public class Person{ ........ } 等价于: public class ...

  8. static,final关键字,Object类的tostring方法,equals方法,hashCode方法

    1)static关键字 static可以修饰:属性.方法.代码块 静态方法不能访问非静态 属性 或 方法 属性(变量): 成员变量: 静态变量: 通过 类名.静态变量来访问 通过 对象名.静态变量来访 ...

  9. Object类和toString方法 --和Object类的equals方法

    一,Object类概述:Object是类层次结构的根,每个类都可以将Object作为超类,所有类都直接或者间接的继承自该类构造方法:pulic Object()在面向对象中,子类要访问父类的无参构造方 ...

随机推荐

  1. How to Mount a Remote Folder using SSH on Ubuntu

    Connecting to a server across the internet is much more secure using SSH. There is a way that you ca ...

  2. bzoj 4598: [Sdoi2016]模式字符串

    题目描述 给出n个结点的树结构T,其中每一个结点上有一个字符,这里我们所说的字符只考虑大写字母A到Z,再给出长度为m的模式串s,其中每一位仍然是A到z的大写字母. Alice希望知道,有多少对结点&l ...

  3. 初探 模拟退火算法 POJ2420 HDU1109

    模拟退火算法来源于固体退火原理,更多的化学物理公式等等这里不再废话,我们直接这么来看 模拟退火算法简而言之就是一种暴力搜索算法,用来在一定概率下查找全局最优解 找的过程和固体退火原理有所联系,一般来讲 ...

  4. 简单的数字校验JS

    /** *张衍涛 * 数字校验 v:校验的元素 l:要保留的小数点位数 */ function checkNumber(v,l){ var val=v.value; if(isNaN(val) || ...

  5. docker安装MySQL软件

    1 搜索mysql镜像 $ sudo docker search mysql NAME DESCRIPTION STARS OFFICIAL AUTOMATED mysql MySQL is a wi ...

  6. blog断更通知

    在HE无人进队的阴影下,考完APIO和CTS就真走了..不想写blog了,去冲刺2020高考了(滚回去学文化课了)

  7. POJ1591 M*A*S*H (JAVA)

    这水题,真的坑 测试数据最后有空行,如果用sc.hasNextLine()判断,会RE 要改为sc.hasNext() 搞了我一上午,烦死 import java.util.*; public cla ...

  8. nginx下重写隐藏index.php文件

    location / { root /项目目录/; index index.php; if (-f $request_filename/index.php){ rewrite (.*) $1/inde ...

  9. 2018 ICPC Asia Jakarta Regional Contest

    题目传送门 题号 A B C D E F G H I J K L 状态 Ο . . Ο . . Ø Ø Ø Ø . Ο Ο:当场 Ø:已补 .  :  待补 A. Edit Distance Thin ...

  10. 数组模拟单向链表例题(UVa11988)

    指针的链表实现方式是,当前节点的next指向下一个节点,用数组模拟就是 for(int i=next[0];i!=0;i=next[i]) i=next[i]:就是一条链. 例题: 你有一个破损的键盘 ...