一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 關于Java中Object類的幾個方法示例

關于Java中Object類的幾個方法示例

2021-04-30 15:04tosser Java教程

這篇文章主要給大家介紹了關于Java中Object類的幾個方法的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

java語言不同于c++語言,是一種單根繼承結構語言,也就是說,java中所有的類都有一個共同的祖先。這個祖先就是object類。

object類被稱為上帝類,也被稱為祖宗類。在定義java類時,如果沒有指定父類,那么默認都會去繼承object類。配合java的向上類型轉換,借助object類就可以完成很多工作了。

object類的結構

關于Java中Object類的幾個方法示例

object類的方法

在object類中,有幾個常用的方法,比如getclass()、tostring()和equals()這三個方法。它們在object.java的實現如下:(object.java的源碼在java安裝目錄下的src.zip中,其目錄結構為src\java\lang\object.java)。

?
1
2
3
4
5
6
7
8
public final native class<?> getclass();
public boolean equals(object obj) {
 return (this == obj);
}
 
public string tostring() {
 return getclass().getname() + "@" + integer.tohexstring(hashcode());
}

對于getclass()來說,它可以在運行時獲得類。

equals()通常用來進行比較,在object類中,它進行了引用的比較,只有引用相同時會返回true。但是這樣并不是我們想要的比較的情況,比如字符串的比較是比較每個字符是否相同。那么在string類中就會對equals()方法進行重寫,string類中的equals()方法的實現如下:(string.java的源碼在java安裝目錄下的src.zip中,其目錄結構為src\java\lang\string.java)。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public boolean equals(object anobject) {
 if (this == anobject) {
  return true;
 }
 if (anobject instanceof string) {
  string anotherstring = (string)anobject;
  int n = value.length;
  if (n == anotherstring.value.length) {
   char v1[] = value;
   char v2[] = anotherstring.value;
   int i = 0;
   while (n-- != 0) {
    if (v1[i] != v2[i])
     return false/;
    i++;
   }
   return true;
  }
 }
 return false;
}

字符串的比較,進行了幾次判斷:

1、首先判斷引用相同,如果相同則返回true;

2、判斷傳入的對象是否為string,如果不是string,則直接返回false,沒有比較的必要,狗和人怎么比;

3、比較字符串的長度,如果兩個字符串的長度不相同,也就不用比較了,長度不同顯而易見是不相同了;

4、上面的比較都沒成立,則進行逐字符的比較。

對于兩個對象的比較,通常我們需要類似像string類中的equals()方法一樣,這樣就需要重寫equals()方法。

第三個方法tostring()默認在object類中輸出當前運行時類和一個hashcode,這對于我們幫助也并不是特別大,對于自己寫的類,可以將類中的所有屬性進行輸出,當重寫了tostring()方法后,直接使用system.out.println()中傳對象名,即可默認調用對象的tostring()方法。

作為初學者,就是要進行不斷的寫代碼,還有就是大量的進行記錄自己所學的內容,讓自己加深印象,還有就是忘記的時候方便的查找,記錄在這里隨時方便自己!

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:https://www.cnblogs.com/tosser/archive/2018/05/19/9054039.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲第一国产 | 热99re久久精品国产首页 | 香蕉tv亚洲专区在线观看 | 亚洲成人aa | 欧美久在线观看在线观看 | gogort人体的最新网站 | 日韩爱爱| 日本videossexx日本人 | 99久久精品国内 | 牛牛影院成人免费网页 | 色天天色综合 | 国产亚洲福利精品一区 | 香蕉久久久 | 热99精品在线| 大象视频污 | 日韩一级片在线免费观看 | 韩国女主播在线大尺无遮挡 | 亚洲 欧美 中文 日韩 另类 | 色呦呦在线免费观看 | 国产一线天 | 国产精品www | 日本最新免费二区 | 婷婷久久热99在线精品 | 美女张开腿黄网站免费精品动漫 | 把女的下面扒开添视频 | 黑人粗又长 | 特黄aa级毛片免费视频播放 | 精品视频久久久久 | 91制片厂制作传媒免费版樱花 | 亚洲大尺码| 精品亚洲永久免费精品 | 91porn在线观看国产 | 涩色网站 | 日本成人黄色网址 | 国产精品在线 | 欧美艳星kagneyiynn高清 | 免费的强动漫人物 | 国产高清免费在线 | 四虎影院永久在线 | 国产成人综合网 | 妇伦小说 |