python不支持_为什么 Python 不支持函数重载?而其他语言大都支持?
唉,覺(jué)得真的沒(méi)必要,在python下邊咋談都覺(jué)得有理啦。用慣了,覺(jué)得怎么玩都o(jì)k。
而且有或者沒(méi)有,不是從是不是能實(shí)現(xiàn)最終的功能上來(lái)講,而是使用的時(shí)候,看起來(lái)在某方面是不是更便利或者更容易理解或者是更不容易出錯(cuò)。
為什么那么多語(yǔ)言用?肯定有他的便利的地方。你要非說(shuō),python有缺省參數(shù),那其它很多語(yǔ)言也有阿,也沒(méi)有就說(shuō)不支持重載阿。那你說(shuō),強(qiáng)類(lèi)型是不是有好處,那肯定有好不好,就拿同名方法,不同類(lèi)型參數(shù)來(lái)說(shuō),如果參數(shù)類(lèi)型不同,你怎么在方法中寫(xiě),才能處理不同的情況?肯定你要判斷吧,你就算接受參數(shù)的時(shí)候來(lái)者不拒,你真的以為你程序內(nèi)部就來(lái)者不拒阿,隨便來(lái)什么你程序都跑的起來(lái)啊,醒醒吧,而且這和把參數(shù)設(shè)置成object,然后在方法里邊逐一判斷有啥區(qū)別。。。強(qiáng)類(lèi)型會(huì)把這種判斷放到不同的同名方法里,python之類(lèi)的語(yǔ)言會(huì)放到同一個(gè)方法內(nèi)部,有的人覺(jué)得,不同方法里邊,使用起來(lái)明朗和安全(比如你沒(méi)有聲明double的使用,那就別xx的給我一個(gè)double,死一邊去,編譯丫都通不過(guò)),有的人覺(jué)得,放在同一個(gè)方法里邊沒(méi)有約束用的爽,這有啥爭(zhēng)論的。
另外再說(shuō)那個(gè)不同數(shù)量的參數(shù),噢,你覺(jué)得有缺省參數(shù),用**就解決所有了,但問(wèn)題是,如同開(kāi)始所說(shuō),當(dāng)然可以實(shí)現(xiàn)(如果功能不能實(shí)現(xiàn),早都沒(méi)人用了),只是有的語(yǔ)言,認(rèn)為你這樣實(shí)現(xiàn)有風(fēng)險(xiǎn),比如你怎么管控一個(gè)xx把你寫(xiě)的參數(shù)隨便胡亂輸入,如果單純強(qiáng)調(diào)‘能實(shí)現(xiàn),所以就沒(méi)必要有’,那我覺(jué)得就有點(diǎn)偏激,那大家都用object[]作參數(shù),什么都解決啦,問(wèn)題是這樣做,不容易理解阿,所以有些語(yǔ)言強(qiáng)調(diào)風(fēng)險(xiǎn),有些語(yǔ)言強(qiáng)調(diào)便利,沒(méi)啥爭(zhēng)論不休的。
而且語(yǔ)言都在發(fā)展,要不出那么多版本干什么,相互之間也在學(xué)習(xí)和借鑒,python作為一個(gè)便利著稱(chēng)的語(yǔ)言,可能在實(shí)現(xiàn)這些功能上面本身就不得天獨(dú)厚好么,何必非要在各個(gè)層面都爭(zhēng)個(gè)贏呢。。。-_-!
總結(jié)
以上是生活随笔為你收集整理的python不支持_为什么 Python 不支持函数重载?而其他语言大都支持?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 按键映射_第三章 中文注释及按键相关
- 下一篇: 从数据类型 nvarchar 转换为 n