0808-080x OBJECT
2015-07-31 16:47
459 查看
class Demo//extends Object
{
private int num;
Demo(int num)
{
this.num = num;
}
public boolean compare(Demo d)
{
return this.num == d.num;
}
}
class ObjectDemo
{
public static void main(String[] args)
{
Demo d1 = new Demo();
Demo d2 = new Demo();
Demo d3 =d1;
System.out.println(d1.equals(d2));
System.out.println(d1.equals(d3));//其实应用的是==
比较的是地址
}
}
查阅javaapi:类Object是类层次结构的根类。每个类都使用Object作为超类。
Object类是所有对象的直接或者间接的父类。内含了所有对象都具有的功能。
Object类中已经提供了对对象是否相同的比较方法。
如果自定义类中也有相同的 比较 功能,
只要演戏父类中的功能,建立自己特有的比较内容即可。(覆盖)
class Demo
{
private int num;
public boolean equals(Object obj)//复写
{
if( !(obj instanceof Demo))
return false;
Demo d = (Demo)obj;
return this.num == d.num;
}
public boolean equals(Demo d)//重载
{
}
}
------------------------------------------------------------------------------------------------------------------
toString
class ObejectDemo
{
public static void main(String[] args)
{
Demo d1 = new Demo(4);
System.out.println(Integer.toHexString(d1.hashCode())));
System.out.println(d1.toString());
}
}
getmethod:反编译
一般来说,自己创建类的时候,经常要复写 比较 方法 和 toString方法。
{
private int num;
Demo(int num)
{
this.num = num;
}
public boolean compare(Demo d)
{
return this.num == d.num;
}
}
class ObjectDemo
{
public static void main(String[] args)
{
Demo d1 = new Demo();
Demo d2 = new Demo();
Demo d3 =d1;
System.out.println(d1.equals(d2));
System.out.println(d1.equals(d3));//其实应用的是==
比较的是地址
}
}
查阅javaapi:类Object是类层次结构的根类。每个类都使用Object作为超类。
Object类是所有对象的直接或者间接的父类。内含了所有对象都具有的功能。
Object类中已经提供了对对象是否相同的比较方法。
如果自定义类中也有相同的 比较 功能,
只要演戏父类中的功能,建立自己特有的比较内容即可。(覆盖)
class Demo
{
private int num;
public boolean equals(Object obj)//复写
{
if( !(obj instanceof Demo))
return false;
Demo d = (Demo)obj;
return this.num == d.num;
}
public boolean equals(Demo d)//重载
{
}
}
------------------------------------------------------------------------------------------------------------------
toString
class ObejectDemo
{
public static void main(String[] args)
{
Demo d1 = new Demo(4);
System.out.println(Integer.toHexString(d1.hashCode())));
System.out.println(d1.toString());
}
}
getmethod:反编译
一般来说,自己创建类的时候,经常要复写 比较 方法 和 toString方法。
相关文章推荐
- Object-C 中的日期(NSDate)
- [Object-c]cocoaPods 安装及遇到问题处理方法
- 黑马程序员--iOS--Objective-C基础 (Foundation框架 一 )
- 编译报错:Undefined symbols for architecture x86_64
- Object-C 中的NSData / NSMutableData
- objective-c 编程的几个调试技巧
- Jackson 高性能的JSON处理 ObjectMapper
- Object-C 四种创建临时字符串的方法
- [Objective-C] NSArray initWithObjects "Expression result unused" warning
- Objective-C中常用的结构体NSRange,NSPoint,NSSize(CGSize),NSRect
- Object-C NSDictionary /NSMutableDictionary
- everything is a object2
- Properties vs. instance variables(ios objective-c)
- Object-C Basis
- Transform与GameObject的区别于用法
- Objective C语言----类,对象,方法总结
- [学习笔记—Objective-C]《Objective-C-基础教程 第2版》第十一章 属性
- objective C程序 无参方法和有参方法声明实现及调用
- objective C程序 类和对象
- 从C++到objective-c