第一篇:JAVA物業管理系統
本系統的意義
新的世界已經到來,在電子計算機技術發展日新月異的今天,計算機軟件的應用早已深入到了各行各業,并發揮著它們巨大的潛力。隨著企業,房戶等一系列的改革,一切都在潮向社會化發展,管理體制也由過去的全承包向現在的一體化,專門化發展。為了人員的安全,社會的穩定,國家的持續發展,物業管理在起著舉足輕重的作用。本物業管理系統提供對人員,住房,房產和收費信息的管理。為了有效管理和社會人員的方便,系統為管理員用戶和普通用戶提供了不同的功能。本系統具有一定的實用性。
本物業管理系統是在服務器上先安裝Windows NT操作系統,并在NT系統下安裝數據庫系統SQL Server 7.0和建立人員、住房、房產、收費四個數據庫。然后在NT操作系統下用Java編寫不同的系統用戶界面,后用JDBC/ODBC橋實現服務器上數據庫和前端界面的連[文章來源: 計算機畢業論文網]接。連接成功后,將Java編寫的用戶界面移植到客戶端的Linux操作系統下,并用這個界面試圖實現與服務器上NT系統下的數據庫SQL連接。以達到在不同的操作系統下可以互相調用的目的,實現Java的重要特性:可移植性。
二.設計思想
2.1 當前數據庫實現中存在的問題:
2.1.1 目前存在的問題----數據庫的實現面向單一應用
在目前開發的一部分數據庫應用軟件中,程序員的主要任務是編寫高質量的程序,對所使用的軟件及數據庫很少關注,這就面臨數據庫單一應用的問題。
2.1.2 數據庫設計中存在數據完整性問題
數據庫應用所提供的功能一般都比較安全,往往自成一個系統。但是當數據庫不同后系統數據就會產生問題。
2.2 工具軟件的介紹
2.2.1 Java語言的介紹
Java是一個由SUN公司開發成功的新一代編程語言,它的最大特點就是:使用它可在各式各樣不同種機器,不同種操作平臺的網絡環境中開發軟件,即SUN公司所宣揚的一次編寫,到處運行。
在SUN公司的Java白皮書中對Java有如下的定義:
Java: A simple,Object-oriented, distributed, robust, secure, architecture-neutral, portable, High-performance, multi-threaded, and dynamic language.(Java: 一種簡單的,面向對象的,分布式的,健壯的,安全的,結構中立的,可移植的,高效性的,多線程和動態的語言)。
這個定義充分地表現了Java語言的特點。
1.簡單性
Java是一種簡單的語言。Java取消了其它的許多編程語言中十分繁瑣的和難以理解的內容,例如C/C++中的指針,C++中類的多重繼承等。Java語言在外觀上讓大多數程序員都感到很熟悉,這樣程序員不需要經過長時間訓練就能夠學會使用這種新型的程序開發工具。Java要求的基本解釋器約為40KB ,若加上基本的程序庫,約為215KB。由于Java程序很小,因此在小型機上Java程序也能夠很好地執行。
2.面向對象
Java是一種面向對象的語言。這里的對象是指應用程序的數據及其操作方法。Java程序的設計思想不同于C語言基于過程的程序設計思想。設計面向對象的程序需要將編程重點放在資料和接口上。
3.分布式特性
Java是一種分布式的語言。Java有一個很周全的程序庫,且很容易與HTTP和TCP/IP通信協議相配合。Java應用程序能在網絡上開啟并連結使用對象,就如同透過URL鏈接使用一個本地文件系統。利用Java來開發分布式的網絡程序是Java的一個重要應用。
4.健壯性
用Java編寫的程序在多種情況下都能穩定地執行。Java與C/C++最大的不同點是在于Java有一個專門的指針模型,它的作用是排除內存中的數據被覆蓋和毀損的可能性。
5.安全性
Java是一種安全的網絡編程語言。Java是被設計用于網絡及分布的環境中的,所以Java程序的安全性自然是非常重要的。Java擁有數個階層的互鎖保護措施,能有效地防止病毒的侵入和破壞行為的發生。
6.結構中立性
眾所周知,網絡是由很多不同機型的計算機組合而成的。這些計算機的CPU和操作系統體系結構均有所不同。因此,要使一個應用程序可以在每一種計算機上都能夠執行是很難的。
所幸的是,Java的編譯器能夠產生一種結構中立的目標文件格式,這使得編譯碼能夠在多數的處理器中執行。
7.可移植性
Java的源代碼和C/C++的源代碼一樣具有可移植性,而且Java的可移植性在相比之下還要更強一些。只要有對應系統的解釋器,Java程序就可以在所有的系統上執行。Java的原始資料形式的大小是被指定的,例如Java之所以一直用float來表示一個32位字節的IEEE754的浮點運算數字,正是因為絕大多數的CPU都有此共同特征。Java自帶的程序庫定義了一些可移植的程序接口,這使Java語言具備了很好的可移植性。
8.解釋型語言
Java的源程序首先由編譯器編譯成字節碼,之后再由解釋器解釋執行。Java解釋器能直接在任何機器上執行Java字節碼(Byte Codes),因此在進行程序鏈接時節省了時間,這對于縮短程[文章來源: 計算機畢業論文網]序的開發過程有極大的幫助。
9.高效性
Java字節碼能迅速地轉換成機器碼(Machine Code)。Java的這種效能幾乎與C/C++沒有分別。用Java編制的Java小應用程序可以取代部分CGI腳本(CGI Scripts)的功能,但是考到效率方面的問題,在大多數的情況下很多客戶端的基本操作還是由腳本語言來完成的。涉及到復雜算法的計算以及一些特別的效果,就可以由Applet或者ActiveX來完成。
10.多線程性
Java語言具有多個線程,這對于交互回應能力和即時行為是有幫助的。
11.動態性
聯系購買
(0)1594335582
5528311109 345608595
345608595@qq.com
幫助中心
付款方式 購買流程 常見問題
定做論文 常見問題 友情提醒
我們的優勢
權威機構 我們具備深厚行業背景。
技術領先 最新軟件編程技術和權威合作伙伴。
良好聲譽 廣泛知名度、滿意度,眾多新老客戶。
隨機推薦
121J2ME手機射擊游戲_JAVA()
原文出處:
第二篇:上下一盤棋系統共爭創(簡報2)
上下一盤棋系統共爭創
曲靖市財政系統堅持四個統一開展三級聯創
曲靖市財政系統在創先爭優活動中按照機關帶基層、全系統一盤棋的原則,以推進財政四化管理、建設五型機關為主線,堅持“四個統一”,深入開展市縣鄉財政部門三級聯創活動,做到工作上下一盤棋,創先爭優同推進。
統一組織領導。及時成立了以局黨組書記、局長為組長,班子成員和各縣(市)區財政局黨組織主要負責人為成員的全市財政系統開展三級聯創活動領導小組,按照“五個一”的要求開展市縣鄉三級財政部門結對共創,實行市局領導掛鉤聯系到縣(市)區財政局,縣(市)區財政局領導和市局機關各科室負責人掛鉤聯系到鄉(鎮)街道財政所。局黨組書記是第一責任人,副書記是直接責任人;各掛鉤領導是聯系點的第一責任人;各縣(市)區財政局一把手、黨委(總支、支部)書記是具體責任人。同時,組建了工作機構,制定了工作流程和工作制度,細化了實施方案,并于7月16日召開各縣(市)區財政局黨組織主要負責人會議專門動員部署三級聯創工作。
統一主題活動。全市財政系統統一以開展“五比五創五建”、實施“五個”工程為主題實踐活動內容。一是比學習,創一流素質,建學習型機關。以開展“五個一”讀書活動為重點,結合主題演講、主題征文、專題培訓等活動,實施好素質工程。二是比團-1-
結,創一流隊伍,建和諧型機關。以開展“五查五看”為重點,結合開展紅色教育、忠誠教育、重溫入黨誓詞、建設財政文化等活動,強化支部活動和黨員教育工作,加大黨員干部管理和黨員發展力度,實施好堡壘工程。三是比服務,創一流作風,建服務型機關。重點開展優質服務崗位、優質服務科室評比活動,落實“八個不讓”,設立黨員先鋒崗、黨員示范窗口,實行亮證掛牌服務,實施好示范工程。四是比效能,創一流業績,建效能型機關。積極推行效能政府四項制度,開展崗位業務練兵,比工作創新能力,比工作實際成績,比工作“零失誤”,比綜合協調的方法和效果;清理并修訂、完善機關各項管理制度,暢通“綠色通道”,實施好基礎工程。五是比奉獻,創一流形象,建廉潔型機關。開展筑牢一條拒腐防變防線、抓好一個責任書的落實、開展好一項警示教育的“三個一”活動,確保資金、干部兩安全;大力推行一線工作法,落實掛鉤聯系制度,實施好幫扶工程。
統一方法步驟。重點圍繞迎接建黨90周年、向黨的十八大獻禮兩個重大活動展開,分四個階段進行。第一階段,廣泛發動,安排部署。動員全體干部職工參與到創先爭優活動中來,確保認識到位、組織到位、措施到位,推動活動迅速展開。第二階段,全面爭創,扎實推進。時間從今年6月到明年6月底。按照“五比五創五建”全面開展創先爭優活動,掀起創先爭優熱潮。明年“七一”,局黨組將對先進黨支部、優秀共產黨員和優秀黨務工作者進行表彰。第三階段,對標定位,晉檔升級。時間從2011年
7月到2012年6月底。對照創先爭優標準,查找差距,明確方向,制定跟進、趕超的具體措施,加強黨組織建設,使“五個好”黨組織和“五帶頭”黨員比例大幅提升,全面提高工作水平。第四階段,系統總結,完善機制。時間從2012年7月到黨的十八大召開。圍繞向黨的十八大獻禮,集中展示活動成果、搞好活動總結、進行考核評議,建立起開展創先爭優活動的長效機制。
統一爭創目標。全系統統一按照推進財政“四化”(精細化、科學化、績效化、規范化)、建設“五型”機關、服務人民群眾、加強基層組織的總體要求,把重點放在提高素質、推進工作、爭創佳績、樹立形象上,把開展創先爭優活動與開展講黨性、重品行、作表率活動有機結合起來,與開展“個人形象一面旗、工作熱情一團火、謀事布局一盤棋”的“三個一”主題實踐活動有機結合起來,與貫徹省、市委一系列決策部署,全面落實今年各項工作任務結合起來,把創先爭優活動融入日常工作中,統籌兼顧,相互促進,做到活動有新典型、實踐有新亮點、工作有新舉措、成效有新體現,努力實現財政系統80%的黨組織達到先進基層黨組織的標準,市財政局爭創省級先進、縣(市)區財政局爭創市級先進,全面完成各級黨委政府交給的工作任務三大目標。
第三篇:運營商多系統共天饋覆蓋優化探討
運營商多系統共天饋覆蓋優化探討
【摘 要】 本文主要是針對在多系統共天饋出現的問題進行分析、定位和解決方法,為多系統共天饋問題處理提供一個思路。
【關鍵詞】 天饋系統 GSM UMTS LTE 優化概述
隨著U900、FDD-LET、TDD-LET等多網建設,共天饋解決方案已經成為一種趨勢,它可以利用已有網絡資源,解決新入網絡部署站址獲取難、天面資源受限等問題,幫助運營商獲取一張 “ 快速部署,低成本,高性能”的網絡,快速提升運營商綜合競爭力。但同時也帶來一些問題,比如方位角一致,對組網有一定限制;安裝要求比較高,需要保持之前系統下傾角前后一致。針對近期LTE建設和U900建設,局部部熱點地區出現了覆蓋變差、上網速度明顯變慢等問題,開展玉林多系統共天饋系統排查,提升天饋優化工作效率,進一步改善網絡質量。現網多系統共天饋情況
玉林多系統共天饋主要體現在FDD-LTE和WCDMA共天饋、U900和G900共天饋和G900和WCDMA共天饋。其中主要問題體現在FDD-LTE和WCDMA共天饋。LTE共系統圖如下,優點是不需要增加天面空間;系統間鏈路隔離好;可以針對不同系統進行單獨的傾角優化和調整。缺點是需要將現有系統天線更換為多系統天線;多系統天線體積大,成本高;方位角一致,對組網有一定限制。天饋系統中常見的問題和分析
1)弱覆蓋。弱覆?w指的是覆蓋區域導頻信號的RSCP小于-90dBm,同時結合MR弱覆蓋統計來進行定位。弱覆蓋場景比如凹地、山坡背面、電梯井、隧道、地下車庫或地下室、高大建筑物內部、密集街道等。如果導頻信號低于全覆蓋業務(例如:VP、PS64K)的最低要求,或者剛能滿足要求,但由于同頻干擾的增加,導頻信道Ec/Io不能滿足全覆蓋業務的最低要求,將導致全覆蓋業務接入困難、掉話等問題;如果導頻信號RSCP低于手機的最低接入門限的覆蓋區域,手機通常無法駐留小區,無法發起位置更新和位置登記而出現“掉網”的情況。
2)一般越區覆蓋。越區覆蓋一般是指某些基站的覆蓋區域超過了規劃的范圍,在其他基站的覆蓋區域內形成不連續的主導區域,一般通過路測和MR越區分析進行定位。比如,某些大大超過周圍建筑物平均高度的站點,發射信號沿丘陵地形或道路可以傳播很遠,在其他基站的覆蓋區域內形成了主導覆蓋,產生的“島” 的現象。因此,當呼叫接入到遠離某基站而仍由該基站服務的“島”形區域上,并且在小區切換參數設置時,“島”周圍的小區沒有設置為該小區的鄰近小區,則一旦當移動臺離開該“島”時,就會立即發生掉話。而且即便是配置了鄰區,由于“島”的區域過小,也會容易造成切換不及時而掉話。還有就是象港灣的兩邊區域,如果不對海邊基站規劃作特別的設計,就會因港灣兩邊距離很近而容易造成這兩部分區域的互相越區覆蓋,形成干擾。
3)上下行不平衡。上下行不平衡一般指目標覆蓋區域內,上下行對稱業務出現下行覆蓋良好而上行覆蓋受限(表現為UE的發射功率達到最大仍不能滿足上行BLER要求)。或下行覆蓋受限(表現為下行專用信道碼發射功率達到最大仍不能滿足下行BLER要求)的情況。上下行不平衡的覆蓋問題比較容易導致掉話,常見的原因是上行覆蓋受限。
4)主分集接反。主分集接反主要包括主集-主集饋線接反、分集-分集饋線接反、主集-分集饋線接反和主分集全部接反4種情況。
1、分集-分集饋線接反。A天線的分集饋線接到了B天線上,而相應的B天線的分集饋線接到了A天線上;WCDMA系統中分集-分集接反的主要現象為A、B天線下行覆蓋正常,但兩天線上行不具備分集增益,干擾增大一倍,RTWP均較高;GSM系統中則表現為話統中A、B小區均出現上行鏈路不平衡現象;
2、主集-主集饋線接反。A天線的主集饋線接到了B天線上,而相應的B天線的主集饋線接到了A天線上;WCDMA系統中系統中主集-主集接反的主要現象為A、B天線上、下行均異常,下行A天線的覆蓋方向上B天線的信號最強,同時B覆蓋方向上A天線的信號最強;上行A、B均不具備分集增益,干擾增大一倍,RTWP均較高;GSM現象為A、B天線上、下行均異常,下行A天線的覆蓋方向上B天線的信號最強,同時B覆蓋方向上A天線的信號最強;上行在話統中A、B小區均出現上行鏈路不平衡現象;
3、主集-分集接反。A天線的主集饋線接到了B天線上,而相應的B天線的分集饋線接到了A天線上;主集-主集接反的主要表現為路測中發現在天線A的方向上同時出現天線A和天線B的信號,且信號強度相當;同時天線B的覆蓋方向上基本測不到天線B的信號或者能夠測到但信號很弱;此時可懷疑天線A和天線B的主分集接反,天線A的分集饋線被接到了B天線上,天線B的主集饋線被接到了A天線上。
4、主分集全部接反。天線A的主集和分集饋線全部接到了天線B上,相應的天線B的主集和分集天線被接到了天線A上。
5)高站越區。針對這類問題建議可采用以下措施處理:
日常無線網絡優化工作中所發現的個別小區因站點過高(天線掛高>=60M)或美化罩尺寸造成機械傾角調整受限,產生的越區覆蓋;機械角設置過大,導致信號產生畸變,影響用戶通話感受等實際網絡問題。如何有效地控制高站小區的越區信號,降低干擾,提升網絡質量成為了我們無線覆蓋優化的棘手問題之一
6)RTWP異常高。上行異常干擾可以根據RTWP來觀察,當沒有3G用戶時,如果不用塔放,在沒有干擾情況下,NodeB接收到的RTWP一般為-105dBm左右。如果RTWP抬升比較大,變化比較快,比如高于10dB,就是異常干擾引起的,由于上行異常干擾影響到整個小區,影響很大,需要解決這些干擾問題。
總結
通過對2/3G、3/4G共天饋排查,最終完成了多個小區的共天饋系統專題排查及整改,驗證多系統共天饋問題排查和定位方法的有效性,同時有效的解決現網中存在的問題。
【參考文獻】
[1] GSM原理及其網絡優化 韓斌杰.[2] WCDMA系統原理與無線網絡優化 竇中兆.
第四篇:java學習
.如何學習Java?
3.1 Java學習路線
3.1.1 基礎語法及Java原理基礎語法和Java原理是地基,地基不牢靠,猶如沙地上建摩天大廈,是相當危險的。學習Java也是如此,必須要有扎實的基礎,你才能在J2EE、J2ME領域游刃有余。參加SCJP(SUN公司認證的Java程序員)考試不失為一個好方法,原因之一是為了對得起你交的1200大洋考試費,你會更努力學習,原因之二是SCJP考試能夠讓你把基礎打得很牢靠,它要求你跟JDK一樣熟悉Java基礎知識;但是你千萬不要認為考過了SCJP就有多了不起,就能夠獲得軟件公司的青睞,就能夠獲取高薪,這樣的想法也是很危險的。獲得“真正”的SCJP只能證明你的基礎還過得去,但離實際開發還有很長的一段路要走。
3.1.2 OO思想的領悟掌握了基礎語法和Java程序運行原理后,我們就可以用Java語言實現面向對象的思想了。面向對象,是一種方法學;是獨立于語言之外的編程思想;是 CBD基于組件開發的基礎;屬于強勢技術之一。當以后因工作需要轉到別的面向對象語言的時候,你會感到特別的熟悉親切,學起來像喝涼水這么簡單。
使用面向對象的思想進行開發的基本過程是: ●調查收集需求。●建立用例模型。
●從用例模型中識別分析類及類與類之間的靜態動態關系,從而建立分析模型。●細化分析模型到設計模型。●用具體的技術去實現。●測試、部署、總結。
3.1.3 基本API的學習進行軟件開發的時候,并不是什么功能都需要我們去實現,也就是經典名言所說的“不需要重新發明輪子”。我們可以利用現成的類、組件、框架來搭建我們的應用,如SUN公司編寫好了眾多類實現一些底層功能,以及我們下載過來的JAR文件中包含的類,我們可以調用類中的方法來完成某些功能或繼承它。那么這些類中究竟提供了哪些方法給我們使用?方法的參數個數及類型是?類的構造器需不需要參數?總不可能SUN公司的工程師打國際長途甚至飄洋過海來告訴你他編寫的類該如何使用吧。他們只能提供文檔給我們查看,Java DOC文檔(參考文獻4.4)就是這樣的文檔,它可以說是程序員與程序員交流的文檔。基本API指的是實現了一些底層功能的類,通用性較強的API,如字符串處理/輸入輸出等等。我們又把它成為類庫。熟悉API的方法一是多查Java DOC文檔(參考文獻4.4),二是使用JBuilder/Eclipse等IDE的代碼提示功能。
3.1.4 特定API的學習Java介入的領域很廣泛,不同的領域有不同的API,沒有人熟悉所有的API,對一般人而言只是熟悉工作中要用到的API。如果你做界面開發,那么你需要學習Swing/AWT/SWT等API;如果你進行網絡游戲開發,你需要深入了解網絡API/多媒體API/2D3D等;如果你做WEB開發,就需要熟 悉Servlet等API啦。總之,需要根據工作的需要或你的興趣發展方向去選擇學習特定的API。
3.1.5 開發工具的用法在學習基礎語法與基本的面向對象概念時,從鍛煉語言熟練程度的角度考慮,我們推薦使用的工具是Editplus/JCreator+JDK,這時候不要急于上手JBuilder/Eclipse等集成開發環境,以免過于關注IDE的強大功能而分散對Java技術本身的注意力。過了這一階段你就可以開始熟悉 IDE了。程序員日常工作包括很多活動,編輯、編譯及構建、調試、單元測試、版本控制、維持模型與代碼同步、文檔的更新等等,幾乎每一項活動都有專門的工具,如果獨立使用這些工具的話,你將會很痛苦,你需要在堆滿工具的任務欄上不斷的切換,效率很低下,也很容易出錯。在JBuilder、Eclipse等IDE中已經自動集成編輯器、編譯器、調試器、單元測試工具JUnit、自動構建工具ANT、版本控制工具CVS、DOC文檔生成與更新等等,甚至可以把UML建模工具也集成進去,又提供了豐富的向導幫助生成框架代碼,讓我們的開發變得更輕松。應該說IDE發展的趨勢就是集成軟件開發中要用到的幾乎所有工具。從開發效率的角度考慮,使用IDE是必經之路,也是從一個學生到一個職業程序員轉變的里程碑。Java開發使用的IDE主要有Eclipse、JBuilder、JDeveloper、NetBeans等幾種;而Eclipse、JBuilder 占有的市場份額是最大的。JBuilder在近幾年來一直是Java集成開發環境中的霸主,它是由備受程序員尊敬的Borland公司開發,在硝煙彌漫的 Java IDE大戰中,以其快速的版本更新擊敗IBM的Visual Age for Java等而成就一番偉業。IBM在Visual Age for Java上已經無利可圖之下,干脆將之貢獻給開源社區,成為Eclipse的前身,真所謂“柳暗花明又一村”。浴火重生的Eclipse以其開放式的插件擴展機制、免費開源獲得廣大程序員(包括幾乎所有的骨灰級程序員)的青睞,極具發展潛力。
3.1.6 學習軟件工程 對小型項目而言,你可能認為軟件工程沒太大的必要。隨著項目的復雜性越來越高,軟件工程的必要性才會體現出來。參見“軟件開發學習路線”小節。
3.2學習要點 確立的學習路線之后,我們還需要總結一下Java的學習要點,這些要點在前文多多少少提到過,只是筆者覺得這些地方特別要注意才對它們進行匯總,不要嫌我婆婆媽媽啊。
3.2.1勤查API文檔當程序員編寫好某些類,覺得很有成就感,想把它貢獻給各位苦難的同行。這時候你要使用“Javadoc”工具(包含在JDK中)生成標準的Java DOC文檔,供同行使用。J2SE/J2EE/J2ME的DOC文檔是程序員與程序員交流的工具,幾乎人手一份,除了菜鳥之外。J2SE DOC文檔官方下載地址:http://Java.sun.com/j2se/1.5.0/download.jsp,你可以到google搜索CHM版本下載。也可以在線查看:http://Java.sun.com/j2se/1.5.0/docs/api/index.html。對待DOC文檔要像毛主席語錄,早上起床念一遍,吃飯睡覺前念一遍。當需要某項功能的時候,你應該先查相應的DOC文檔看看有沒有現成的實現,有的話就不必勞神費心了直接用就可以了,找不到的時候才考慮自己實現。使用步驟一般如下: ●找特定的包,包一般根據功能組織。●找需要使用類,類命名規范的話我們由類的名字可猜出一二。●選擇構造器,大多數使用類的方式是創建對象。●選擇你需要的方法。
3.2.2 查書/google->寫代碼測試->查看源代碼->請教別人 當我們遇到問題的時候該如何解決?這時候不要急著問別人,太簡單的問題,沒經過思考的問題,別人會因此而瞧不起你。可以先找找書,到google中搜一下看看,絕大部分問題基本就解決了。而像“某些類/方法如何使用的問題”,DOC文檔就是答案。對某些知識點有疑惑是,寫代碼測試一下,會給你留下深刻的印象。而有的問題,你可能需要直接看 API的源代碼驗證你的想法。萬不得已才去請教別人。
3.2.3學習開源軟件的設計思想 Java領域有許多源代碼開放的工具、組件、框架,JUnit、ANT、Tomcat、Struts、Spring、Jive論壇、PetStore寵物店等等多如牛毛。這些可是前輩給我們留下的瑰寶呀。入寶山而空手歸,你心甘嗎?對這些工具、框架進行分析,領會其中的設計思想,有朝一日說不定你也能寫一個XXX框架什么的,風光一把。分析開源軟件其實是你提高技術、提高實戰能力的便捷方法。
3.2.4 規范的重要性 沒有規矩,不成方圓。這里的規范有兩層含義。第一層含義是技術規范,多到http://www.tmdps.cn下載JSRXXX規范,多讀規范,這是最權威準確最新的教材。第二層含義是編程規范,如果你使用了大量的獨特算法,富有個性的變量及方法的命名方式;同時,沒給程序作注釋,以顯示你的編程功底是多么的深厚。這樣的代碼別人看起來像天書,要理解談何容易,更不用說維護了,必然會被無情地掃入垃圾堆。Java編碼規范到此查看或下載http://Java.sun.com/docs/codeconv/,中文的也有,啊,還要問我在哪,請參考3.2.2節。
3.2.5 不局限于Java 很不幸,很幸運,要學習的東西還有很多。不幸的是因為要學的東西太多且多變,沒時間陪老婆家人或女朋友,導致身心疲憊,嚴重者甚至導致抑郁癥。幸運的是別人要搶你飯碗絕非易事,他們或她們需要付出很多才能達成心愿。Java不要孤立地去學習,需要綜合學習數據結構、OOP、軟件工程、UML、網絡編程、數據庫技術等知識,用橫向縱向的比較聯想的方式去學習會更有效。如學習Java集合的時候找數據結構的書看看;學JDBC的時候復習數據庫技術;采取的依然是“需要的時候再學”的原則。
4.結束語需要強調的是,學習軟件開發確實有一定的難度,也很辛苦,需要付出很多努力,但千萬不要半途而廢。本文如果能對一直徘徊在Java神殿之外的朋友有所幫助的話,筆者也欣慰了。哈哈,怎么聽起來老氣橫秋呀?沒辦法,在電腦的長期輻射之下,都快變成小老頭了。最后奉勸各位程序員尤其是MM程序員,完成工作后趕快遠離電腦,據《胡播亂報》報道,電腦輻射會在白皙的皮膚上面點綴一些小黑點,看起來鮮艷無比……
第五篇:Java復習題
Java復習題
一、選擇題
1、當某一線程正處于休眠狀態,而另一個線程用 Thread 類中的 interrupt()方法中斷它時,拋出的異常類型是(C)。
A)IOException
B)RuntimeException C)InterruptedException
D)ClassNotFoundException
2、下面語句的功能是(A)。
RandomAccessFile raf2 = new RandomAccessFile(“1.txt”,“rw”);
A)打開當前目錄下的文件1.txt,既可以向文件寫數據,也可以從文件讀數據。
B)打開當前目錄下的文件1.txt,但只能向文件寫入數據,不能從文件讀取數據。C)打開當前目錄下的文件1.txt,但不能向文件寫入數據,只能從文件讀取數據。D)以上說法都不對。
3、下面的程序段的功能是(D)。
File file1=new File(“d:xxxyyyzzz”);file1.mkdirs();A)在當前目錄下生成子目錄:xxxyyyzzz
B)生成目錄: e:xxxyyyzzz
C)在當前目錄下生成文件xxx.yyy.zzz
D)以上說法都不對
4、以下關于java異常說法不正確的是(D)。
A)Throwable 類是 Java 語言中Error類和Exception類的父類。
B)當異常對象是Exception類(或其子類)的實例時,能通過 Java 虛擬機或者 throw 語句拋出該異常對象,并能通過try…catch…finally處理。
C)如果只用一個catch塊捕捉多個異常對象,則catch 子句中的參數類型應是所有異常對象的父類。D)以上說法都不對。
5、下面關于Java中異常處理try塊的說法正確的是(D)? A)每個try塊后都有且僅有一個catch 塊完成對拋出異常的處理。
B)catch 塊后必須有finally塊。
C)可能拋出異常的方法調用應放在try塊中。
D)對拋出的異常的處理必須放在try塊中
6、線程對象的生命周期中,不包括下面哪個狀態(B)。A)新建
B)睡眠
C)就緒
D)死亡
7、下面關于對象序列化(Serializable)的說法錯誤的是(A)。
A)一個類實現接口Serializable就能使之序列化,必須實現該接口的write()方法。
B)一個對象序列化后,能通過對象流讀取對象或寫入對象。
C)要存儲對象數據,還需要建立一個ObjectOutputStream對象并使用其writeObject()方法。
D)序列化一個類,必須保證在恢復時java虛擬機能找到這個類的.class文件,否則將會出現ClassNotFoundException。
8、下面關于進程、線程的說法錯誤的是(C)。A)進程是程序的一次動態執行過程。一個進程在其執行過程中,可以產生多個線程——多線程,形成多條執行線索。
B)線程是比進程更小的執行單位,是在一個進程中獨立的控制流,即程序內部的控制流。線程本身不能自動運行,棲身于某個進程之中,由進程啟動執行。C)Java中每個程序都有一個主線程,主線程自動啟動,并在所有子線程結束后才能終止。
D)對于單處理器系統,多個線程分時間片獲取CPU或其他系統資源來運行。對于多處理器系統,線程可以分配到多個處理器中,從而真正的并發執行多任務。
9、下面的程序段創建了BufferedReader類的對象in,以便讀取本機c盤my文件夾下的文件1.txt。File構造函數中正確的路徑和文件名的表示是(C)。
File f=new File(填代碼處);file=new FileReader(f);in=new BufferedReader(file);A)“./1.txt”
B)“../my/1.txt”
C)“c:my1.txt”
D)“c: my1.txt”
10、下面關于java中輸入/輸出流的說法錯誤的是(C)。
A)FileInputStream與FileOutputStream類用讀、寫字節流。B)Reader與Writer類用來讀、寫字符流。
C)RandomAccessFile是單純的輸入或輸出流。D)File類用來處理與文件相關的操作。
11、以下程序段執行后將有(B)個字節被寫入到文件afile.txt中。
try{
FileOutputStream fos=new FileOutputStream(“afile.txt”);
DataOutputStream dos=new DataOutputStream(fos);
dos.writeInt(3);
dos.writeDouble(0.01);
dos.close();
fos.close();
}
catch(IOException e){
} A、16 B、12 C、8 D、2
12、閱讀以下程序段,假定服務器端和客戶端程序正常運行無異常發生,請回答以下問題:
①描述程序功能。
②假定在客戶端輸入2.0,請寫出服務器端的輸出結果。//服務器端程序
import java.io.*;import java.net.*;public class Server
{ public static void main(String[] args)
{ try
{ ServerSocket serverSocket = new ServerSocket(8000);
Socket connectToClient = serverSocket.accept();
DataInputStream isFromClient = new DataInputStream(connectToClient.getInputStream());
DataOutputStream osToClient = new DataOutputStream(connectToClient.getOutputStream());
while(true)
{ double value = isFromClient.readDouble();
System.out.println(“value received from client: ” +value);
double result = value*value;
osToClient.writeDouble(result);
System.out.println(“result: ” + result);
}
}
catch(IOException ex)
{
System.err.println(ex);
} } } //客戶端程序 import java.io.*;import java.net.*;public class Client { public static void main(String[] args)
{ try
{
Socket connectToServer = new Socket(“localhost”, 8000);
DataInputStream isFromServer = new DataInputStream(connectToServer.getInputStream());
DataOutputStream osToServer =
new DataOutputStream(connectToServer.getOutputStream());
while(true)
{ System.out.print(“Please enter a double value: ”);
double value=Double.parseDouble(new BufferedReader(new InputStreamReader(System.in),1).readLine());
osToServer.writeDouble(value);
double result = isFromServer.readDouble();
System.out.println(“result received from the server is ”+ result);
}
}
catch(IOException ex)
{
System.err.println(ex);
} }4.0 }
13、閱讀以下程序:
import java.io.*;
public class Reverse
{
public static void
main(String args[ ])
{
int
i , n =5;
int a[ ] = new int[5];
for(i = 0;i < n;i++)
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
a[i] = Integer.parseInt(br.readLine());
} catch(IOException e){ };
for(i = n-1;i >= 0;i--)
System.out.print(a[i]+“ ”);
System.out.println();
}
} 若輸入: 1 2 7 4 5 則以上程序段的輸出結果為
54721。
14、下面關于Applet的說法正確的是(B)。
A、Applet也需要main方法 B、Applet繼承自java.awt.Applet或javax.swing.JApplet C、Applet能訪問本地文件 D、Applet程序不需要編譯