10.Object類

在JAVA中,所有的類都直接或間接繼承了Java.lang.Object類Object是一個特殊的類,他是所有類的父類,是Java類層中的最高層類。當創建一個類時,他總是在繼承,除非某個類已經指定要從其他類繼承,否則他就是從java.lang.Object類繼承而來,可見所有的類都源于java.lang.Object類,如String,Integer類都是繼承Object類;除此之外,自定義的類也都繼承于Object類。所有的類都是Object子類。
在Object類中主要包括clone(),finalize(),equals(),toString()等方法,其中常用的兩個方法為equals()和toString()方法。由于所有的類都是Object類的子類,所以任何類都可以重寫Object類中的方法。
在Object類中的getClass(),notify(),notifyAll(),wati()等方法不能被重寫,因為這些方法被定義為final類型。
1.getClass()
返回對象執行時的class實例,然后使用此實例調用getName()方法可以取得類的名稱。
getClass().getname();
2.toString()方法
toString()方法的功能是將一個對象返回為字符串形式,他會返回一個String實例。在實際應用中通常重寫toString()方法,為對象提供一個特定的輸出模式。當這個類轉換為字符串或與字符串連接時,將自動調用重寫的toString()方法。
public class demo{
public String toString() {//重寫toString()方法
return "在"+getClass().getName();
}
public static void main(String[] args) {
System.out.println(new demo());
}
}
重寫父類Object的toString()方法,定義一段字符串。單個用戶打印類對象時,將自動調用toString()方法。
3.equals()方法
"=="比較的是兩個對象引用是否相等
equals()判斷兩個字符串對象是否相等
blic class demo{
public static void mian(String[] args){
String s1=”123“;
String s2="123";
system.out.println(s1.equals(s2));//true
system.out.println(s1.equals(s2));//false
}
}
在自定義類中使用equals()方法默認實現是使用"=="運算符比較兩個對象的引用地址,而不是比較對象的內容,所以要想真正做到比較兩個對象的內容,需要自定義類中重寫equals()方法。
此處類比字符串上的equals,此處是系統定義的字符串類
equals(String ?otheString)
String?a=new?String("hello");
String?b=new?String("hello");
?boolean?c=a.equals(b);
System.out.println(c);//true
V v1=new V();
V v2=new V();
system.out.println(V1.equals(2));//false 自定義類默認的是對比兩個對象的引用地址
4.使用Object類接收任意對象的引用
package ceshi;
class Person {
}
public class Test {
public static void main(String[] args) {
????? Object obj = new Person();//一個操作可能接收所有類的對象,那么Object作為參數最適合
Person per = (Person) obj;
}
}

?

轉載于:https://www.cnblogs.com/cainame/p/10092001.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/395762.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/395762.shtml
英文地址,請注明出處:http://en.pswp.cn/news/395762.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

RecyclerView的下拉刷新和加載更多 動畫

下拉刷新和加載更多 1、https://github.com/jianghejie/XRecyclerView 2、http://blog.csdn.net/jabony/article/details/44780187 動畫 1、https://github.com/wasabeef/recyclerview-animators

java中顯示動態信息的方法_java里的動態表單技術

最近的一個項目,由于客戶的需求等信息不確定,為了降低以后修改的成本及產品的推廣考慮到動態表單技術,之前也一直在考慮到動態表單技術,畢竟在delphi里已經實現過了,由于我們采用的hibernate的執久層的原故&#xff0c…

Cinder 組件詳解 - 每天5分鐘玩轉 OpenStack(47)

本節我們將詳細講解 Cinder 的各個子服務。 cinder-api cinder-api 是整個 Cinder 組件的門戶,所有 cinder 的請求都首先由 nova-api 處理。cinder-api 向外界暴露若干 HTTP REST API 接口。在 keystone 中我們可以查詢 cinder-api 的 endponits。 客戶端可以將請…

中國移動 全球通、 動感地帶、神州行 的區別

1、全球通 1、主要面向商務人士可以享受機場VIP俱樂部的尊貴、1860專席的高質量服務、個性化賬單、客戶積分獎勵以及大客戶經理貼心服務,更有尊貴資費套餐優惠,但它價格也是最貴的。 2、全球通面對事業成功的人士,進取。 3、全球通&#xff…

java 并發測試main方法_java并發編程test之synchronized測試

