最新回答 / qq_慕設(shè)計9574980
不同動物的cage的屬性不一樣,因此類的數(shù)據(jù)結(jié)構(gòu)就不會一樣啊,不一樣的話就不能通用一個cage類,每次都需要重新寫一個適用不同動物的cage類,你可以寫一個cage基本類,包含了他們cage的基本共同屬性,但是針對于更加細(xì)節(jié)的屬性就需要繼承,因此泛型就有優(yōu)勢了。
2019-08-13
最新回答 / qq_慕俠5280997
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApp8{??? public class Pet??? {??????? public Pet(string name, uint age, string food)??????? {??????????? _name = name;?????????...
2019-08-01
最新回答 / 日安因心
之所以會用到default關(guān)鍵字,是因為需要在不知道類型參數(shù)為值類型還是引用類型的情況下,為對象實例賦初值。考慮以下代碼:class TestDefault<T>? ? {? ? ? ? public T foo()? ? ? ? {? ? ? ? ? ? T t = null; //???? ? ? ? ? ? return t;? ? ? ? }? ? }如果我們用int型來綁定泛型參數(shù),那么T就是int型,那么注釋的那一行就變成了 int t = null;顯然這是無意義的。為了解決這一...
2019-07-24
最新回答 / 慕數(shù)據(jù)8441107
接口是一種規(guī)范,使得別人在實現(xiàn)接口的時候需要完成接口中那未實現(xiàn)的方法,普通類一旦實現(xiàn)接口就必須完成接口內(nèi)所有未實現(xiàn)的方法,但是可以通過別的方式只去實現(xiàn)部分方法??梢越ㄒ粋€抽象類,讓抽象類去實現(xiàn)接口中的方法(在抽象類中,接口中的方法變成非抽象方法),最后讓你那個普通類去繼承抽象類,這樣就可以只實現(xiàn)你想實現(xiàn)的函數(shù)方法了。(因為在普通類繼承抽象類時,可以只實現(xiàn)抽象類中部分非抽象方法,不需要全部實現(xiàn),不過抽象類中如果有抽象方法,抽象方法必須實現(xiàn))還不明白,可以百度一下
2019-07-21
已采納回答 / 慕婉清0528030
先在一個你想要注冊事件類中提前寫好一個委托方法,例如delegate void Handler【委托類型】();然后再寫一個事件聲明,例如public static event Handler【委托類型】 NewDog【事件名】;事件聲明使用static,便于直接添加事件,也就是【類名.事件名 += 想要注冊的方法】,取消事件是【類名.事件名 -=想要注冊的方法 】具體步驟可以這樣:1.delegate void Handler【委托類型】();? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ...
2019-07-10
最贊回答 / qq灰色記憶
隱藏方法有它的適用場景,比如說某個父類中的方法在子類中不需要了,那么你可以直接給隱藏掉,并沒有說一定要在子類中隱藏父類的方法,而是隱藏,隱藏根據(jù)實際需要,選擇繼承、重寫或者隱藏。這就和坐公交打卡和手機支付可以同時存在,雖然你平時用不到公交卡,但是你需要用公交卡的時候你可以用。隱藏只是一種繼承方式,并不是繼承就必須要隱藏,希望你理解
2019-06-30