当前位置: 首页 > news >正文

广州专业的网站开发公司网站的备案号查询

广州专业的网站开发公司,网站的备案号查询,app手机网站制作,合肥seo按天收费https://m.runoob.com/java/java-object-class.html toString() 1.为什么会有toString 子类继承父类就可以使用父类所有非私有的属性的方法。 在Java中所有类都直接或者间接继承Object类,可以说只要是Object类里面定义的非私有的属性和方法,任何类都可…

https://m.runoob.com/java/java-object-class.html

toString()

1.为什么会有toString

子类继承父类就可以使用父类所有非私有的属性的方法。
在Java中所有类都直接或者间接继承Object类,可以说只要是Object类里面定义的非私有的属性和方法,任何类都可以使用如toString(),equals(),hashCode(),notify()等等这些方法都是Object类已经定义好的的方法。

2.什么是toString

toString()就是把非字符串的数据类型转化为字符串。
Object类中的toString方法源码:


//(1)getClass().getName() 返回类的全类名(包名+类名)
//(2)Integer.toHexString(hashCode())将对象的hashCode值转成16进制字符串
public String toString() {return getClass().getName() + "@" + Integer.toHexString(hashCode());
}

输出的结果是:包名.类名+@+16进制的哈希值

  • getClass().getName() 意思就是这个类的全路径类名,包含了包名和类名信息,
  • hashCode是将对象的地址转换成一个整数
  • **Integer.toHexString(hashCode())**就是将hashCode值转化为16进制

最后中间拼接一个@连起来就有了上面例子的com.xhy.show.Show@15db9742。
toString()方法会返回一个字符串。结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法

3.重写toString

由于 Object 类中的 toString() 方法并不好用,因此很多其他类中都重写了此方法。(子类对父类提供的方法不满意,所以重写以符合自己的需求)

在idea中,直接 Alt+Insert 选择toString()就能自动生成重写的roString()方法。

//重写toString方法,输出对象的属性@Overridepublic String toString() {   //重写后,默认一般是把对象的属性值输出return "Monster{" +"name='" + name + '\'' +", job='" + job + '\'' +", sal=" + sal +'}';

equals()

1.方法目的、源码

equals()也是Object中的方法,在object中equals是用来看看两个参数是否引用的是同一个对象

Object类中的equals()方法源码:

public boolean equals(Object obj) {return (this == obj);
}

2.重写equals()

但实际开发中经常比较的是两个对象的内容是否相等,因此需重写equals,注意只能是一个类里比。

(1)在idea中,直接 Alt+Insert 选择tequals()就能自动生成重写的equals()方法。

public boolean equals(Object obj){//判断地址是否相同//判断测试的是否是同一个对象//如果是同一个对象,毋庸置疑,它应该返回Trueif(this==obj){return true;}//非空性if(obj == null){return false;}//判断是否是一个类if(obj instanceof Person){//向下转型//将参数传入的对象造型为Citizen类型//object类是所有类的父类不向下转换,父类就比较不了子类的属性Person p=(Person) obj;if(this.name.equals(p.name)&&this.age==p.age){return true;}}return false;}

(2)自己手动定义编写
如只需role相同,或都为空不为空时的判断:
在这里插入图片描述
在这里插入图片描述

(3) 使用类里已经重写过的toString()方法的输出来比较:

@Override
public boolean equals(Object obj){if(obj instanceof StudentBean){return this.toString().equals(((StudentBean)obj).toString());}return false;

*String类中equals与==的区别

ps: String类中的 == 比较引用地址是否相同,equals() 比较字符串的内容是否相同。
在这里插入图片描述

equals与==的区别

“==”用来比较基本数据类型(int ,double…)时候是直接比较数值,比较引用数据类型(class,接口…)的时候比较的是对象的引用和地址。

equals没有重写之前比较的是两个实例引用的是不是同一个对象,但是重写之后比较的两个对象的内容是不是相同

http://www.yayakq.cn/news/648481/

相关文章:

  • 在常熟市公司网站建设哪家好一个不懂技术的人如何做网站
  • 阳泉购物网站开发设计跑业务怎么找客户
  • 网站编辑器哪个好用免费发布产品的网站
  • 网站是做响应式还是自适应的好wordpress 混合移动app
  • 祥云网站建设专业做招聘的网站
  • 云南公司网站建设企业网站 域名注册
  • 微信公众号是在哪个网站做的网店培训教程
  • 沙河企业做网站辽宁住房和城乡建设部网站
  • 广州营销型网站优化公众号注册流程
  • 站长之家seo查找保险网站有哪些
  • 手机端网站开发技术wordpress 搜索 下一个
  • 网站建设销售客户疑问萝岗移动网站建设
  • 手机端网站加盟wordpress微信投票
  • 网站建设徐州企业网站模板下载安装
  • 企必搜做网站买一台服务器需要多少钱
  • 深圳o2o网站建设用discuz建设企业网站
  • 可否用nas做网站自己建设网站的费用
  • 免费的推广网站有哪些企业网站的建立步骤
  • 外贸做网站推广wordpress版5.2
  • 网站长图怎么做广告设计与制作专升本考试科目
  • 网站建设开发服务费记账wordpress博客个人主页
  • 宁波网站优化公司软件wordpress 提权
  • 浙江邮电工程建设有限公司网站惠民建设局网站
  • 怎样建设网站呢如何实现企业网站推广的系统性
  • 兰州市做网站建设的公司龙岩网吧
  • 兼职 做网站手机网站 触屏
  • 聊城网站建设售后服务网站制作公司资质
  • 做民宿的网站有哪些人力资源公司经营范围有哪些
  • 淄博著名网站开发方法哪里可以注册公司
  • dz做电影网站花蝴蝶免费视频直播高清版