Java处理对象
為什么80%的碼農都做不了架構師?>>> ??
Java對象都是Object類的實例,都可以調用該類中定義的方法,這些方法提供了處理Java對象的通用方法。通俗的可以說任何對象都可以調用Object類中的方法。
1.toString()方法是Object類里面的的一個實例方法,所有的對象都具有toString()方法,所有的java對象都可以和字符串進行連接運算,當java對象和字符串連接對象時,系統自動調用Java對象toString()方法的返回值和字符串進行連接運算。toString()是一個特殊的方法,它是一個“自我描述”的功能,返回的對象實現類的類名+@+hascode(8位十六進制數字),也可以在該類中重寫toString()實現不同的功能。
2.java程序中測試兩個變量是否相等有兩種方式,一種是利用==運算符,另外一種利用equals()方法。當使用==時,只要要求這兩變量的數值相等,而當兩個引用類型是==卻要要求他們引用的為同一個對象。而equals卻不用他引用的為同一個類型。new? String("hello")和hello當java在直接使用形如“hello”的字符串直接量時,jvm將會使用常量池來管理這些字符串,當使用new String("hello")時,jvm會先使用常量池來保管“hello”直接量,再調用String類的構造器來創建一個新的String對象,新創建的String對象被保存在堆內存里面。也就是說 new String(“hello”)一共產生兩個字符串對象。常量池專門用于管理在編譯時被確定并被保存在已編譯的.class文件中的一些數據。他包括了關于類、方法、接口中的常量,還包括字符串常量。new String()創建出來的字符串對象是運行時創建出來的,他被保存在在運行時內存里面(即堆內存),不會放入常量池里。Object默認提供的equals只是比較對象的地址,在實際中常常會重寫equals()方法。重寫equals方法滿足自反性、對稱性、傳遞性。instanceof運算符,當前面對象是后面的實例或其子類的實例時都將返回true。
?
轉載于:https://my.oschina.net/zkctt/blog/707949
總結
- 上一篇: ubuntu wireshark 普通用
- 下一篇: Ubuntu LAMP