成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

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

hufeng / 631人閱讀

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

前言

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

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

概述

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

五種特性

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

萬(wàn)物皆對(duì)象

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

每個(gè)對(duì)象可以包含其他對(duì)象

對(duì)象具有各自的類(lèi)型

某一特定類(lèi)型的所有對(duì)象可以接受相同的消息

與對(duì)象的交互

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

類(lèi)

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

類(lèi)的特性 隱藏

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

復(fù)用

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

繼承

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

多態(tài)

可以將一個(gè)對(duì)象賦值給他的基類(lèi)對(duì)象。在調(diào)用基類(lèi)對(duì)象的方法時(shí),在運(yùn)行時(shí)實(shí)現(xiàn)類(lèi)型自動(dòng)識(shí)別,實(shí)際調(diào)用的還是原對(duì)象類(lèi)型的方法。從而實(shí)現(xiàn)解耦。

容器

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

對(duì)象的生命周期

Java對(duì)象的生命周期關(guān)乎于對(duì)象的創(chuàng)建及Java的垃圾回收機(jī)制。Java對(duì)象的創(chuàng)建為惰性創(chuàng)建,及使用時(shí)才創(chuàng)建;Java的垃圾回收的規(guī)則是:只有在不得不執(zhí)行時(shí)才執(zhí)行??赡懿煌腏VM實(shí)現(xiàn)上有差異。

異常處理

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

并發(fā)

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

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/75522.html

相關(guān)文章

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

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

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

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

    zeyu 評(píng)論0 收藏0
  • JS程序

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

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

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

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

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

    gitmilk 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<