国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

java中object類實例分析

2024-07-13 10:14:36
字體:
來源:轉載
供稿:網友

問:什么是Object類?

答:Object類存儲在java.lang包中,是所有java類(Object類除外)的終極父類。當然,數組也繼承了Object類。然而,接口是不繼承Object類的,Object類不作為接口的父類。

下面,我們就通過實例,對object進行分析

public class ObjectStu {	/*Object類:java里所有類的父類,頂層的類 *equals:判斷兩個對象是否"相等"; *hashcode:返回一個對象的哈希碼值,是一個整數 *因為之后的容器,例如hashset和hashMap會對元素進行去重的處理;所以equals和hashcode需要同時重寫; *重寫之后需要滿足的標準: *當equals的結果為true的時候,要求兩個對象的hashcode值相等; *當equals的結果為false的時候,要求兩個對象的hashcode值不等;(hashcode可以相等,但是如果不等可以提升效率) *toString:返回對象的字符串表示 *作用:方便程序內查看對象屬性,方便調試代碼 *debug學習: *1.在可能出現bug的地方設置斷點 *2.run as debug *3.f6,執行當前代碼;f5,進入當前本句代碼的方法內部;f8,快速跳到下一個斷點,如果沒有下一個斷點,運行余下所有代碼 *equals: *1.一致性:使用對象A調用equals和對象b進行比較,每一次的結果都應該一樣 *2.自反性:對象A調用equals比較對象b和對象b調用equals比較對象a的結果應該一樣 */	public static void main(String[] args)	 {		Person per = new Person("小王",10,150);		Person per1 = new Person("小王",20,140);		Person per2 = per;		System.out.println(per==per1);		System.out.println(per.equals(per1));		String str = "123";		str.equals("123");		str.hashCode();		System.out.println(per.hashCode());		System.out.println(per1.hashCode());		System.out.println(per2.hashCode());		System.out.println(per);		System.out.println(per1);	}}class Person {	String name;	int age;	int height;	public Person(String name, int age,int height)	 {		super();		this.height = height;		this.name = name;		this.age = age;	}	/*@Override public boolean equals(Object obj) { if(this==obj){  return true; } if(obj instanceof Person){  Person per = (Person)obj;  if(this.name.equals(per.name)&&this.age==per.age){  return true;  } } return false; }*/	//重寫hashcode	/*@Override public int hashCode(){ return name.hashCode()+age*31+height*31; }*/	@Override	 public int hashCode()	 {		final int prime = 31;		int result = 1;		result = prime * result + age;		result = prime * result + height;		result = prime * result + ((name == null) ? 0 : name.hashCode());		return result;	}	@Override	 public Boolean equals(Object obj)	 {		if (this == obj)		  return true;		if (obj == null)		  return false;		if (getClass() != obj.getClass())		  return false;		Person other = (Person) obj;		if (age != other.age)		  return false;		if (height != other.height)		  return false;		if (name == null)		 {			if (other.name != null)			  return false;		} else if (!name.equals(other.name))		  return false;		return true;	}	@Override	 public String toString()	 {		return "Person[name="+name+",age="+age+"]";	}}

總結

以上就是本文關于java中object類實例分析的全部內容,希望對大家有所幫助。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 清镇市| 岱山县| 都安| 弥勒县| 南召县| 托里县| 剑川县| 建始县| 杨浦区| 大新县| 佛冈县| 特克斯县| 扎鲁特旗| 郎溪县| 金湖县| 梅州市| 东兰县| 安阳县| 正阳县| 丽江市| 曲麻莱县| 桃江县| 泸西县| 武冈市| 舞阳县| 长兴县| 神木县| 关岭| 灌阳县| 都江堰市| 四会市| 福鼎市| 上虞市| 天全县| 康平县| 禄丰县| 原阳县| 平乡县| 明水县| 乌兰浩特市| 乡宁县|