Java之面向对象Object类
2016-05-22 23:12
513 查看
Java是面向兑现的语言,核心思想:找适合的对象适合的事情
方式一:自定义类,然后通过自定义的类创建对象
方式二:sun公司提供了很多的类给我们使用,我们只需要认识这些类,我们就可以通过这些类创建对象了
Object类是所有类的终极父类
Object类的常用方法:
toString(); 返回该对象的字符串表示,疑问:toString()有何作用,重写toString之后,我们直接输出一个对象的时候,就会输出符合我们所需求的合适数据
equals(Object obj)用于比较两对象的内存地址是否是同一个对象,判断两个对象是否是同一个对象
hashCode()返回对象的哈希吗(指的是对象的内存地址)
Java中的规范:一般我们重写了一个类的equals方法,我们都会重写他的hashCode方法
查看源代码的方式
方式一:按住ctrl键,单机你需要看的源代码
方式二:可以按下F3把光标移动到,需要查看的代码处
为什么我们需要查看源代码
1.查看源代码可以使我们了解的更加深入,了解别人是如何写出这个技术的
2.接收别人的思想
看源代码最忌讳的事情,不要每行代码都可以看懂,要猜出这行代码的要求
方式一:自定义类,然后通过自定义的类创建对象
方式二:sun公司提供了很多的类给我们使用,我们只需要认识这些类,我们就可以通过这些类创建对象了
Object类是所有类的终极父类
Object类的常用方法:
toString(); 返回该对象的字符串表示,疑问:toString()有何作用,重写toString之后,我们直接输出一个对象的时候,就会输出符合我们所需求的合适数据
equals(Object obj)用于比较两对象的内存地址是否是同一个对象,判断两个对象是否是同一个对象
hashCode()返回对象的哈希吗(指的是对象的内存地址)
Java中的规范:一般我们重写了一个类的equals方法,我们都会重写他的hashCode方法
查看源代码的方式
方式一:按住ctrl键,单机你需要看的源代码
方式二:可以按下F3把光标移动到,需要查看的代码处
为什么我们需要查看源代码
1.查看源代码可以使我们了解的更加深入,了解别人是如何写出这个技术的
2.接收别人的思想
看源代码最忌讳的事情,不要每行代码都可以看懂,要猜出这行代码的要求
package com.yuanzijian01; class Person{ int id; String name; public Person(int id, String name){ this.id = id; this.name = name; } //目前我们需要输出一个对象的时候和输出对象的toString方法返回的字符串 public String toString(){ return "编号:" + this.id + ",姓名:" + this.name; } public boolean equals(Object obj){ Person p = (Person)obj; return this.id == p.id; } public int hashCode(){ return this.id; } } public class Demo01 { public static void main(String[] args) { // TODO 自动生成的方法存根 /* Demo01 d = new Demo01(); System.out.println(d.toString()); System.out.println(d); */ Person p1 = new Person(110,"yuanzijian"); System.out.println(p1); Person p2 = new Person(110,"yaunzijian"); System.out.println(p2); System.out.println(p1.equals(p2)); System.out.println("p1:" + p1.hashCode()); System.out.println("p2:" + p2.hashCode()); } }执行结果
编号:110,姓名:yuanzijian 编号:110,姓名:yaunzijian true p1:110 p2:110
相关文章推荐
- Foundation => Objective-C - NSDate & NSCalendar
- 【Android】Android ObjectAnimator动画初识、模仿
- IOS学习笔记——object-C基础 (二)
- Java IO - ObjectInputStream&ObjectOutputStream
- 使用Object-C实现23种设计模式之建造者模式
- JSONObject使用心得
- instancetype、id、NSObject的区别
- JSONObject和JSONArray的使用 以及JSONObject put,accumulate,element的区别
- Objective-C ---代理和协议 (梳理整理)
- Objective-C ---点语法 (梳理整理)
- QObject源码分析
- Programming Scala第4章demo03 单例对象object
- javascript之object
- Objective-C ---点语法 (梳理整理)
- Objective-C ---代理和协议 (梳理整理)
- ObjectC Hook函数的实现与实战
- NSObject的方法说明
- 讲的很详细的一篇关于object equals() & hashCode() 的文章
- 使用cx_freeze工具打包时提示 AttributeError 'module' object has no attribute '_fix_up_module':
- Object Following for UAV(无人机物体跟随)