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

正文內(nèi)容

java學(xué)習(xí)必備總結(jié)-在線瀏覽

2024-10-20 20:29本頁面
  

【正文】 //讀取字節(jié)進(jìn)入chuf字符數(shù)組,返回讀取的字節(jié)數(shù) –int read(char cbuf[], int offset, int length)//讀取字節(jié)進(jìn)入chuf字符數(shù)組,返回讀取的字節(jié)數(shù),offset為數(shù)據(jù)起始位置,length讀入字節(jié)長度 –– int available()。//關(guān)閉流對于讀入流,在建立流的時(shí)候,要求數(shù)據(jù)源必須存在。這時(shí)候。– void write(int b)//寫入一個(gè)字節(jié)進(jìn)輸出流。– void close()//關(guān)閉流 – void flush()//刷新流。如建立一個(gè)寫入流。這時(shí)候,如果文件c:/,而不會(huì)拋出異常。如果不關(guān)閉或刷新流,則可能寫不進(jìn)數(shù)據(jù)源。類的封裝性方法的訪問說明符public protected default private 同類 ok ok ok ok 同包 ok ok ok error 子類 ok ok error error 通用 ok error error error 方法的其他修飾符final 用于該方法不想被子類覆蓋的情況static:static修飾的也不能被覆蓋 只是產(chǎn)生了一個(gè)新的static方法類的繼承性類的繼承性的特點(diǎn) 子類可以繼承的部分:(1)父類中公開級的成員;(2)父類中保護(hù)級的成員;(3)如果子類和父類在同一個(gè)包里,則子類繼承父類中缺省的包訪問級的成員; 子類不能繼承的部分:(1)父類中私有級的成員;(2)如果不在同一個(gè)包里,則不能繼承缺省級的成員;(3)同名的成員函數(shù)或成員變量; 繼承中的構(gòu)造函數(shù)構(gòu)造函數(shù)是比較特殊的一類函數(shù)在繼承時(shí),構(gòu)造函數(shù)不會(huì)被繼承,也不會(huì)被覆蓋父類和子類的構(gòu)造函數(shù)依然是獨(dú)立存在,并且分別發(fā)揮著作用成員的覆蓋如果子類的成員函數(shù)或成員變量與父類同名,則子類的成員函數(shù)或成員變量將隱蕆父類的同名成員。(2)用多態(tài)性的功能來訪問父類對象類方法的覆蓋方法覆蓋時(shí)應(yīng)遵循的原則:覆蓋的方法的存取權(quán)限必須高于被覆蓋的方法,如:父類的方法為protected的,子類的方法為public可以;反之,編譯報(bào)錯(cuò)。從這點(diǎn)看,成員函數(shù)和成員變量是完全不同的。堆是給開發(fā)人員用的上面說的就是,是在JVM啟動(dòng)時(shí)創(chuàng)建;非堆是留給JVM自己用的,用來存放類的信息的。如果web app用了大量的第三方j(luò)ar或者應(yīng)用有太多的class文件而恰好MaxPermSize設(shè)置較小,超出了也會(huì)導(dǎo)致這塊內(nèi)存的占用過多造成溢出,或者tomcat熱部署時(shí)侯不會(huì)清理前面加載的環(huán)境,只會(huì)將context更改為新部署的,非堆存的內(nèi)容就會(huì)越來越多。其默認(rèn)空間(即Xms)是物理內(nèi)存的1/64,最大空間(Xmx)是物理內(nèi)存的1/4。所以服務(wù)器的Xmx和Xms設(shè)置一般應(yīng)該設(shè)置相同避免每次GC后都要調(diào)整虛擬機(jī)堆的大小。注意:如果Xms超過了Xmx值,或者堆最大值和非堆最大值的總和超過了物理內(nèi)存或者操作系統(tǒng)的最大限制都會(huì)引起服務(wù)器啟動(dòng)不起來。因?yàn)檫@個(gè)異常根據(jù)系統(tǒng)運(yùn)行環(huán)境決定,所以無法預(yù)期它何時(shí)出現(xiàn)。為了避免這些問題,程序的設(shè)計(jì)和編寫就應(yīng)避免垃圾對象的內(nèi)存占用和GC的開銷。二、JVM內(nèi)存區(qū)域組成簡單的說java中的堆和棧java把內(nèi)存分兩種:一種是棧內(nèi)存,另一種是堆內(nèi)存1。堆內(nèi)存用來存放由new創(chuàng)建的對象和數(shù)組在函數(shù)(代碼塊)中定義一個(gè)變量時(shí),java就在棧中為這個(gè)變量分配內(nèi)存空間,當(dāng)超過變量的作用域后,java會(huì)自動(dòng)釋放掉為該變量所分配的內(nèi)存空間;在堆中分配的內(nèi)存由java虛擬機(jī)的自動(dòng)垃圾回收器來管理堆的優(yōu)勢是可以動(dòng)態(tài)分配內(nèi)存大小,生存期也不必事先告訴編譯器,因?yàn)樗窃谶\(yùn)行時(shí)動(dòng)態(tài)分配內(nèi)存的。java堆分為三個(gè)區(qū):New、Old和Permanent GC有兩個(gè)線程:新創(chuàng)建的對象被分配到New區(qū),當(dāng)該區(qū)被填滿時(shí)會(huì)被GC輔助線程移到Old區(qū),當(dāng)Old區(qū)也填滿了會(huì)觸發(fā)GC主線程遍歷堆內(nèi)存里的所有對象。提示:Heap Size最大不要超過可用物理內(nèi)存的80%,一般的要將Xms和Xmx選項(xiàng)設(shè)置為相同,而Xmn為1/4的Xmx值。默認(rèn)空余堆內(nèi)存小于40%時(shí),JVM就會(huì)增大堆直到Xmx的最大限制;空余堆內(nèi)存大于70%時(shí),JVM會(huì)減少堆直到Xms的最小限制。提示:假設(shè)物理內(nèi)存無限大的話,JVM內(nèi)存的最大值跟操作系統(tǒng)有很大的關(guān)系。提示:設(shè)置NewSize、MaxNewSize相等,“new”的大小最好不要大于“old”的一半,原因是old區(qū)如果不夠大會(huì)頻繁的觸發(fā)“主” GC,大大降低了性能 JVM使用XX:PermSize設(shè)置非堆內(nèi)存初始值,默認(rèn)是物理內(nèi)存的1/64; 由XX:MaxPermSize設(shè)置最大非堆內(nèi)存的大小,默認(rèn)是物理內(nèi)存的1/4。JProfiler可以通過時(shí)時(shí)的監(jiān)控系統(tǒng)的內(nèi)存使用情況,隨時(shí)監(jiān)視垃圾回收,線程運(yùn)行狀況等手段,從而很好的監(jiān)視JVM運(yùn)行情況及其性能。因?yàn)殚_發(fā)環(huán)境和產(chǎn)品環(huán)境會(huì)有不同,導(dǎo)致該問題發(fā)生有時(shí)會(huì)在產(chǎn)品環(huán)境中發(fā)生,通??梢允褂霉ぞ吒櫹到y(tǒng)的內(nèi)存使用情況,在有些個(gè)別情況下或許某個(gè)時(shí)刻確實(shí)是使用了大量內(nèi)存導(dǎo)致out of memory,這時(shí)應(yīng)繼續(xù)跟蹤看接下來是否會(huì)有下降,如果一直居高不下這肯定就因?yàn)槌绦虻脑驅(qū)е聝?nèi)存泄漏。好的辦法是使用臨時(shí)變量的時(shí)候,讓引用變量在退出活動(dòng)域后,自動(dòng)設(shè)置為null,暗示垃圾收集器來收集該對象,防止發(fā)生內(nèi)存泄露。String str2 = “bbb”。//假如執(zhí)行此次之后str ,str2以后再不被調(diào)用,那它就會(huì)被放在內(nèi)存中等待Java的gc去回收,程序內(nèi)過多的出現(xiàn)這樣的情況就會(huì)報(bào)上面的那個(gè)錯(cuò)誤,建議在使用字符串時(shí)能使用StringBuffer就不要用String,這樣可以省不少開銷;盡量少用靜態(tài)變量,因?yàn)殪o態(tài)變量是全局的,GC不會(huì)回收的;避免集中創(chuàng)建對象尤其是大對象,JVM會(huì)突然需要大量內(nèi)存,這時(shí)必然會(huì)觸發(fā)GC優(yōu)化系統(tǒng)內(nèi)存環(huán)境;顯示的聲明數(shù)組空間,而且申請數(shù)量還極大。m_binArray = new byte[m_totalBytes]。解決辦法只能換一種更合適的辦法,至少是不會(huì)引發(fā)outofMemoryError的方式解決。不要在經(jīng)常調(diào)用的方法中創(chuàng)建對象,尤其是忌諱在循環(huán)中創(chuàng)建對象。設(shè)計(jì)模式之Singleton(單態(tài))定義: Singleton模式主要作用是保證在Java應(yīng)用程序中,一個(gè)類Class只有一個(gè)實(shí)例存在。還有, singleton能夠被狀態(tài)化。另外方面,Singleton也能夠被無狀態(tài)化。使用Singleton的好處還在于可以節(jié)省內(nèi)存,因?yàn)樗拗屏藢?shí)例的個(gè)數(shù),有利于Java垃圾回收(garbage collection)。如何使用?一般Singleton模式通常有幾種形式: public class Singleton {private Singleton(){}//在自己內(nèi)部定義自己一個(gè)實(shí)例,是不是很奇怪?//注意這是private 只供內(nèi)部調(diào)用private static Singleton instance = new Singleton()。上面第二中形式是lazy initialization,也就是說第一次調(diào)用時(shí)初始Singleton,以后就不用再生成了。關(guān)于lazy initialization的Singleton有很多涉及doublechecked locking(DCL)的討論,有興趣者進(jìn)一步研究。使用Singleton注意事項(xiàng):有時(shí)在某些情況下,使用Singleton并不能達(dá)到Singleton的目的,如有多個(gè)Singleton對象同時(shí)被不同的類裝入器裝載;在EJB這樣的分布式系統(tǒng)中使用也要注意這種情況,因?yàn)镋JB是跨服務(wù)器,跨JVM的。public static synchronized Singleton getInstance(){//這個(gè)方法比上面有所改進(jìn),不用每次都進(jìn)行生成對象,只是第一次//使用時(shí)生成實(shí)例,提高了效率!if(instance==null)instance=new Singleton()。} //這里提供了一個(gè)供外部訪問本class的靜態(tài)方法,可以直接訪問public static Singleton getInstance(){return instance。但是在EJB中,Singleton模式已經(jīng)失去作用,所以ServiceLocator才分成兩種,一種面向WEB服務(wù)的,一種是面向EJB服務(wù)的。設(shè)計(jì)模式之Factory(20080807 12:59:17)轉(zhuǎn)載 標(biāo)簽:雜談設(shè)計(jì)模式之Factory定義:?工廠模式是我們最常用的模式了,著名的Jive論壇 ,就大量使用了工廠模式,工廠模式在Java程序系統(tǒng)可以說是隨處可見。我們以類Sample為例,如果我們要?jiǎng)?chuàng)建Sample的實(shí)例對象: Sample sample=new Sample()。首先,我們想到的是,可以使用Sample的構(gòu)造函數(shù),這樣生成實(shí)例就寫成: Sample sample=new Sample(參數(shù))。為什么說代碼很難看,初學(xué)者可能沒有這種感覺,我們分析如下,初始化工作如果是很長一段代碼,說明要做的工作很多,將很多工作裝入一個(gè)方法中,相當(dāng)于將很多雞蛋放在一個(gè)籃子里,是很危險(xiǎn)的,這也是有背于Java面向?qū)ο蟮脑瓌t,面向?qū)ο蟮姆庋b(Encapsulation)和分派(Delegation)告訴我們,盡量將長的代碼分派“切割”成每段,將每段再“封裝”起來(減少段和段之間偶合聯(lián)系性),這樣,就會(huì)將風(fēng)險(xiǎn)分散,以后如果需要修改,只要更改每段,不會(huì)再發(fā)生牽一動(dòng)百的事情。這時(shí)我們就需要Factory工廠模式來生成對象了,不能再用上面簡單new Sample(參數(shù))。Sample hissample=new HisSample()。同步調(diào)用是一種阻塞式調(diào)用,調(diào)用方要等待對方執(zhí)行完畢才返回,它是一種單向調(diào)用;回調(diào)是一種雙向調(diào)用模式,也就是說,被調(diào)用方在接口被調(diào)用時(shí)也會(huì)調(diào)用對方的接口;異步調(diào)用是一種類似消息或事件的機(jī)制,不過它的調(diào)用方向剛好相反,接口的服務(wù)在收到某種訊息或發(fā)生某種事件時(shí),會(huì)主動(dòng)通知客戶方(即調(diào)用客戶方的接口)。同步調(diào)用是三者當(dāng)中最簡單的,而回調(diào)又常常是異步調(diào)用的基礎(chǔ),因此,下面我們著重討論回調(diào)機(jī)制在不同軟件架構(gòu)中的實(shí)現(xiàn)。對于一般的結(jié)構(gòu)化語言,可以通過回調(diào)函數(shù)來實(shí)現(xiàn)回調(diào)。在面向?qū)ο蟮恼Z言中,回調(diào)則是通過接口或抽象類來實(shí)現(xiàn)的,我們把實(shí)現(xiàn)這種接口的類成為回調(diào)類,回調(diào)類的對象成為回調(diào)對象。Windows平臺的消息機(jī)制也可以看作是回調(diào)的一種應(yīng)用,我們通過系統(tǒng)提供的接口注冊消息處理函數(shù)(即回調(diào)函數(shù)),從而實(shí)現(xiàn)接收、處理消息的目的。對于分布式組件代理體系CORBA,異步處理有多種方式,如回調(diào)、事件服務(wù)、通知服務(wù)等。對一些簡單的異步處理過程,我們可以通過回調(diào)機(jī)制來實(shí)現(xiàn)。Java反射機(jī)制主要提供了以下功能: 在運(yùn)行時(shí)判斷任意一個(gè)對象所屬的類;在運(yùn)行時(shí)構(gòu)造任意一個(gè)類的對象;在運(yùn)行時(shí)判斷任意一個(gè)類所具有的成員變量和方法;在運(yùn)行時(shí)調(diào)用任意一個(gè)對象的方法;生成動(dòng)態(tài)代理。3 4 Field field = (fieldName)。7 8 return property。Field field = (fieldName):通過Class得到類聲明的屬性。public Object getStaticProperty(String className, String fieldName)2 throws Exception { 3 Class ownerClass = (className)。6 7 Object property = (ownerClass)。10 }Class ownerClass = (className):首先得到這個(gè)類的Class。Object property = (ownerClass):這里和上面有些不同,因?yàn)樵搶傩允庆o態(tài)的,所以直接從類的Class里取。4 5 Class[] argsClass = new Class[]。i j。9 } 10 11 Method method = (methodName, argsClass)。14 } Class owner_class = ():首先還是必須得到這個(gè)對象的Class。Method method = (methodName, argsClass):通過Method名和參數(shù)的Class數(shù)組得到要執(zhí)行的Method。返回值是Object,也既是該方法的返回值。4 5 Class[] argsClass = new Class[]。i j。9 } 10 11 Method method = (methodName, argsClass)。14 }基本的原理和實(shí)例3相同,不同點(diǎn)是最后一行,invoke的一個(gè)參數(shù)是null,因?yàn)檫@是靜態(tài)方法,不需要借助實(shí)例運(yùn)行。4 5 Class[] argsClass = new Class[]。i j。9 } 10 11 Constructor cons = (argsClass)。14 15 }這里說的方法是執(zhí)行帶參數(shù)的構(gòu)造函數(shù)來新建實(shí)例的方法。Class newoneClass = (className):第一步,得到要構(gòu)造的實(shí)例的Class。Constructor cons = (argsClass):得到構(gòu)造子。 public boolean isInstance(Object obj, Class cls){ 2 return (obj)。?/P一、數(shù)據(jù)庫 ?/P 數(shù)據(jù)庫(database)是一個(gè)數(shù)據(jù)集合.?/P 無論數(shù)據(jù)庫是采用關(guān)系結(jié)構(gòu)還是面向?qū)ο蠼Y(jié)構(gòu), oracle數(shù)據(jù)庫都將 ?/P , 數(shù)據(jù)庫結(jié)構(gòu)數(shù)據(jù)對文件的邏輯 ?/P 映射, 使不同的數(shù)據(jù)分開存儲, 這些邏輯劃分稱為表空間.?/P 表空間和文件介紹: ?/P 1: 表空間 ?/P 表空間(tablespace)是數(shù)據(jù)庫的邏輯劃分, 每個(gè)數(shù)據(jù)庫至少有一個(gè)表空間,叫做系統(tǒng)表空間(system 表空間).一個(gè)表空間只能屬于一個(gè)數(shù)據(jù)庫。查詢表空間狀態(tài): SQL select tablespace_name, status from dba_tablespaces。?/
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1