synchronized關鍵字可以用于聲明方法,也可以用于聲明代碼塊;package com.test.java;public class SyncTest {public static void main(String[] args) {SynchronizedDemo1 synct1 new SynchronizedDemo1();SynchronizedDemo2 synct new SynchronizedDemo2();SynchronizedDemo…

業余愛好者linux_如何從業余愛好者變成專業開發人員

業余愛好者linuxby Ken Rogers肯羅杰斯(Ken Rogers) 如何從業余愛好者變成專業開發人員 (How to Go From Hobbyist to Professional Developer) A few years ago, I was bouncing back and forth between landscaping jobs and restaurant jobs. I had just left college, and…

RedHat Enterprise Linux 6 配置Xmanager ,實現圖形界面連接

我們經常見到的幾種最為常用的windows下遠程管理Linux服務器的方法,基本上都是利用SecureCRT,或者是PUTTY等客戶端工具通過ssh服務來實現Windows下管理Linux服務器的,這些客戶端工具幾乎不需要什么配置,使用簡單,但是它們都無法啟…

Mac下配置iterm2 支持rz sz命令

轉自:http://blog.csdn.net/citywolf4/article/details/49071679 1.安裝lrzsz,使用brew命令:brew install lrzsz如果找不到lrzsz,使用以下命令更新brew庫:brew update2.下載zmoden腳本在https://github.com/mmastrac/iterm2-zmode…

java中session對象登錄_JavaWeb中Session對象的學習筆記

一、Session簡單介紹在WEB開發中,服務器可以為每個用戶瀏覽器創建一個會話對象(session對象),注意:一個瀏覽器獨占一個session對象(默認情況下)。因此,在需要保存用戶數據時,服務器程序可以把用戶數據寫到用戶瀏覽器獨…

vux flexbox使用_Flexbox用大的,彩色的動畫gif進行解釋

vux flexbox使用Here are three links worth your time:這是三個值得您花費時間的鏈接: How Flexbox works — explained with big, colorful, animated gifs (5 minute read) Flexbox的工作原理-帶有大尺寸,彩色動畫gif動畫( 閱讀5分鐘 ) How to commi…

微信小程序 沒有找到 node_modules 目錄

在學習小程序云開發的時候,遇到一個問題,使用npm i --production 和npm i vant-weapp -S --production之后,在微信開發者工具中并沒有node_modules文件夾 但是在根目錄下生成了一個package-lock.json文件。也就是下載的依賴都已經裝好了&…

關于Unity中UI中的Image節點以及它的Image組件

一、圖片的Inspector面板屬性 Texture Type:一般是選擇sprite(2D and UI) Sprite Mode:一般是選擇Single Packing Tag:打包的標志值,最后打包的時候會把Tag相同的所有小圖打包成一個大圖。不像cocos打包圖集需要用到第三方軟件&am…

Knockoutjs官網翻譯系列(一)

最近馬上要開始一個新項目的研發,作為第一次mvvm應用的嘗試,我決定使用knockoutjs框架。作為學習的開始就從官網的Document翻譯開始吧,這樣會增加印象并加入自己的思考,說是翻譯也并不是純粹的翻譯,會加入自己對知識點的思考以及自…

無人機導航定位系統Java_無人機高精度室內定位導航的技術方案

原標題:無人機高精度室內定位導航的技術方案因為一些特殊的用途,比如室內表演,編隊室內飛行等,無人機不可避免會在室內飛行,無人機對室內定位精度的要求很高,室內空間本身就不會太大,若定位精度…

javascript控制臺_如何充分利用JavaScript控制臺

javascript控制臺by Darryl Pargeter達里爾帕格特(Darryl Pargeter) 如何充分利用JavaScript控制臺 (How to get the most out of the JavaScript console) One of the most basic debugging tools in JavaScript is console.log(). The console comes with several other use…

Django之靜態文件配置

靜態文件 了解靜態文件配置之前,我們需要知道靜態文件是什么? 靜態文件其實指的是像css,js,img等一些被模板需要的文件。 如何在Django中配置我們的靜態文件 1.建立static文件夾,將靜態文件放在該目錄下 2.在settings文件下配置如…

神奇的圖像處理算法

http://blog.chinaunix.net/uid-23065002-id-4392043.html http://blog.csdn.net/k_shmily/article/details/51138154 幾周前,我介紹了相似圖片搜索。 這是利用數學算法,進行高難度圖像處理的一個例子。事實上,圖像處理的數學算法&#xff0c…

JavaWeb項目前端規范(采用命名空間使js深度解耦合)

沒有規矩不成方圓,一個優秀的代碼架構不僅易于開發和維護,而且是一門管理與執行的藝術。 這幾年來經歷了很多項目,對代碼之間的強耦合及書寫不規范,維護性差等問題深惡痛絕。在這里,通過仔細分析后,結合自己…

java重要基礎知識點_java基礎知識點整理

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓java基礎知識點整理1.&和&&的區別?&:邏輯與(and),運算符兩邊的表達式均為true時,整個結果才為true。&&:短路與,如果第一個表達式為false時&#…

網易云音樂的算法有什么特點_當算法設計音樂廳時會發生什么?

網易云音樂的算法有什么特點Here are three links worth your time:這是三個值得您花費時間的鏈接: What happens when algorithms design a concert hall? (3 minute read) 當算法設計音樂廳時會發生什么? ( 閱讀3分鐘 ) How to land a top-notch tec…