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. drf 三级菜单后台序列化以及数据库的设计

    第一种, model.py结构: class GoodsCategory(models.Model): """ 商品类别 """ CATEG ...

  2. python-json.loads()保持原json字符串的顺序

    import jsonfrom collections import OrderedDictmetadata = json.loads(text, object_pairs_hook=OrderedD ...

  3. [CoffeeScript]在WebStorm里运行CoffeeScript

    CoffeeScript 是一门编译到 JavaScript 的小巧语言. 在 Java 般笨拙的外表下, JavaScript 其实有着一颗华丽的心脏. CoffeeScript 尝试用简洁的方式展 ...

  4. JAVA泛型方法与类型限定

     泛型方法可以定义在普通类中,也可以定义在泛型类中 class ArrayAlg{ public static <T> T getMiddle(T...a){ return a[a.len ...

  5. Angular--TypeScript finalize 方法

    self._entityService .getAll() .pipe( finalize(() => { if (self.sheet && self.sheet.length ...

  6. hdu1466计算直线的交点数 非原创

    原文链接 平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数. 比如,如果n=2,则可能的交点数量为0(平行)或者1(不平行). Input输入数据包含多个测试实例,每个测试实例占一行,每 ...

  7. python3 zip压缩

    参考: https://docs.python.org/3/library/zipfile.html https://zhidao.baidu.com/question/149840976436638 ...

  8. Caused by java.lang.IllegalStateException Not allowed to start service Intent { cmp=com.x.x.x/.x.x.xService }: app is in background uid UidRecord问题原因分析(二)

    应用在适配Android 8.0以上系统时,会发现后台启动不了服务,会报出如下异常,并强退: Fatal Exception: java.lang.IllegalStateException Not ...

  9. openerp学习笔记 domain 的应用

    1.在Action中定义,domain用于对象默认的搜索条件: 示例: <record id="action_orders" model="ir.actions.a ...

  10. (转)[InnoDB系列] -- SHOW INNODB STATUS 探秘

    原文:http://imysql.cn/2008_05_22_walk_through_show_innodb_status 很多人让我来阐述一下 SHOW INNODB STATUS 的输出信息, ...