物件導向編程思想

來源:互聯網
上載者:User
在面試過程中,總會被問及物件導向理解得如何?感覺自己是瞭解封裝繼承多態什麼的概念的,卻不知道該如何作答。所以想問問大家對於物件導向編程思想的理解, 在編碼中注意到哪些實質了才是真正體現出來物件導向編程的思想(是把所有的東西都寫成類的形式嗎?),當然也可以直接說說自己被問及這個問題的回答,先謝謝各位解惑

回複內容:

在面試過程中,總會被問及物件導向理解得如何?感覺自己是瞭解封裝繼承多態什麼的概念的,卻不知道該如何作答。所以想問問大家對於物件導向編程思想的理解,在編碼中注意到哪些實質了才是真正體現出來物件導向編程的思想(是把所有的東西都寫成類的形式嗎?),當然也可以直接說說自己被問及這個問題的回答,先謝謝各位解惑

物件導向,我的理解是把資料和操作放在一起,並且他們有自己的生命週期。對於抽象和多態,就是對虛編程,即介面或抽象類別。對各種變化進行抽象,對應的變化就是多態。多態有一句經典的話:父類引用指向子類對象。

封裝,繼承/組合,多態。
封裝隱藏實現。
繼承重用,避免繼承過多層級用組合。
多態可以基於介面實現不同子類的不同行為

太新手了這個問題,不知道怎麼回答樓上都是正解,回答上來都應該不會扣分。
我面試別人從來不問這些虛的,很簡單的道理,如果您能正確理解物件導向的概念並能實際運用,那麼你以物件導向的思維編寫程式已經很利害了。但很可惜,對一個新手,他能回答出這些問題嗎?若能回答正確,人家也不會來這裡了。
樓主教你一個面試小技巧,如果面試的問題有一個你不知道該怎麼回答的時候,面試結束前,面試者肯定會問,您有什麼問題要問他的,這個時候你就反過來問他,如果換成他是應聘者的話,他會怎麼回答這個問題。
面試過別人,也看過面試別人的人,總體來說,你得自己會,不會你就說你會的。

物件導向開發 是一種面向未來, 面向可維護, 可擴充的開發, 對象是實現這種思想的方法

設計上:就是封裝,繼承,多態,抽象等設計模式。
效能上:穩定性,重用性,可維護性,擴充性。

推薦你看看《java編程思想》 在這裡也說不明白!

是把所有的東西都寫成類的形式嗎?

基於原型的物件導向沒有類。

物件導向,最主要是訊息傳遞。

你可以嘗試在PHP中不用class和traits,類比一個物件導向系統,應該會有更好的理解。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.