public void test()
然而對於有的類來說,可能有自己邏輯上的相等的概念,而不僅僅是引用的物件是否相同,比如說integer,當兩個數值確實一樣,但是是兩個物件的時候,我們也希望有一種辦法來判定兩者在邏輯上是相等的,所以會改寫object的equals函式,
public boolean equals(object obj)
return false;
} 有時候我們建立自己的類,也需要進行邏輯比較,比如乙個員工類,比較的時候邏輯上比較其員工號即可,因而我們也要改寫equals函式,但要注意一下幾點:
下面是乙個例子:
public class employee
class element
point p = new point();
element e = new element();
system.out.println(e instanceof point);
是輸出false嗎?不是,是compile error,也即在編譯階段就可以知道e無論如何都不可能稱為point型別的物件(二者沒有繼承關係),則編譯不過。
注意instanceof 和class equivalence的不同之處
每日五題 Spring
控制反 spring通過控制反轉實現了鬆散耦合,物件們給出它們的依賴,而不是建立或查詢依賴的物件們。面向切面的程式設計 aop spring支援面向切面的程式設計,並且把應用業務邏輯和系統服務分開。容器 spring 包含並管理應用中物件的生命週期和配置。事務管理 spring 提供乙個持續的事務管...
面試題 五道面試題五
判斷出棧順序的正確性 假設每個相同元素只出現一次 include include include include using namespace std class istruesack istruesack if str2 null public bool istrue const char pu...
微軟面試100題之第五題
題目 輸入n 個整數,輸出其中最小的 k 個。例如輸入 1 2 3 4 5 6 7 8 這 8 個數字,則最小的 4 個數字為 1 2 3 和 4 分析 本題最簡單也最容易想到的解決方法就是把輸入的n個整數排序了。當然,排序也有好多種方法,是選擇排序 插入排序 快速排序還是堆排序?如果是堆排序還要分...