物件導向程式語言速成

這標題會不會下的太扯,真的可以速成??? 可以的,只要觀念正確,觀念正確就是打通任督二脈,在程式語言的世界裡,只要任督二脈打通,那學甚麼都很快了。

至於甚麼是物件導向程式語言的任務二脈呢?首先要有物件的基本觀念,如下開始囉~~~

物件導向程式語言的三大特性:

  • 封裝:Abstract data type (Encapsulation)。用語法單元(Class),將屬性(Variable)[變數]&方法(Method)[操作],包裝起來。
  • 繼承:Inheritance。當A繼承B (A is a B);A extends B
  • 多型:Dynamic binding (Polymorphism)。用父類別(介面)的參用,指向子類別的實例,可用子類覆寫方法。

甚麼~~~有看沒有懂,好吧~簡單的說~

  • 封裝: Class大括號內只有屬性跟方法,不能亂放其他東西。方法同名怎麼辦,就有Over Load的問題。
  • 繼承: 如果你不想要亂改別人的Code導致問題就繼承他,然後給他覆寫方法(Over Write)
  • 多型:所以一切都是物件就對了,如果工具沒有自動帶出來方法,不要亂寫。

確定這樣已經打通任督二脈了嗎?沒有喔只有一半,另一半請看下方~~~

OOP的世界裡,所有的一切都是物件,但物件有兩種(沒錯跟斯斯有兩種是一樣的):

  • 基本型別:整數(byte、short、int、long)、浮點數(float、double)、字元(char)、邏輯(boolean),只要不是以上這四個就是物件型別,所以你說String是甚麼鬼勒?當然是物件型別的東東囉。
  • 物件(或參用)型別 : 這跟記憶體的配置有關,Global區域:放被下了static修飾子的東東,等同於全域物件,特點是不用new就可以用。另外stack區域放基本型別跟參用,參用連接的地方是heap區域,就是被new過,也就是已經實例化(instance),請參考這篇

好啦~~~以上就是OOP的任督二脈了~~~ 至於其他,全部都是招式組合出來的,例如frameWork本身就是拳譜,你高興的話自己編一套組合拳也可以,還有例如NuGet就是拳譜集散地,組合再組合,之後就是怎麼去用的問題,這就是OOP的世界,因為甚麼都沒有,所以甚麼都不奇怪,自由度很高的。

More From Forest Beat

冬の前田森林公園のフリ

在Linux中列出目錄的空間使用大小

列出檔案大小的指令是ls,但是這個指令列出的目錄大小是固定的,又不能自動加總,所以想要知道/home/下各個使用者用了多少檔案空間,那可以參考以下指令
技術
0
minutes
高層ビルのフリー写真素材

Windows 10中的小算盤不見了?

如題小算盤不見了怎麼辦?其實很簡單,搜尋商店,然後輸入關鍵字,安裝一下就可以~~~
技術
0
minutes
桜のフリ

Top 20 Best Programming Languages To Learn in 2024

IT小菜雞必需掌握一種以上的程式語言,因為程式語言是實現軟體解決方案的工具。
技術
0
minutes
サクラのフリ

快速了解MVC、MVP、MVVM、MVI架構的演進

MVC、MVP、MVVM、MVI 都是軟體架構模式,用來組織和管理程式碼,提高程式碼的可讀性、可維護性和可擴展性。
技術
0
minutes
spot_imgspot_img