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