這是把getScore()方法中的返回值賦值給一個新的變量,由于它的返回值是int類型的所以需要定義一個int類型的變量去接收getScore()的返回值
2019-05-08
這里有個很重要的思想
靜態方法只能調用靜態變量,普通方法可以調用靜態變量和普通變量
那為什么還要這么麻煩弄一個靜態變量 靜態方法呢?
靜態變量的好處是無論在什么類中 只需 類名.變量名 就可以直接調用,而在類中直接定義變量,方法體內部是無法直接調用的,要先實例化對象(創建對象后)才能調用
靜態方法的好處也是無需實例化對象(創建對象) 例如本題中 int allScore=sum(); 可以直接獲取方法的值 而不需要像第一集第7章那樣 先new一個對象 然后 int allScore=對象.sum()
靜態方法只能調用靜態變量,普通方法可以調用靜態變量和普通變量
那為什么還要這么麻煩弄一個靜態變量 靜態方法呢?
靜態變量的好處是無論在什么類中 只需 類名.變量名 就可以直接調用,而在類中直接定義變量,方法體內部是無法直接調用的,要先實例化對象(創建對象后)才能調用
靜態方法的好處也是無需實例化對象(創建對象) 例如本題中 int allScore=sum(); 可以直接獲取方法的值 而不需要像第一集第7章那樣 先new一個對象 然后 int allScore=對象.sum()
2019-04-25
需要注意的是 ,多態的變量是不能重寫的,被static修飾的方法也是不能重寫的。靜態方法是屬于類的,不屬于對象的。在類加載的時候執行。
2019-04-23
if(getClass()!=obj.getClass())
return fasle;//這里明白,傳入dog2實參的時候,是對比dog和dog2兩個引用的屬性是否相同,因為兩個引用調用的同一個類中的屬性,這個肯定相同
Dog other=(Dog)obj;//視頻說一看到這句代碼就知道相同,怎么理解的?死活不明白
if(age!=other.age)
return false;
return true;
//為什么返回 ture?不管前邊怎么執行都返回true,這有什么意義?
return fasle;//這里明白,傳入dog2實參的時候,是對比dog和dog2兩個引用的屬性是否相同,因為兩個引用調用的同一個類中的屬性,這個肯定相同
Dog other=(Dog)obj;//視頻說一看到這句代碼就知道相同,怎么理解的?死活不明白
if(age!=other.age)
return false;
return true;
//為什么返回 ture?不管前邊怎么執行都返回true,這有什么意義?
2019-04-23
真是好迷糊啊,你說的最后的比較的時候完全聽不懂。屬性是否相同、值是否相同、類對象和類的 對象是否相同。說了一大堆 ,也沒有解釋,直接一句“一看就相同”就完事了。反復看了5遍都沒搞懂你要解釋的東西。認真點好 嗎?
2019-04-23
Dog dog=new Dog();
System.out.println(dog);
System.out.println(dog.toString());
// 沒有override的時候,這兩句話效果是一樣的
System.out.println(dog);
System.out.println(dog.toString());
// 沒有override的時候,這兩句話效果是一樣的
2019-04-21