《Objiect》
【16-1】Object概述&Object-equals方法&toString方法。
==========================================================================================
class Person extends Object
{
private int age;
Person(int age)
{
this.age = age;
} public boolean equals(Object obj)
{
if(this == obj)
return true; if(!(obj instanceof Person))
throw new ClassCastException("类型是不对的,请改正!");
Person p = (Person)obj;
return this.age == p.age;
}
} class ObjectTest
{
public static void main(String[] args)
{
Person p = new Person(12);
Person p1 = new Person(13);
System.out.println(p.equals(p1));
}
} =========================================================================================== //Object概述&Object-equals方法&toString方法 /*
Object类中的常用方法。 Object类是所有类的根类,定义了所有对象都具备的功能。
API(应用程序接口)文档 //可以在JDK目录下的src\java\lang\object里面查看源代码 */ class Person extends Object
{
private int age;
Person(int age)
{
this.age = age;
} //判断是否是同龄人,这个方法也是在比较两个Person对象是否相等。
//注意:Person类中是否有比较两个Person对象相等的方法?有的,因为继承Object,他本身就具备equals方法
//既然有,还需要定义compare方法吗?不需要!
//但是,equals方法判断的是地址,不是我们所需要的内容。
//咋办?继续使用object的equals方法,但是建立子类的自己额内容,这就是传说中的重写。
//重写。 //记住:以后要判断对象是否相同,就需要覆盖equals方法。 //判断是否是同龄人 public boolean equals(Object obj)
{
//建立Person自己的判断相同的依据,判断年龄是否相相同。
//return this.age == p.age; //obj所属类型Object,Object中没有定义age,所以编译失败。 //如果调用该方法的对象和传递进来的对象是同一个,就不要转型和判断,直接返回true.
if(this == obj)
return true; //age是Person类型的属性,既然要用到子类型的内容,需要向下转型。
if(!(obj instanceof Person))
// return false;
throw new ClassCastException("类型是不对的!请改正");
Person p = (Person)obj;
return this.age == p.age;
} public String toString()
{
return "person[age = "+age+"]";
}
/*
public boolean compare(Person p)
{
return this.age == p.age;
}*/ } class Dog
{
} class ObjectTest
{
public static void main(String[] args)
{
Person p1 = new Person(12);
Person p2 = new Person(14);
//p1.equals(new Dog()); //System.out.println(p1.equals(p1)); System.out.println(p1.toString());
System.out.println(p2); //System.out.println(p1.compare(p2)); //System.out.println(p1==p2);
//System.out.println(p1.equals(p2));
}
}
《Objiect》的更多相关文章
- 天河微信小程序入门《四》:融会贯通,form表单提交数据库
天河在阔别了十几天之后终于又回来了.其实这篇文章里的demo是接着(天河微信小程序入门<三>)后面就做了的,但是因为最近在做别的项目,所以就偷懒没有发出来.放到今天来看,从前台提交数据到数 ...
- 天河微信小程序入门《三》:打通任督二脉,前后台互通
原文链接:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=505&extra=page%3D1 天河君在申请到https ...
- 《社交网络》里的评分公式——ELO排名系统
<社交网络>里的Mark Zackburg被女朋友甩后,在舍友的启发下,充分发挥了技术宅男自娱自乐的恶搞天分,做出了Facemash网站,对学校女生的相貌进行排名打分,结果网站访问流量过大 ...
- 原创:从零开始,微信小程序新手入门宝典《一》
为了方便大家了解并入门微信小程序,我将一些可能会需要的知识,列在这里,让大家方便的从零开始学习:一:微信小程序的特点张小龙:张小龙全面阐述小程序,推荐通读此文: 小程序是一种不需要下载.安装即可使用的 ...
- 《InsideUE4》GamePlay架构(十)总结
世界那么大,我想去看看 引言 通过对前九篇的介绍,至此我们已经了解了UE里的游戏世界组织方式和游戏业务逻辑的控制.行百里者半九十,前述的篇章里我们的目光往往专注在于特定一个类或者对象,一方面固然可以让 ...
- 《InsideUE4》-8-GamePlay架构(七)GameMode和GameState
我的世界,我做主 引言 上文我们说到在Actor层次,UE用Controller来充当APawn的逻辑控制者,也有了可以接受玩家输入的PlayerController,和能自行行动的AIControl ...
- 《InsideUE4》-7-GamePlay架构(六)PlayerController和AIController
PlayerController:你不懂,伴君如伴虎啊 AIController:上来,我自己动 引言 上文我们谈到了Component-Actor-Pawn-Controller的结构,追溯了ACo ...
- 《InsideUE4》-6-GamePlay架构(五)Controller
<InsideUE4>-6-GamePlay架构(五)Controller Tags: InsideUE4 GamePlay 那一天 Pawn又回想起了 被Controller所支配的恐惧 ...
- 《InsideUE4》-5-GamePlay架构(四)Pawn
<InsideUE4>-5-GamePlay架构(四)Pawn Tags: InsideUE4 我像是一颗棋 进退任由你决定 我不是你眼中唯一将领 却是不起眼的小兵 引言 欢迎来到Game ...
随机推荐
- PacBio & BioNano (Assembly and diploid architecture of an individual human genome via single-molecule technologies)
Assembly and diploid architecture of an individual human genome via single-molecule technologies 文章链 ...
- retrifit
Retrofit 特点 性能最好,处理最快 使用REST API时非常方便: 传输层默认就使用OkHttp: 支持NIO: 拥有出色的API文档和社区支持 速度上比volley更快: 如果你的应用程序 ...
- 扩展Date的format方法--格式化日期时间
Date.prototype.format = function (format) { var o = { "M+": this.getMonth() + 1, "d+& ...
- js将long日期格式转换为标准日期格式
<script language="javascript"> //扩展Date的format方法 Date.prototype.format = function (f ...
- [sso] 单点登录认证流程
一.流程说明 第一步:访问cas过滤链接ssoLogin,拼凑定向到 CAS_SERVER 获取ticket的URL 第二步:CAS_SERVER校验用户信息,生成Ticket 第三步:重新定向到访问 ...
- QT-- MainWindow外的cpp文件调用ui
这几天在学习QT,想写一个类似VIM的小软件,刚开始不注重代码结构,全部实现都写在MainWindow文件中,导致MianWindow文件十分的长而且很难去阅读,就想着把函数按照功能分到不同的cpp文 ...
- 初学java之try-catch-finally语句的实例
/* try - catch语句的例子,模拟向货船上装载集装箱 ,如果货船超重,那么货船认为这是一个异常,将拒绝装载集装箱, 但无论是否发生异常,货船都需要正点起航. */ package st; c ...
- android:clipToPadding和android:clipChildren
假设我们要做一个效果,界面最顶部是一个ActionBar并且是半透明的,ActionBar下面是一个ListView,在初始状态 下, ListView是top是在ActionBar的bottom位置 ...
- java中汉字自动转换成拼音
java中汉字自动转换成拼音 1.需要下载jar包 pinyin4j.2.5.0.jar ,加入到WEB-INF下的lib里边,右键add to bulid path. 2.[代码]PinYinUti ...
- java.util 类 TreeSet<E>
java.lang.Object≥ java.util.AbstractCollection<E> ≥ java.util.AbstractSet<E> ≥ java.util ...