成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

《Java編程思想》讀后總結(jié)(一)

hufeng / 685人閱讀

摘要:前言編程思想這本書,陸陸續(xù)續(xù)讀了年,終于基本都瀏覽了一遍。每個對象對外暴露接口,程序通過對象暴露的接口向?qū)ο蟀l(fā)送消息,獲取該對象的服務(wù)能力。異常處理異常處理,為編寫程序階段提供了一種預(yù)見性的防止程序崩潰的出路。

前言

《Java編程思想》這本書,陸陸續(xù)續(xù)讀了1年,終于基本都瀏覽了一遍。通過這本書,試圖理解作者的想法,才真的體會到Java思想。感謝本書的作者,不僅講述了java的語法,更重要的是向讀者剖析了Java的設(shè)計思想,以及他自己對Java的理解。為了加深對java知識點及思想的理解,也為了讓這些思想成為自己編程過程中的習(xí)慣,通過整理筆記的方式來總結(jié)梳理本書重點內(nèi)容,也希望通過我的整理幫助到其他對Java有興趣的同學(xué)。

在讀本書之前,我是一個python程序員,python也具備OOP體系,但相較于Java,OOP體系確實不夠完整。當(dāng)然,不同的語言,適用的場景不同,Python也有許多Java不具備的優(yōu)雅特性。

概述

每種編程語言都是希望通過計算機編程來解決實際問題。程序通過對象來描述問題,通過實際事物的邏輯映射來表達(dá)。Java是面向?qū)ο蟮某绦蛟O(shè)計語言(OOP)的一種。

五種特性

面向?qū)ο蟮奈宸N特性:

萬物皆對象

程序由一系列對象構(gòu)成

每個對象可以包含其他對象

對象具有各自的類型

某一特定類型的所有對象可以接受相同的消息

與對象的交互

每個對象存在的意義在于提供服務(wù)。每個對象對外暴露接口,程序通過對象暴露的接口向?qū)ο蟀l(fā)送消息,獲取該對象的服務(wù)能力。

類是存儲成員與方法的結(jié)構(gòu),一種類即是一種數(shù)據(jù)類型。

類的特性 隱藏

對于類的創(chuàng)建者來說,通過組織類內(nèi)部的結(jié)構(gòu)實現(xiàn)某種服務(wù)。使用者通過使用該類的服務(wù)能力,創(chuàng)建屬于該類的對象,組織各種對象,來解決問題。 對于創(chuàng)建者來說,只希望向用戶暴露必要的接口,而隱藏實現(xiàn)細(xì)節(jié)。對使用者來說,也不會因為誤修改了不該修改的接口邏輯而導(dǎo)致程序的bug。Java通過三個關(guān)鍵字對類劃定了設(shè)定邊界:public、private、protected。

復(fù)用

通過將一種類的對象作為另一種類的成員,實現(xiàn)代碼的復(fù)用。即要實現(xiàn)一種新的類,但該類的部分功能已被另一個已存在的類實現(xiàn)。新類通過組合的方式,將已存在的類的功能包含進(jìn)來,重復(fù)利用,減少代碼冗余。

繼承

繼承是另一種復(fù)用代碼的能力。繼承實現(xiàn)了類關(guān)聯(lián)關(guān)系的樹狀結(jié)構(gòu),根類,即基類(也成超類、父類),其他繼承自基類的稱為導(dǎo)出類。導(dǎo)出類具有基類的相同的行為和特性,但可能還比基類多一些特性。通過這樣的繼承,實現(xiàn)了代碼復(fù)用。Java中的類的繼承能力為單根繼承,即一個類只能繼承自一個類,而不能同時繼承自多個類。

多態(tài)

可以將一個對象賦值給他的基類對象。在調(diào)用基類對象的方法時,在運行時實現(xiàn)類型自動識別,實際調(diào)用的還是原對象類型的方法。從而實現(xiàn)解耦。

容器

容器是一種能夠持有其他對象的對象。通過泛型,可以使容器動態(tài)持有任意對象。

對象的生命周期

Java對象的生命周期關(guān)乎于對象的創(chuàng)建及Java的垃圾回收機制。Java對象的創(chuàng)建為惰性創(chuàng)建,及使用時才創(chuàng)建;Java的垃圾回收的規(guī)則是:只有在不得不執(zhí)行時才執(zhí)行。可能不同的JVM實現(xiàn)上有差異。

