為什麼物件導向中的父類叫父類,而不叫母類?

時間 2021-05-06 18:43:32

1樓:一無所知

1 如果叫母類那你又要問:為什麼物件導向中的母叫母類,而不叫父類.

2 parent class翻譯成父類,和負累同音,知道什麼意思了吧

2樓:liujunsong

中文語境由於兩千年的積累,有很多成語,對語言使用起到了潛移默化的影響。

在中文裡面,父子是預設的對仗,因此有了子類,對應的就有父類。

上面這個問題不如換成,為啥叫子類,不叫女類。道理是一樣的。

3樓:易哥

每個孩子都有乙個確定的母親。

每個孩子的父親,可能是不確定的,即存在多個可能

額,有點跑偏了,但事實就是這樣。

然後我們再回到物件導向中的繼承。

許多物件導向的程式語言,例如C++,支援多繼承(Multiple Inheritance)

這時,叫「母類」就顯得不合適了,叫「父類」則十分貼切。

看!博大精深!

4樓:Ivan

題主說,母親生孩子所以該叫母類,但在物件導向程式設計裡,子類是new出來的,或者可以說是某個語句、某個工廠函式裡「生」出來的,所以他的基類是養父母,養父母給他了知識和技能(屬性和方法)。多有愛的世界啊~~~~

5樓:嗚嗚嗚

我說下我自己的理解吧,我們一般都跟父親的姓氏而不是母親的,在中國,我們認為父親才是你的根,同理,物件導向中,父類是子類的根,是上一級

6樓:

您能發現這個問題,表示女權又贏得了乙個偉大的勝利。

實際上,我們只用super, parent, child, sub這類詞來描述這種關係,不用father, mother, son, daughter來表達。

7樓:普通學家QQB

他不叫父類,根本就沒有人把它稱之為father class,這是中文的錯誤翻譯導致的。

它的正確說法是parent class,也就是「根源類」。

parent這個單詞有三個意思,父親或母親/父母親/根源,如下圖。

因此許多人圖省事,不結合上下文意思就把parent這個單詞翻譯成了父,其實這樣做是不對的。

結合了上下文的翻譯,parent這的單詞的意思應該是「根源」。

計算機領域,奇奇怪怪的單詞翻譯其實還挺多的。

還能再聚乙個例子,就是函式這個詞。

它的翻譯也是很奇怪的,因為它來自於function,這個詞確實有函式的意思,但它同時有功能的意思。

其實你把它理解成「功能」這個詞。會更加貼切。

因為電腦程式就是由大大小小不同的「功能」組成的,你還可以在原有的「功能」上開發出新的「功能」。

然而函式本質上來講是乙個可以被帶入變數的公式

比如a^2 + b^2 = 100...

你的電腦程式顯然是不可能通過些這些奇怪的東西來實現「正確的功能/可以工作的功能」,也就是實現「functional correct/working」。

還有method這個詞居然也被賦予了「函式」的定義,雖然沒法考證,但我的直覺告訴我,這是100%的Chinglish。 method這個詞,有且只有乙個意思,就是「方法」。

因為乙個程式也可以用許多的「方法」來把它實現,這樣說也是符合人類直覺,符合語義的。

你如果以「函式」的詞義去和老外說這句話,他們一定會一臉懵逼。

比如你把我上面的函式去問老外有沒有方法可以解。

你大概會問:do you know any method to solve this method?

然後老外大概會答:what method solves what method? ** are you talking about?

從語言學的角度來看,這些奇怪的翻譯雖然符合了語法標準,但是在語意層面上根本說不通,很容易就可以被證明是錯的。

8樓:風君子

翻譯為中文的時候,總要選乙個,然後剛好使用了契合大家都預設理解的中國傳統文化的概念而已,以避免額外的解釋或產生歧義。

另外,「」多用於複製(生產)或承載(容納)方面的概念,而「」多用於繼承(傳遞)和許可權(控制)方面的概念。

以上為正經回答。

9樓:曹力ShiningRay

主機板為什麼叫motherboard

為什麼叫航母而不是航父

類似的問題有很多,就不繼續說了。

