java中Object类是怎么回事,干嘛使的?举例说明!
Object类的作用:m a r k - t o- w i n: 在java中,因为所有的类都有共性,所以java的缔造者们把java设计成这样:所有的类都是Object类的直接或间接子类,而且把上述所有类的共 性都放在Object类中。这样就可以达到代码重用。All classes in java are subclasses of Object class。
Object类的equals和toString的用法:
下面一组两个例子,马克-to-win:第一个例子是用的父类Object的equals和toString方法,Object的equals是比较对象 在内存当中的地址, 当然不一样了。 而第二个例子Company的equals方法是自己写的,比较的他们的name属性,只要name一样,对象的equals返回的就是真。println (c1);会导致c1的toString被调用(这是语法),第一个例子中c1因为没有toString方法, 所以就用基类Object的toString方法。另外,Object的 toString方法打印出来就是Company@1b67f74,这是Sun公司编的。而后面一个例子的toString方法时咱们自己编的。
例:2.1.1--
class CompanyMark_to_win {
private String name;
CompanyMark_to_win(String name) {
this.name = name;
}
/*
public String toString() {
return name;
}
public boolean equals(Object o) {
if (!(o instanceof CompanyMark_to_win))
return false;
CompanyMark_to_win c = (CompanyMark_to_win) o;
return name.equals(c.name);
}
*/
}
public class Test {
public static void main(String[] args) {
CompanyMark_to_win c1 = new CompanyMark_to_win("Abc");
CompanyMark_to_win c2 = new CompanyMark_to_win("Abc");
CompanyMark_to_win c3 = new CompanyMark_to_win("xyz");
System.out.println("c1.equals(c2): " + c1.equals(c2));
System.out.println("c1.equals(c3): " + c1.equals(c3));
System.out.println(c1);
}
}
更多内容请见原文,文章转载自:https://blog.csdn.net/qq_44639795/article/details/103117009
最新文章
- 文件夹右键添加“DOS”命令
- MySQL笔记-最简单的方法来解决找不到mysqld.sock文件的问题
- 【MyEcplise hibernate tools】hibernate tools的使用以及错误
- ASP.NET MVC URL重写与优化(1)-使用Global路由表定制URL
- 【bzoj2049】洞穴勘测
- spoj LCMSUM sigma(lcm(i,n));
- SA 的参数
- hadoop开发环境-----eclipse
- 彩色网页变黑白色CSS代码变黑白色调!
- Windows7 下安装 CentOS6.5
- Reward
- 最近公共祖先:LCA及其用倍增实现 +POJ1986
- iOS延时执行的四种方法
- crontab指令详解
- 从头开始-01.C语言环境测试
- SRM 577 Div II Level Two: EllysRoomAssignmentsDiv2
- python好文章
- bzoj 1051: [HAOI2006]受欢迎的牛 (Tarjan 缩点)
- 【转】教你何时开启水果机上的HDR拍照
- tomcat7部署多个web应用不同编码,端口