面向对象-Object类
来源:互联网 发布:php 异步请求类 编辑:程序博客网 时间:2024/06/11 20:13
一.Object类中的equals()方法equals(Object obj) :指示其他某个对象是否与此对象“相等”。 返回值类型是booleanOblect类中的equals方法public boolean equals(Object obj)姓名和年龄都相同,为同一个人如果要比较两个人是否为同一个人,Person类就要复写equals方法class Person{private String name; private int age;public Person(){}public Person(String name,int age){this.name = name;this.age = age;}
public void setName(String name){this.name = name;}public String getName(){return name;}public void setAge(int age){this.age = age;}public int getAge(){return age;}public boolean equals(Object obj){if(this == obj){return true;}if(obj instanceof Person){Person p1 = (Person)obj;return (this.getName()== p1.getName())&& (this.getAge()== p1.getAge());}return false;}}class PersonDemo{public static void main(String[] args){ Person p1 = new Person("张三",25);Person p2 = new Person("张三",25); System.out.println( p1.equals(p2));}} 二.Object类中的toString方法 public String toString() 返回该对象的字符串表示。通常,toString 方法会返回一个 “以文本方式表示”此对象的字符串。结果应是一个简明但易 于读懂的信息表达式。建议所有子类都重写此方法。 class Person{private String name;private int age;public Person(){}public Person(String name,int age){this.name = name; this.age = age;}public void setName(String name){this.name = name;}public String getName(){return name;}public void setAge(int age){this.age = age;}public int getAge(){return age;}public String toString(){ return name; }}class Day02{public static void main(String[] args){Person p1 = new Person("张三",25);Person p2 = new Person("张三",24); System.out.println( p1.toString());////没有toString()方法输出的是Person@1db9742//返回的是一个字符串,由“@”和此对象哈希码的//无符号十六进制表示组成,比较难懂,建议定义toString()//方法,复写父类Object的toString方法,自定义字符串表现形式 //有了toString方法后,覆写了object类中的toString方法//自定义了返回的字符串表现形式,输出结果就是:张三}}三.Object类中的getClass返回的的是当前对象所属类的字节码文件对象(Class)一个字节码文件对象可以对应好几个对象所以 System.out.println(cls1 == cls2);//true而Class类中有getName()方法,getField()方法,getMethod()方法等等 public final Class<?> getClass()class Person{private String name;private int age;public Person(){}public Person(String name,int age){this.name = name; this.age = age;}public void setName(String name){this.name = name;}public String getName(){return name;}public void setAge(int age){this.age = age;}public int getAge(){return age;}}class Day02{public static void main(String[] args){Person p1 = new Person("zhangsan",24);Person p2 = new Person("lisi",25); Class cls1 = p1.getClass();Class cls2 = p2.getClass(); System.out.println(cls1);//class PersonSystem.out.println(cls2);//class PersonSystem.out.println(cls1 == cls2);//true System.out.println(cls1.getName());//Person }}
0 0
- 面向对象-Object类
- 面向对象--Object类
- Java面向对象--Object类
- Java面向对象-Object类
- Java面向对象高级--Object类
- 面向对象——Object类
- Java面向对象 Object类 内部类
- 黑马程序员-day08-面向对象(Object类)
- java面向对象-Object类-equals()
- java面向对象-Object类-toString()
- javaSE-面向对象-Object
- 面向对象—Object
- 面向对象笔记(Object)
- OC面向对象思想Object Oriented:类与对象
- 面向对象(Object Oriented,OO)
- 面向对象(Object Oriented,OO)
- 面向对象理论(2)-Object
- 面向对象(Object Oriented)掠影
- Kissy中的ajax异步提交
- IOS_加速计_CoreMotion框架_单例_时钟_Get+异步请求+Json
- JavaScript学习第一弹:【图片轮播实现】
- lua源码注释1【转】
- freemarker报错之八
- 面向对象-Object类
- [LeetCode]Candy
- 机器学习--学习笔记(四)--支持向量机
- C语言文件读写命令
- Win 8 系统下 Weblogic server 12c 的下载安装与配置——Windows J2EE开发安装序列之六
- BaiduMap_SDK_DEMO_3.0.0_for_Xamarin.Android_by_imknown
- lua和C++相互交换数据1 【转】
- freemarker报错之九
- codeblocks使用gtk遇到“undefined reference to:gdk_pixbuf_new_from_file”