freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java論文簡(jiǎn)易瀏覽器與java思想(doc畢業(yè)設(shè)計(jì)論文)-文庫吧

2025-06-09 18:37 本頁面


【正文】 些行為,他能干什么?。C總€(gè)人都有身高、體重、年齡、血型等等一些屬性。人會(huì)勞動(dòng)、人都會(huì)直立行走、人都會(huì) 用自己的頭腦去創(chuàng)造工具等等這些方法!人之所以能區(qū)別于其它類型的動(dòng)物,是因?yàn)槊總€(gè)人都具有人這個(gè)群體的屬性與方法?!叭祟悺敝皇且粋€(gè)抽象的概念,它僅僅 是一個(gè)概念,它是不存在的實(shí)體!但是所有具備“人類”這個(gè)群體的屬性與方法的對(duì)象都叫人!這個(gè)對(duì)象“人”是實(shí)際存在的實(shí)體!每個(gè)人都是人這個(gè)群體的一個(gè)對(duì)象。老虎為什么不是人?因?yàn)樗痪邆淙诉@個(gè)群體的屬性與方法,老虎不會(huì)直立行走,不會(huì)使用工具等等!所以說老虎不是人!由此可見類描述了一組有相同特性(屬性)和相同行為(方法)的對(duì)象。在程序中,類實(shí)際上就是數(shù)據(jù)類型!例如:整數(shù),小數(shù)等等。整數(shù)也有一組特性和行為。面向過程的語言與面相對(duì)象的語言的區(qū)別就在于,面向過程的語言不允許程序員自己定義數(shù)據(jù)類型,而只能使用程序中內(nèi)置的數(shù)據(jù)類型!而為了模擬真實(shí)世界,為了更好的解決問題,往往我們需要?jiǎng)?chuàng)建解決問題所必需的數(shù)據(jù)類型!面向?qū)ο缶幊虨槲覀兲峁┝私鉀Q方案。我學(xué)習(xí) java 有半年時(shí)間,對(duì)類與對(duì)象的理解僅限于這種水平,例子舉得有點(diǎn)死板,理論說的有點(diǎn)抽象。在我個(gè)人看來,java 這種面向?qū)ο蟮木幊陶Z言,即便你不理解什么是對(duì)象思想,但只要你能調(diào)動(dòng)控件,讓程序做你想要做的事,那么什么是思想、類、對(duì)象,無所謂。 多線程學(xué)習(xí)多線程往往存在下列疑惑:a. 線程的 wait()、notify()方法到底是做什么時(shí)候用的,什么時(shí)候用?b. A 對(duì)象實(shí)現(xiàn) Runnable 接口,()運(yùn)行后所謂的線程對(duì)象是誰?是 A 么?c. 線程的 wait()、notify()方法到底是做什么時(shí)候用的,什么時(shí)候用?d. 為什么線程的 suspend 方法會(huì)被標(biāo)注過時(shí),不推薦再使用,線程還能掛起么?e. 為了同步我們會(huì)對(duì)線程方法聲明 Synchronized 來加鎖在對(duì)象上,那么如果父類的 f()方法加了 Synchronized,子類重寫 f()方法必須也加 Synchronized 么?如果子類的f()方法重寫時(shí)聲明 Synchronized 并調(diào)用 (),那么子類對(duì)象上到底有幾把鎖呢?會(huì)因?yàn)楦?jìng)爭(zhēng)產(chǎn)生死鎖么?首先第一點(diǎn),線程跟對(duì)象完全是兩回事,雖然我們也常說線程對(duì)象。但當(dāng)你用run()和 start()來啟動(dòng)一個(gè)線程之后,線程其實(shí)跟這個(gè)繼承了 Thread 或?qū)崿F(xiàn)了 Runnable的對(duì)象已經(jīng)沒有關(guān)系了,對(duì)象只能算內(nèi)存中可用資源而對(duì)象的方法只能算內(nèi)存正文區(qū)可以執(zhí)行的代碼段而已。既然是資源和代碼段,另外一個(gè)線程當(dāng)然也可以去訪問,main 函數(shù)執(zhí)行就至少會(huì)啟動(dòng)兩個(gè)線程,一個(gè)我們稱之為主線程,還一個(gè)是垃圾收集器的線程,主線程結(jié)束就意味著程序結(jié)束,可垃圾收集器線程很可能正在工作。第二點(diǎn),wait()和 sleep()類似,都是讓線程處于阻塞狀態(tài)暫停一段時(shí)間,不同之處在于 wait 會(huì)釋放當(dāng)前線程占有的所有的鎖,而 sleep 不會(huì)。我們知道獲得鎖的唯一方法是進(jìn)入了 Synchronized 保護(hù)代碼段,所以大家會(huì)發(fā)現(xiàn)只有 Synchronized 方法中才會(huì)出現(xiàn) wait,直接寫會(huì)給警告沒有獲得當(dāng)前對(duì)象的鎖。所以 notify 跟 wait 配合使用,notify 會(huì)重新把鎖還給阻塞的線程重而使其繼續(xù)執(zhí)行,當(dāng)有多個(gè)對(duì)象 wait 了,notify 不能確定喚醒哪一個(gè),必經(jīng)鎖只有一把,所以一般用 notifyAll()來讓它們自己根據(jù)優(yōu)先級(jí)等競(jìng)爭(zhēng)那唯一的一把鎖,競(jìng)爭(zhēng)到的線程執(zhí)行,其他線程只要繼續(xù) wait。從前 Java 允許在一個(gè)線程之外把線程掛起,即調(diào)用 suspend 方法,這樣的操作是極不安全的。根據(jù)面向?qū)ο蟮乃枷朊總€(gè)對(duì)象必須對(duì)自己的行為負(fù)責(zé),而對(duì)自己的權(quán)力進(jìn)行封裝。如果任何外步對(duì)象都能使線程被掛起而阻塞的話,程序往往會(huì)出現(xiàn)混亂導(dǎo)致崩潰,所以這樣的方法自然是被斃掉了啦。最后一個(gè)問題比較有意思,首先回答的是子類重寫 f()方法可以加 Synchronized 也可以不加,如果加了而且還內(nèi)部調(diào)用了 ()的話理論上是應(yīng)該對(duì)同一對(duì)象加兩把鎖的,因?yàn)槊看握{(diào)用 Synchronized 方法都要加一把,調(diào)用子類的 f 首先就加了一把,進(jìn)入方法內(nèi)部調(diào)用父類的 f 又要加一把,加兩把不是互斥的么?那么調(diào)父類 f 加鎖不就必須永遠(yuǎn)等待已經(jīng)加的鎖釋放而造成死鎖么?實(shí)際上是不會(huì)的,這個(gè)機(jī)制叫重進(jìn)入,當(dāng)父類的 f 方法試圖在本對(duì)象上再加一把鎖的時(shí)候,因?yàn)楫?dāng)前線程擁有這個(gè)對(duì)象的鎖,也可以理解為開啟它的鑰匙,所以同一個(gè)線程在同一對(duì)象上還沒釋放之前加第二次鎖是不會(huì)出問題的,這個(gè)鎖其實(shí)根本就沒有加,它有了鑰匙,不管加幾把還是可以進(jìn)入鎖保護(hù)的代碼段,暢通無阻,所以叫重進(jìn)入,我們可以簡(jiǎn)單認(rèn)為第二把鎖沒有加上去。其實(shí),Synchronized 的本質(zhì)是不讓其他線程在同一對(duì)象上再加一把鎖。 關(guān)于 jdk 和 jre大家肯定在安裝 JDK 的時(shí)候會(huì)有選擇是否安裝單獨(dú)的 jre,一般都會(huì)一起安裝,我也建議大家這樣做。因?yàn)檫@樣更能幫助大家弄清楚它們的區(qū)別:Jre 是 java runtime environment,是 java 程序的運(yùn)行環(huán)境。既然是運(yùn)行,當(dāng)然要包含 jvm,也就是大家熟悉的虛擬機(jī)啦,還有所有 java 類庫的 class 文件,都在 lib 目錄下打包成了 jar。大家可以自己驗(yàn)證。至于在 windows 上的虛擬機(jī)是哪個(gè)文件呢?學(xué)過 MFC 的都知道什么是 dll文件吧,那么大家看看 jre/bin/client 里面是不是有一個(gè) 呢?那就是虛擬機(jī)。Jdk 是 java development kit,是 java 的開發(fā)工具包,里面包含了各種類庫和工具。當(dāng)然也包括了另外一個(gè) Jre 呢?而且 jdk/jre/bin 同時(shí)有client 和 server 兩個(gè)文件夾下都包含一個(gè) 。說明是有兩個(gè)虛擬機(jī)的。這一點(diǎn)不知道大家是否注意到了呢?相信大家都知道 jdk 的 bin 下有各種 java 程序需要用到的命令,與 jre 的 bin 目錄最明顯的區(qū)別就是 jdk 下才有 javac,這一點(diǎn)很好理解,因?yàn)?jre 只是一個(gè)運(yùn)行環(huán)境而已。與開發(fā)無關(guān),正因?yàn)槿绱?,具備開發(fā)功能的 jdk 自己的 jre 下才會(huì)同時(shí)有 client 性質(zhì)的 jvm 和 server 性質(zhì)的 jvm,而僅僅作為運(yùn)行環(huán)境的 jre 下只需要client 性質(zhì)的 就夠了。記得在環(huán)境變量 path 中設(shè)置 jdk/bin 路徑麼?這應(yīng)該是大家學(xué)習(xí) Java 的第一步吧,老師會(huì)告訴大家不設(shè)置的話 javac 和 java 是用不了的。確實(shí) jdk/bin 目錄下包含了所有的命令??墒怯袥]有人想過我們用的 java 命令并不是 jdk/bin 目錄下的而是 jre/bin 目錄下的,大家可以把 jdk/bin 目錄下的 剪切到別的地方再運(yùn)行 java 程序,一切運(yùn)轉(zhuǎn)正常!試想一下如果 java 為了提供給大多數(shù)人使用,他們是不需要 jdk 做開發(fā)的,只需要 jre 能讓 java 程序跑起來就可以了,那么每個(gè)客戶還需要手動(dòng)去設(shè)置環(huán)境變量多麻煩啊?所以安裝 jre 的時(shí)候安裝程序自動(dòng)幫你把 jre 的 添加到了系統(tǒng)變量中,驗(yàn)證的方。如果強(qiáng)行能夠把 jdk/b
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1