異常處理

異常處理,為編寫程序階段提供了一種預(yù)見性的防止程序崩潰的出路。通過預(yù)先定義好異常處理過程,提高程序的容錯性。

并發(fā)

一般希望通過并發(fā)來提高程序的運行速度,或是對CPU的利用最大化。對程序響應(yīng)能力有較高要求的場景,或?qū)τ贗O操作頻繁的程序考慮并發(fā)。當(dāng)引入并發(fā)后,可能就要以不同的思維方式來考慮代碼的設(shè)計,很重要的原因是為了解決共享資源沖突的問題。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/75522.html

相關(guān)文章

  • Java編程思想讀后總結(jié)(三)

    摘要:編寫一個程序編譯器一些規(guī)則程序文件的后綴為每個文件名最多包含一個類,也可以沒有類當(dāng)指定某個類為時,該類的類名必須與文件名相同關(guān)于寫代碼時,需要用到其他類庫,最常用的就是自帶的類庫。 編寫一個Java程序 編譯器:ideal 一些規(guī)則 java程序文件的后綴為.java 每個.java文件名最多包含一個public類,也可以沒有public類 當(dāng)指定某個類為public時,該類的類名必須...

    peixn 評論0 收藏0
  • Java編程思想讀后總結(jié)(四)

    摘要:初始化與清理構(gòu)造器通過來創(chuàng)建類的對象。如果一個類沒有顯式提供構(gòu)造器,則編譯器會為該類自動生成一個默認(rèn)構(gòu)造器。構(gòu)造器采用與類名相同的名稱。 初始化與清理 構(gòu)造器 通過new來創(chuàng)建類的對象。每當(dāng)調(diào)用new來創(chuàng)建對象時,java會調(diào)用構(gòu)造器對象進(jìn)行初始化。初始化完畢,意味著這個對象已經(jīng)準(zhǔn)備好對外提供服務(wù)了。 如果一個類沒有顯式提供構(gòu)造器,則編譯器會為該類自動生成一個默認(rèn)構(gòu)造器。 構(gòu)造器采用與...

    zeyu 評論0 收藏0
  • JS程序

    摘要:設(shè)計模式是以面向?qū)ο缶幊虨榛A(chǔ)的,的面向?qū)ο缶幊毯蛡鹘y(tǒng)的的面向?qū)ο缶幊逃行┎顒e,這讓我一開始接觸的時候感到十分痛苦,但是這只能靠自己慢慢積累慢慢思考。想繼續(xù)了解設(shè)計模式必須要先搞懂面向?qū)ο缶幊蹋駝t只會讓你自己更痛苦。 JavaScript 中的構(gòu)造函數(shù) 學(xué)習(xí)總結(jié)。知識只有分享才有存在的意義。 是時候替換你的 for 循環(huán)大法了~ 《小分享》JavaScript中數(shù)組的那些迭代方法~ ...

    melody_lql 評論0 收藏0
  • 代碼之髓讀后感——如何高效的學(xué)習(xí)語言

    摘要:代碼之髓讀后感如何高效的學(xué)習(xí)語言技術(shù)讀后感王垠如何掌握程序語言代碼之髓這本書里提出了三種學(xué)習(xí)語言的方法如何高效的學(xué)習(xí)語言在比較中學(xué)習(xí)在歷史中學(xué)習(xí)在實踐中學(xué)習(xí)在比較中學(xué)習(xí)通過比較多種語言,總結(jié)出某種語言的獨有特點,以及多種語言的共有特點。 title: 代碼之髓讀后感——如何高效的學(xué)習(xí)語言date: 2017-07-08 17:17:00categories: 技術(shù)tags: 讀后感 ...

    ivyzhang 評論0 收藏0
  • 《php之道》讀后總結(jié) php學(xué)習(xí)綱要

    摘要:日期和時間使用類完成讀取設(shè)置比較和計算日期與時間。單元測試單元測試是從編寫開始,貫穿于整個開發(fā)周期的一種用于保證函數(shù)類和方法的行為與預(yù)期一致的編程方法。是應(yīng)用的單元測試框架的業(yè)界標(biāo)準(zhǔn),其他幾個可選框架是行為驅(qū)動開發(fā)行為驅(qū)動開發(fā)有兩種方式和。 《php之道》閱讀地址:http://wulijun.github.io/php-the-right-way/#code_style_guide ...

    gitmilk 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<