1. 程式人生 > >Java 面向物件基本概念

Java 面向物件基本概念

我自己根據我的經驗,自己歸檔總結了下,

所謂面向物件,就是 以基於物件的思維去分析和解決問題,萬物皆物件;

 

面向物件經常和麵向過程放一起討論;

 

這裡舉例,

比如要造一輛自行車,假如以面向過程的思維搞,張三先搞輪子,

李四再搞車架,王五再搞鏈條,趙六再搞腳踏板...最終拼拼湊湊,搞出一輛勉強能騎的車;

但是,假如某個部件要調整下,其他部件要調整的東西太多了,有時候搞不好還得重頭開始搞;

面向過程的缺點就是 擴充套件性 維護性差,但是也是有優點的,就是速度快;

 

假如以面向物件的思維造一輛自行車,說嚴謹點就是去設計一輛自行車;

我們首先要做的是分析一輛自行車所需要的部件,比如輪子,車架,鏈條,腳踏板等等;

然後分析和設計出每個部件的尺寸和用料;

然後是分配按照部件去實現,把每個部件分配給指定的人去做;

最後就是把所有已經完成的部件組裝起來,就是一輛自行車;

這樣做出來的自行車,維護性和擴充套件性都要比面向過程思維做出來的強;

唯一的缺點就是前期投入的時間長一點;

 

Java面向物件三大特性;

 

封裝:我們可以類,類裡有方法,屬性,可以封裝很多功能 僅僅對外暴露一些介面,來實現模組化,組建化,和安全性;

 

繼承:Java中的類可以繼承,類似子女可以繼承父母的東西;來實現可擴充套件;

 

多型:Java中的父類介面可以指向子類實現的引用;這個我們後面通過例項詳細講解;

 

以後三個特性很重要,我們後續章節通過例項詳解;