|  | ||
| Amateur Member  加入日期: Feb 2015 
					文章: 40
					
				 | 
				
				關於多型(polymorphism)、overloading
		
	 我想請教一下大家,overloading算多型嗎? 我查了很多資料,有的說overloading屬於多型,又有的說不是.... 有的網站寫說大部分的人會把overloading也當成多型的一種,但這觀念是錯誤的 不過學校老師教說overloading、override(沒爭議)都是屬於多型的一種。 想請教一下各位的看法,實際又是如何呢? | |||||||
|  2015-03-05, 11:44 PM
			
			
	#1 |   | 
| Major Member  加入日期: Feb 2003 您的住址: 新北市 
					文章: 222
					
				 | 我覺得有時候這種大家吵半天沒個準的東西自己也不用煩惱,有自己的看法就好,但要記得這是情也不自己說的就是"對"的 而且在這個地方爭對錯似乎沒什麼意義耗費心神... 知道怎麼去利用這個機制比較重要 個人淺見 
				__________________ 就算整個世界被大雨顛倒,我會給妳懷抱,受不了,看見妳背影來到,寫下我度秒如年難挨的離騷∼ 我的Blog:http://fatjohn0927.wordpress.com/ | ||
|  2015-03-06, 01:32 AM
			
			
	#2 |   | 
| Regular Member   加入日期: Jan 2013 
					文章: 88
					
				 | 我覺得 function overloading  就只是方便你用同樣的名稱來寫出多個不同參數的 function polymorphism 的話 可以參考這一篇 搞笑談軟工: 什麼是物件導向(3):Polymorphism http://teddy-chen-tw.blogspot.tw/20...lymorphism.html 一個訊息(message or event or stimulus)的意義是由接收者(接收到這個訊息的物件)來解釋,而不是由訊息發出者(sender)來解釋。所以,在runtime時只要接受者換成不同的物件或是instance,系統的行為就會改變。具有這樣的特性就稱之為polymorphism。還是不懂,對,很正常。不過在看一個活生生的例子鄉民們就應該懂了。 *** Teddy(sender,等一下準備送出信息的物件)走在路上看到前方有兩位名人,分別是「林志玲」與「阿美姐」(等一下準備接收訊息的兩個物件),於是大喊一聲「美女請留步(訊息)」。理論上Teddy期待只有「林志玲」會「回頭」(訊息接收者的行為),沒想到「阿美姐」也回頭了...XD。所以說,一個訊息的解釋是由接收者來決定的,而不是送出者。如果一個系統具有這樣的特性,那麼我們就說這個系統具備多型的行為。 | 
|  2015-03-06, 09:31 AM
			
			
	#3 |   | 
| Master Member     加入日期: Mar 2012 
					文章: 2,353
					
				 | |
|  2015-03-06, 09:34 AM
			
			
	#4 |   | 
| *停權中*  加入日期: Mar 2014 
					文章: 49
					
				 | 其實 interface 我個人覺得也是可以實作成多型 , Ex 如下 (個人淺見 高手們 笑笑就好) interface IWoman{ public bool isBeauty(); { class 林志玲 implements IWoman { public bool isbeauty() { return true; } } class 如花 implements IWoman { public bool isbeauty() { return false; } } 此文章於 2015-03-06 09:43 AM 被 T磨人v2 編輯. | 
|  2015-03-06, 09:41 AM
			
			
	#5 |   | 
| Advance Member   加入日期: Jun 2010 
					文章: 333
					
				 | 管他是不是多型 知道怎麼用, compiler 過,執行沒問題 又有效率 管他叫什麼 | 
|  2015-03-06, 09:58 AM
			
			
	#6 |   | 
| Amateur Member  加入日期: Mar 2010 
					文章: 42
					
				 | 多型是概念,overloading是一種實作的方式。 | 
|  2015-03-06, 10:38 AM
			
			
	#7 |   | 
| Major Member  加入日期: Jan 2002 
					文章: 187
					
				 | 引用: 
 同意+1 有支援overloading, override的語言,通常也會有支援Polymorphism,知道什麼時候用,用的有效率就好. | |
|  2015-03-06, 11:04 AM
			
			
	#8 |   |