Java Object 类

Java面向对象编程与Object类方法解析
博客介绍了Java是面向对象语言,创建对象的方式有自定义类和使用sun提供的类,强调学习类需先学Object类。还介绍验证类继承Object类的方法,阐述Object类常用方法如toString、equals、hashCode等,以及查看Java源代码的方式和意义。

java 是面向对象的语言,所以编程的时候就是找适合的对象,做适合的事情。

方式一:自定义类,通过自定义的类创建对象

方式二:sun提供了很多类给我们使用,所以需要认这些类,通过这些类创建对象

学习这些类,必须先学习Object类,这是所有类的终极父类。

7509f950553b3aedc1621b6dfe34e777d7c.jpg

ctrl +f   搜索

怎么验证所有类都继承Object这个类呢?

--反编译

--使用Object的方法试试

70e723d820af0a11e7f5b2bbe6dcd2c696e.jpg

 

Object类常用的方法:

 

  •     toString();     返回该对象的字符串表示。 返回一个字符串用于描述该对象的。

 e6aa97e2320d07b8d27e2de4b250c2c8418.jpg

36919cbd7e3950d29826829ccb14902d9e0.jpg

    疑问: toString() 有何作用?      

6284d0817e04406a186867c861dbc827d2d.jpg

   疑问2:为什么直接输出一个对象的时候和输出对象使用tostring()方法的结果会是一样的呢?

    因为println( )是个方法,它就是接受一个对象之后,通过查看源代码得知,直接输出一个对象 的时候,实际上在println方法内部会调用这个 调用的toString方法,把把toString方法返回的内容输出。

java的源代码是公开的,就存在JDK里面的src的压缩包。

ac972a4f448cd5ce85a1e4d9f8eaf65dc10.jpg

查看源代码的方式:

1. ctrl +单击源码

2. 可以按下F3,移动光标到代码处,

37129483d38a7e6fea7b333ed967a9c18a3.jpg

为什么我们要查看源代码:


1. 查看源代码可以了解别人是如何写出这个技术的,让我们了解的更加的深入。
2. 吸收大牛的思想。

看源代码最忌讳的一点: 不要每行代码都弄懂是什么意思,能看个大概 猜出他意思就足矣。

---重写toString之后,我们直接输出一个对象的时候,就会输出符合我们所需求的格式数据。

a01d2fbedc005afa03b1f59d8fd302f4480.jpg
    
    equals(Object obj)   用于比较两个对象的内存地址,判断两个对象是否为同一个对象。
    de318b0bf43f2775acdad917e5d7d1d5b48.jpg

 

7089a4b296efaaff86915b01f8ec230be13.jpg

5615745e4ef9181a789b5a385deee026816.jpg


    hashCode()   返回该对象的哈希码值(大家可以把哈希码就 理解成是对象的内存地址。

49c6c997eb0bf3cc33e39bd12f80316c3f4.jpg

 

d39add7d3a5db4515063e6e59bb31f554ed.jpg

java中的规范:一般我们重写了一个类的equals方法,我们都会重写它的hashCode方法。

544fea0454c18685b9ab31bccd774557791.jpg

会造成矛盾。所以要重写就要一块重写

a5d4602d6677cbf6459e2acdb497bee8f12.jpg

 

 

 

 

 

转载于:https://my.oschina.net/hellation/blog/3046238

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值