接下来说完equals以后,我们学习接下来的toString(),

Java又觉得全部对象不光具有比較性,

还能使对象变成字符串被打印。

出现

曾经前面显示的是数组。如今显示的是这个对象所属的类。

紧跟着是这个对象的哈希值,也就是全部的对象都有哈希值(内存地址)。

接下来。改动ObjectDemoToString class类

class ObjectDemoToString
{
public static void main(String[] args)
{
Demo d1=new Demo(4);
System.out.println(Integer.toHexString(d1.hashCode()));//哈希值转化成16进制
System.out.println(d1.toString());//将d1对象地址打印出来
}
}

一个对象的建立是不是要依赖于类文件?对不正确。

以前讲过进内存的时候类文件是不是被封装成对象了。

类文件中面既有构造函数,又有一般方法,以及成员变量。

要想获得当中一项东西的话,你是不是封装成对象之后。

在这对象里面定义非常多功能,是不是调用非常方便。

怎么拿构造函数是不是对象最清楚!对不正确。

所以呢这些对象都是依赖于class文件创建的,

class文件已被封装对象,这个对象怎么表示呢。看以下

class ObjectDemoToString
{
public static void main(String[] args)
{
Demo d1=new Demo(4);
Class c=d1.getClass();//获取对象d1的类
System.out.println(c);
System.out.println(Integer.toHexString(d1.hashCode()));
System.out.println(d1.toString());
}
}

结果:

这些class文件都有名称,构造函数,

getMethods()能够从.class文件里拿到全部的定义方法

甚至定义的私有方法都能拿得到,

你不用给我源文件都知道。这个称为反编译。

class ObjectDemo
{
public static void main(String[] args)
{
Demo d1=new Demo(4);
Class c=d1.getClass();
System.out.println(c.getName()+'@'+Integer.toHexString(d1.hashCode()));
System.out.println(Integer.toHexString(d1.hashCode()));
System.out.println(d1.toString());
}
}

toString()=getClass().getName()+'@'+Integer.toHexString(d1.hashCode())

接下来。这个地址有意义么,假设想要对象相应的字符串有意义怎么做?

在Demo()中覆写

	public String toString()
{
return "demo:"+num;
}

创建自己的字符串表示形式。父类默认的一般没多大意义,一般都覆写

写类描写叙述的时候这些方法都有可能被覆写,那么这时候产生问题。

假设都覆写。干脆把它抽象不就完了?

抽象完了以后object是不是也被抽象了。那么随便定义一个类是不是

都会强迫你去定义里面包括的方法,这是不是非常麻烦。

况且大家有听说过上帝有抽象的么?上帝不是总是活在子民心中的么~

别样JAVA学习(五)继承上(1.1)Object类toString()的更多相关文章

  1. 别样JAVA学习(五)继承上(1.0)Object类equals()

    上一节继承下(一)我们进行抽象类.接口以及多态的学习. 接下来大家我们讲点特殊的东西就是object类, 我们一直在说继承,子继承了父,父还有没有父类呢, 为什么这么思考,大家想构造函数的第一行是不是 ...

  2. Java 面向对象概述原理: 多态、Object类,转型(8)

    Java 面向对象概述原理: 多态.Object类,转型(8) http://docs.oracle.com/javase/tutorial/java/IandI/override.html Java ...

  3. 面向对象编程(九)——面向对象三大特性之继承以及重写、Object类的介绍

    面向对象三大特性 面向对象三大特征:继承 :封装/隐藏 :多态(为了适应需求的多种变化,使代码变得更加通用!) 封装:主要实现了隐藏细节,对用户提供访问接口,无需关心方法的具体实现. 继承:很好的实现 ...

  4. Java学习笔记--继承和多态(上)

    1.通过继承来开发超类(superclass) 2.使用super 关键词唤起超类的构造方法 3.在超类中覆盖方法 4.区分override和overload 5.在Object类中探索toStrin ...

  5. Java学习笔记---继承和super的用法

    自从换了个视频教学,感觉比原来那个好多了,就是学校网速太渣,好多视频看一会卡半天,只能先看看已经下载的了. 不过也好,虽然不能从开始开始重新开,但是已经看过一次,在看一次也是好的,就当巩固学习了. 继 ...

  6. Java学习笔记--继承和多态(中)

    1.通过继承来开发超类(superclass) 2.使用super 关键词唤起超类的构造方法 3.在超类中覆盖方法 4.区分override和overload 5.在Object类中探索toStrin ...

  7. Java学习笔记--继承和多态(下)

    1.通过继承来开发超类(superclass) 2.使用super 关键词唤起超类的构造方法 3.在超类中覆盖方法 4.区分override和overload 5.在Object类中探索toStrin ...

  8. java学习记录笔记--继承,super,Object类

    继承: Java中的继承是单继承的. 1.子类拥有父类的全部属性和方法. 可是属性和方法的修饰符不能使private. 2.能够复用父类的代码. 方法的重写须要满足的条件: a.返回值类型 b.方法名 ...

  9. Java学习笔记31(IO:Properties类)

    Properties类,表示一个持久的j集,可以存在流中,或者从流中加载 是Hashtable的子类 map集合的方法都能用 用途之一:在开发项目中,我们最后交给客户的是一个编译过的class文件,客 ...

随机推荐

  1. Notepad++ 使用正则表达式查找替换字符串

        最近在改一些别人写的PHP代码,由于之前的代码可维护性比较差,因此工作量比较多,因此想找一些高效的方式改一些有规律的代码. 比如: 我想将一些类似$rowss[MaxGetCash_num], ...

  2. 是男人就过 8 题--Pony.AI A AStringGame

    链接:https://www.nowcoder.com/acm/contest/92/A来源:牛客网 AStringGame 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 26214 ...

  3. 使用MySQLWorkBench连接数据库

    在日常使用中,经常使用命令行去连接MySQL数据库不方便,推荐使用MySQLWorkBench去远程连接进行管理,下面记录一下使用步骤: 1. 安装MySQLWorkBench后,界面如下,点击“+” ...

  4. not exists、left join/is null、not in 行为

    测试数据 20:25:52[test](;)> select * from t;+------+------+| id   | b    |+------+------+|    1 | NUL ...

  5. 【Luogu】P3159交换棋子(超出我能力范围的费用流)

    题目链接 明显超出我能力范围. 只放题解. 再放代码. #include<cstring> #include<algorithm> #include<cstdio> ...

  6. HDU——2723Electronic Document Security(STL map嵌套set做法)

    Electronic Document Security Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K ( ...

  7. HDU——1799循环多少次(杨辉三角/动态规划/C(m,n)组合数)

    循环多少次? Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Sub ...

  8. 关闭chrome浏览器的input香蕉黄背景

    chrome浏览器input的自动完成,点击之后自动输入,input的背景会变成香蕉黄,用如下方法修复: /* Change the white to any color ;) 就是给input设置内 ...

  9. (转)Java字符串整形(例:0001)

    原文地址:https://blog.csdn.net/xuexiiphone/article/details/51372692 caseID = preFix + String.format(&quo ...

  10. [转] Makefile 基础 (2) —— Makefile 总述

    该篇文章为转载,是对原作者系列文章的总汇加上标注. 支持原创,请移步陈浩大神博客:(最原始版本) http://blog.csdn.net/haoel/article/details/2886 我转自 ...