一般能想到這樣的問題,肯定是女權思想學習到位了,了解了語言有塑造人心智的魔力。然而這些詞是不能脫離語境來塑造人心的。在純技術的上下文中,講父類能暗示什麼呢?

另外很多流傳下來的好的東西是不是都是「女」字旁的啊,什麼妙,好。「男」的意思是田間耕作的工具,是不是表示男人是天生工具人?

講真,你要真願意說母類,估計大家理解了也無所謂,畢竟技術只是工具,用來解決問題的。

OK,言歸正傳,說說這個父類為什麼叫父類。程式設計比較常用的是Base class(基類)和Super class(超類),有時候會用到Parent class(父類),英文這裡確實並沒有指明父母。這三者都是指代同乙個概念。

base 表示基礎的,對應的是派生derive,表示從乙個基礎的功能和邏輯,增加更多功能和邏輯,派生出新類

super的概念則來自於數學中的集合,超集superset和子集subset,對應的是sub claas子類

而parent則是對應children,關係是inherit,表示子代是繼承了父母的特性。

事實上,我學習過的程式語言中,使用 Parent class 作為官方術語的相對少很多。事實上不支援多繼承的語言基本上不會使用parent,畢竟parent可能有多個。

另外,class本身就是個抽象概念,而抽象概念如人,乙個人可以有父母而乙個概念則不合適使用父母來表示。所以當用parent的時候,通常會指非常具體的東西,比如節點等。

所以建議使用基類,超類等術語

10樓:逗泥丸的平方

我更傾向於稱extends作擴充套件而不是繼承,不過反正也是習慣了。

我覺得,關於父母,可能是,行為不確定的時候是父(虛假的冠姓權),行為也必然延用的時候為母。

所以母才是掌握實權的。(狗頭

11樓:李展發

原本是叫超類super class的,要不參照無性繁殖中的「親體」,叫做「親類」好了。反正「親」字,本來就指上一代,但無性別指示。

12樓:一絲混亂

嚴格來說,翻譯成「父類」「繼承」都不正確,直譯明明是「超類」「拓展」。

如果是從集合的方向考慮,那麼「超集」->「超類」這個名字很自然。

當然我不太清楚最早的英文叫做什麼,不過「父類」這個叫法大概是從「樹」借鑑過來的,「父節點」->「父類」,「子節點」->「子類」?

13樓:

直譯應該叫超類,但是第乙個把它成父類的應該是個男的,然後大家習慣了叫父類,如果第乙個是女的把它翻譯成母類,你的腦洞就是為什麼叫母類不叫父類

14樓:戩非

因為跟著爸爸姓啊,所以叫父類。

另外,你想啥呢,我當年就是平時上課想這些有趣的問題,結果期末考試一點都不有趣。

如果教材是你我這樣的人出的,可能還會翻譯成母類、爸類、媽類。。。

C 父類物件中能否存放子類物件指標 父類物件中能否呼叫派生類物件函式?

張強 這是可以的哦,不過必須借助前向宣告和強制轉換或者多型。SalesMan salesMan SalesMan SalesManager salesManager SalesManager salesMan.salesManager void salesManager SalesManager s...

Java中如何理解父類的引用指向類的物件。。初學者。。?

圓胖腫 很簡單,兩個人,a和b,a是領導,a說我要這個這個這個功能,將其寫入介面,交給b去實現,用的時候,a不需要知道b是怎麼實現的,直接用a定義的介面就好了,這樣開發的時候實現和呼叫就可以分離,用模擬測試等軟體就更方便了 EmiyaGm 你是說父類引用指向子類物件吧,你可以先去看一下向上轉型,才好...

java中父類有static修飾的方法其子類能繼承嗎?若子類也有該方法,是覆蓋還是重寫?

山月風成 靜態方法只與類有關,不與例項有關,重寫只適用於例項方法,不適用於靜態方法。非靜態方法,按重寫規則,呼叫相應的類的實現方法,而靜態方法只與類有關。因為靜態方法是程式一執行就已經分配好了記憶體位址,而且該位址是固定的,所有引用到該方法的物件 父類或者子類 所指向的始終是同乙個記憶體位址中的資料...