一個Circle(圓)句柄傳遞給一個本來期待Shape(形狀)句柄的函數。由於圓是一種幾何形狀,所
以doStuff()能正確地進行處理。也就是說,凡是doStuff()能發給一個Shape 的消息,Circle 也能接收。
所以這樣做是安全的,不會造成錯誤。
我們將這種把衍生類型當作它的基本類型處理的過程叫作“Upcasting”(上溯造型)。其中,“cast”(造
型)是指根據一個現成的模型創建;而“Up”(向上)表明繼承的方向是從“上面”來的——即基礎類位於
頂部,而衍生類在下方展開。所以,根據基礎類進行造型就是一個從上面繼承的過程,即“Upcasting”。
在面向對象的程序裏,通常都要用到上溯造型技術。這是避免去調查準確類型的一個好辦法。
上溯造型
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
arthas診斷工具使用記錄
原創
2024-05-10 15:54:03
一招MAX降低10倍,現在它是我的了| 京東零售技術團隊
原創
2024-05-10 12:41:31
深入理解分佈式鎖:原理、應用與挑戰| 京東物流技術團隊
原創
2024-05-10 00:30:02
【開啓報名】同學看過來,Apache DolphinScheduler開源之夏課題任務正式發佈!
原創
2024-05-09 11:55:30
關於Java Chassis 3的契約優先(API First)開發
原創
2024-05-09 11:21:06
「Java開發指南」如何用MyEclipse搭建GWT 2.1和Spring?(一)
原創
2024-05-08 11:36:35
眼看他搭中臺,眼看他又拆了
原創
2024-05-08 11:12:05
Java中止線程的方式
原創
2024-05-07 23:34:59
AI 001 號員工通義靈碼入職阿里雲丨阿里云云原生 4 月產品月報
原創
2024-05-07 21:12:05
頻繁FullGC線上問題排查
原創
2024-05-06 23:55:18
Java集合中的Map
原創
2024-05-06 11:34:11
教你用Perl實現Smgp協議
原創
2024-05-06 10:32:43
lightdb操作出錯:ERROR: current transaction is aborted, commands ignored until end of transaction block
原創
2024-05-05 21:55:25
Java中的4種線程池
原創
2024-05-05 21:31:36