摘要:寄存器本書(shū)沒(méi)有做很多說(shuō)明,不做解釋棧,這個(gè)區(qū)域在的區(qū)域里面。有一個(gè)這個(gè)指針的上移來(lái)刪除釋放內(nèi)存,下移來(lái)存儲(chǔ)。重點(diǎn)就是這里面常常用來(lái)存儲(chǔ)對(duì)象。常量存儲(chǔ),這個(gè)區(qū)域在的區(qū)域。本章的聯(lián)系很明顯。
引言
從這一章的標(biāo)題我們就可以很容易知道這章主要講的還是作為Java語(yǔ)言最大的一個(gè)特性(面向?qū)ο?/strong>)。這個(gè)跟自己開(kāi)始學(xué)習(xí)Java不同,一開(kāi)始學(xué)習(xí)一門(mén)語(yǔ)言都是直接從語(yǔ)法開(kāi)始,但是這本書(shū)是從Java的思想開(kāi)始,這也是這本書(shū)的魔力所在。所以我們學(xué)習(xí)的更應(yīng)該是這本書(shū)的思想,而不是僅僅停留在語(yǔ)法的正確與否。you manipulate objects with reference
我們?nèi)ゲ僮鱡lements of memory使用引用(reference),這里面的引用就是我們熟悉的=右邊的變量。
相信使用過(guò)C語(yǔ)言這類(lèi)面向過(guò)程的語(yǔ)言都會(huì)有這樣的想法,在我們使用一個(gè)變量的時(shí)候(例如int i = 0),我們會(huì)以為i就是0,但是在Java里面i存儲(chǔ)在一個(gè)區(qū)域,0存在另一個(gè)區(qū)域(Java內(nèi)存區(qū)域待會(huì)會(huì)談到)。理解好這一點(diǎn)就更容易理解類(lèi)似C語(yǔ)言中的值傳參和引用傳參。
本書(shū)使用了一個(gè)很好的例子,將對(duì)象比作電視機(jī),將引用比作遙控器,而等號(hào)就是就是紅外線將他們連接的橋梁。所以我們可以實(shí)現(xiàn)遠(yuǎn)程遙控,所以實(shí)質(zhì)上我們是通過(guò)引用去使用對(duì)象,而不是直接去使用對(duì)象。
為了更好的理解這個(gè)方式,書(shū)中舉了一個(gè)例子
String s
在這個(gè)時(shí)候我們只是定義了一個(gè)引用,但是沒(méi)有定義一個(gè)對(duì)象。
you must create all the object有了引用之后就是我們?cè)趯?duì)對(duì)象操作的時(shí)候我們一定首先要去創(chuàng)建一個(gè)對(duì)象,這個(gè)在initialization and cleanup 章節(jié)會(huì)有更好的說(shuō)明。
這里面最主要的關(guān)鍵字就是new這個(gè)操作符。學(xué)過(guò)Java的這里不想再去多去贅述。
1.Register.寄存器本書(shū)沒(méi)有做很多說(shuō)明,不做解釋
2.The stack.棧,這個(gè)區(qū)域在computer的RAM區(qū)域里面。有一個(gè)stack pointer,這個(gè)指針的上移來(lái)刪除釋放內(nèi)存,下移來(lái)存儲(chǔ)。重點(diǎn)就是在于,這里面常常用來(lái)存放前面所說(shuō)的reference。
3.The heap.堆,這個(gè)區(qū)域還是在于computer的RAM區(qū)域里面。跟棧不同的是我們不需要知道使用內(nèi)存的時(shí)候需要內(nèi)存的大小。重點(diǎn)就是這里面常常用來(lái)存儲(chǔ)對(duì)象。
4.Constant storage.常量存儲(chǔ),這個(gè)區(qū)域在computer的ROM區(qū)域。
5.Non-RAM storage.這里面存儲(chǔ)一些程序沒(méi)有運(yùn)行需要存儲(chǔ)的數(shù)據(jù)。本書(shū)舉了兩個(gè)例子,流,還有一個(gè)就是持久化的存儲(chǔ)就是我們常說(shuō)的存儲(chǔ)在數(shù)據(jù)庫(kù)。
基礎(chǔ)數(shù)據(jù)類(lèi)型,這里不做太多解釋?zhuān)苯影俣染托小?/p>
high-precision numbers
高精度計(jì)算,缺點(diǎn)就是計(jì)算慢。 不是使用操作符去計(jì)算,而是調(diào)用方法計(jì)算 主要有兩個(gè)類(lèi)(類(lèi)似包裝類(lèi)) BigInteger BigDecimalarrays in java
重點(diǎn)就是在于Java的設(shè)計(jì)是為了安全性,所以數(shù)組在c或者c++里面的功能在Java里面沒(méi)有,以后章節(jié)會(huì)有更細(xì)致的說(shuō)明,這里不做多余解釋。
小知識(shí)點(diǎn):如果沒(méi)有引用一個(gè)對(duì)象,基礎(chǔ)類(lèi)型Java會(huì)給一個(gè)0,引用類(lèi)型會(huì)給一個(gè)null。如下圖
Primitive type Default boolean false char ‘u0000’ (null) byte (byte)0 short (short)0 int 0 long 0L float 0.0f double 0.0dyou never need to destroy an object
這個(gè)章節(jié)比較簡(jiǎn)單,主要就是創(chuàng)建對(duì)象和對(duì)象里面的具體內(nèi)容。
building a java program1.名字的創(chuàng)建一定要見(jiàn)名知意,因?yàn)檫@樣的代碼才是可維護(hù)的代碼,才是長(zhǎng)期發(fā)展的代碼。
2.我們經(jīng)常說(shuō),Java是面向?qū)ο蟮恼Z(yǔ)言。但是我們一定需要用到跟對(duì)象無(wú)關(guān)的變量,我們只是單純的使用一些變量和一些方法。所以就有了static關(guān)鍵字的設(shè)計(jì)。
1.首先因?yàn)橐獫M足跟對(duì)象沒(méi)有很大的關(guān)系,換一句話說(shuō)就是,不管我有沒(méi)有創(chuàng)建對(duì)象我都可以使用這些方法,所以使用static修飾的變量和方法,一定是每一個(gè)對(duì)象公用的。 2.要實(shí)現(xiàn)跟對(duì)象無(wú)關(guān),那么我們?cè)诩虞d類(lèi)的時(shí)候就應(yīng)該分配內(nèi)存給這些static修飾的變量和方法。your first java program
編程是一個(gè)手工活,所以一定要多練,所以我們開(kāi)始創(chuàng)建第一個(gè)Java程序。
1.當(dāng)我們創(chuàng)建Java程序的時(shí)候我們要用到很多其他Java已經(jīng)給我們?cè)O(shè)計(jì)好的一些庫(kù),同時(shí)Java.long里面的庫(kù)是默認(rèn)都是在每一個(gè)Java文件,這些是不需要我們進(jìn)行導(dǎo)入的。
本章的聯(lián)系很明顯。首先從Java是面對(duì)對(duì)象的語(yǔ)言出發(fā),我們?nèi)ビ懻搶?duì)象。那么我們要使用對(duì)象,就首先應(yīng)該知道怎么去控制對(duì)象,所以有了reference。那么在我們?nèi)タ刂茖?duì)象,首先應(yīng)該這個(gè)對(duì)象應(yīng)該存在,所以我們一定需要?jiǎng)?chuàng)建對(duì)象,使用new。有了創(chuàng)建我們一定需要去釋放內(nèi)存,Java自己有垃圾處理機(jī)制,這部分不需要我們自己去控制。然后把對(duì)象綜合起來(lái)組成一個(gè)程序,這里面也講到一個(gè)面對(duì)更多的問(wèn)題,所以有了static這個(gè)關(guān)鍵字。最后面是自己寫(xiě)一個(gè)Java程序,里面有些關(guān)鍵信息。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/76614.html
摘要:默認(rèn)排除語(yǔ)法的弊端有個(gè)時(shí)候我們需要時(shí)用排除已經(jīng)壓縮過(guò)的,等。主要用兩個(gè)屬性來(lái)描述文件,它們分別是路徑及內(nèi)容。判斷函數(shù)接受一個(gè)文件對(duì)象,返回一個(gè)值。官方例子僅壓縮符合條件的文件,丹斯所有文件包括不符合條件的都會(huì)被發(fā)送到目錄。 gulp默認(rèn)排除語(yǔ)法的弊端 有個(gè)時(shí)候我們需要時(shí)用gulp排除已經(jīng)壓縮過(guò)的js,css等。如果以壓縮文件是以.min.js之類(lèi)命名規(guī)范的還好,如果不是呢?而且還有其他...
摘要:關(guān)于在計(jì)算機(jī)領(lǐng)域是一個(gè)很普遍的概念,中文通常翻譯為代理,代理一般用于描述某人或某事代表他人行事。常見(jiàn)的概念有代理服務(wù)器反向代理代理模式等。所以至少可以起到兩方面的作用進(jìn)行訪問(wèn)控制和增加功能。理解了上面兩個(gè)問(wèn)題,學(xué)習(xí)的就簡(jiǎn)單多了。 關(guān)于Proxy Proxy在計(jì)算機(jī)領(lǐng)域是一個(gè)很普遍的概念,中文通常翻譯為代理,代理一般用于描述某人或某事代表他人行事。常見(jiàn)的概念有Proxy Server(代...
摘要:標(biāo)簽前端作者更多文章個(gè)人網(wǎng)站 Learning Notes - Understanding the Weird Parts of JavaScript 標(biāo)簽 : 前端 JavaScript [TOC] The learning notes of the MOOC JavaScript: Understanding the Weird Parts on Udemy,including...
How JavaScript works? JavaScript is a single-threaded language that can be non-blocking. showImg(https://segmentfault.com/img/bVbiqTf?w=1678&h=852); JavaScript Engine For the code below: const f()=>{ ...
閱讀 3213·2021-11-22 12:01
閱讀 3833·2021-08-30 09:46
閱讀 834·2019-08-30 13:48
閱讀 3275·2019-08-29 16:43
閱讀 1735·2019-08-29 16:33
閱讀 1916·2019-08-29 13:44
閱讀 1479·2019-08-26 13:45
閱讀 2287·2019-08-26 11:44