實訓總結(jié)青軟實訓報告
Java青島軟件園實訓總結(jié)
青島軟件園實訓總結(jié)
甚時候了,可不能裝了,不就是個實訓么,其實也沒什么總結(jié),你說我容易
么,說著僅有的一點實話,卻還擔心著我的成績,實訓十天左右吧,具體幾天,反正我這雙手數(shù)不過來!
總結(jié)嘛,好像不多哎。亂填的數(shù)據(jù)庫及Java的復習,能孿成個甚啊。其余幾
天就是像放羊一樣,不是說我不聽話,分配好任務就自己玩去吧!這叫實訓呢,真搞不懂那群老師腦袋怎么回事了,文明點不能罵人。這就是傳說中的青島軟件園實訓?我真是白活了小半輩子了!簡直是大開眼界!您當真是哄大朋友玩呢。無語啊,悲哀!郁悶!又熱又悶,煩死啦!
您當我們都是天才啊,有幾個能做成的,那不是坑爹是什么?就當是自己發(fā)
泄好了,我又不傻是不是!這樣的總結(jié)交上去,雖然不能挨踹,估計也就是高考零分作文的悲!
話說今天在市南區(qū)放羊,今天青島總算是停暖了,好不容易涼快了!?上
午,屋里還是那么的熱!機器還連不上網(wǎng),想想晚上的總結(jié)就郁悶了!這可咋整!
想想那讓人無語的Java就又是一陣暈死。干巴巴的枯燥,一點也不性感,就
算是感性也行!倒來倒去你不煩么?還有那滿深的bug,j就像渾身的痘痘,想起來何止是郁悶,簡直是惡心的吐血!膽戰(zhàn)心驚的寫著總結(jié)冷是怕誰在后面看到,其實那倒也無所謂,只要不是讓看到的人傷心就好了!
聽歌的,獸獸的,扯淡的,無不驗證著我說的真理。算求了,吐槽是啥意思
。≌齼喊私(jīng)的培訓就是這意思,還有什么費用想想就讓人頭大!難道是我的記性不好,不至于吧,我還沒老年癡呆呢!除非就是老師坑你們呢!這算不算是反動勢力呢!我去!
話說都六百多字了,也不容易,就是…不值錢!話說回來實訓,單個理解
也不冤枉了,的確是實在在的,也有訓話一籮筐!
不知道再過幾天會不會的風濕病,前半夜睡得還微熱,湊合著,后半夜就涼
下來了,這也到算了,關(guān)鍵還潮的很!又是一陣無語!
算求了,還是去網(wǎng)上找找總結(jié)吧,咱也得虛偽一下不是!受益匪淺啊!困死
我了!Java青島軟件園實訓總結(jié)
擴展閱讀:青軟實習報告
成績
生實習報告
實習名稱專業(yè)實習院部名稱信息技術(shù)學院專業(yè)計算機科學與技術(shù)班級11計算機科學與技術(shù)(1)班學生姓名陳松學號1105101049實習地點青軟實訓江蘇銳聘信息科技有限公司指導教師莫曉輝
實習起止時間:201*年9月3日至201*年9月14日
金陵科技學院教務處制
學一、實習目的
1、鞏固在書本上學到的理論知識,生產(chǎn)實習是作為本學科的一門實踐性的課程,將理論知識與實踐生產(chǎn)相結(jié)合,加深對理論知識的理解。2、獲得在書本上不易了解和不易學到的生產(chǎn)現(xiàn)場的實際知識,培養(yǎng)發(fā)現(xiàn)問題解決問題的能力,使之在實踐中得到提高和鍛煉。
二、實習時間
11天
201*年9月3日至201*年9月14日
三、實習地點
青軟實訓江蘇銳聘信息科技有限公司四、實習單位和部門
青軟實訓江蘇銳聘信息科有限公司五、實習內(nèi)容
9月3號1.準備階段a)jdk的下載與安裝
學習java的第一步當然是搞一個jdk來,從sun的網(wǎng)站上下了一個包含netbeans3.5.1的安裝包(j2sdk-1_4_2-nb-3_5_1-bin-windows.exe)。直接雙擊安裝,使用默認路徑安裝在了C:\\ProgramFiles\\j2sdk_nb下,這樣設(shè)置環(huán)境變量java_home的時候就需要輸入C:\\ProgramFiles\\j2sdk_nb\\j2sdk1.4.2,有點長,所以后來被某高手進行了嚴厲的批評。
安裝好jdk之后,進行三個環(huán)境變量(java_home,classpath,path)的設(shè)置,俺用的是win2k,估計以后用9x的可能性也不大,所以只記下2k的設(shè)置方法:右擊我的電腦,點屬性,選擇高級頁,點環(huán)境變量按鈕,ok,可以設(shè)了。原來是沒有java_home和classpath,需要新建,分別對應值如下:
java_home=C:\\ProgramFiles\\j2sdk_nb\\j2sdk1.4.2(強烈建議各位和我一樣的菜鳥不要用默認路徑安裝);classpath=C:\\Program
Files\\j2sdk_nb\\j2sdk1.4.2\\lib\\tools.jar;C:\\Program
Files\\j2sdk_nb
\\j2sdk1.4.2\\lib\\dt.jar(建議同上,另外后面還有補充);
另外需要在path后面增加C:\\ProgramFiles\\j2sdk_nb\\j2sdk1.4.2\\bin,這樣就可以在命令行上使用jdk帶的javac、java等工具,如果從來不用命令行工具,不設(shè)應該也可以吧(?)。不過為了表示專業(yè),還是設(shè)置一下為好。Ok,windows系統(tǒng)就是操作簡單,jdk就這樣安裝完了。b)選擇開發(fā)工具
工欲善其事,必先利其器。jdk環(huán)境裝好了,接下來應該選擇一個合手的開發(fā)工具。我曾經(jīng)雄心勃勃的要用記事本來寫java程序,覺得這樣學習起來比較純凈。后來放棄了,因為兩方面,一是沒有自動縮進功能,而是沒有自動完成功能,F(xiàn)在的人都已經(jīng)被各種集成開發(fā)環(huán)境慣壞了。
首先看到了旁邊某高手正在使用的Eclipse,以前也有所耳聞。趕緊拷貝過來安裝,解壓后發(fā)現(xiàn)是不用安裝的^_^。發(fā)送一個快捷方式到桌面上,ok,啟動啊,是e文的。俺四級是過了,不過那是n年前的事了。為了保證進度,先放棄。然后發(fā)現(xiàn)了安裝jdk時同時裝好的netbeans,當時安裝的時候是沒有注意到的,還想這個jdk包怎么這么大(90多m)。上netbeans的官方站點()了解了一下,官方站點還有中文版。知道它是sun主推的javaide(要不怎么和jdk捆綁在一起),本身就是由java開發(fā)的,最新版本是3.5.1,功能很齊全。雙擊啟動花了一點時間(慢。,然后又在線更新,終于可以用了。
界面看起來還是比較清楚的。比較喜歡的是它的文件系統(tǒng)的管理,可以直接掛接本地任意目錄到文件系統(tǒng)中來。另外它的程序的執(zhí)行不需要配置,直接就可以用。不論是主類,jsp(內(nèi)嵌了tomcat4.0.6),還是applet,點擊運行按鈕都可以迅速被運行。這點很重要,尤其對于剛開始不懂classpath為何物的俺來說。利器已經(jīng)準備好了,可以開始第一個java程序了。(本來是應該記錄安裝tomcat的,而且都下好了(4.1.27版本),也裝好了(直接解壓便可^_^)。不過既然netbeans已經(jīng)帶了,就不費事了,雖然版本略低,對俺應該夠用了。)c)第一個程序
第一個程序總是從HelloWorld開始。對我來說,HelloWorld程序如果運行成功,
也就意味著整個的準備工作圓滿結(jié)束。在netbean中新建一個類hello,編寫代碼。/***hello.java*@authorAberlee*Date:201*-11-01*Time:09:09:33
*Email:aberlee@msn.com*/
publicclasshello{
publicstaticvoidmain(Stringargs[]){System.out.println("Helloworld!");}}
在此之前,我已經(jīng)了解了,java之中“一切皆是對象”,所有的java程序都是由一個或者多個class組成。一個能運行的class,必須是public的,必須包含main函數(shù),main函數(shù)也必須是public和static的,以及java向控制臺輸出字符的語句是System.out.println()。
點擊運行,在netbeans下面的運行窗口成功打印出了“HelloWorld!”語句。順利啊,大功告成,以前還對java有偏見,就是因為偶爾寫個HelloWorld試試,經(jīng)常通不過,要不就是通過了編譯不能運行。打開控制臺試試。轉(zhuǎn)到源代碼當前目錄,敲入:javahello(enter)
預料中的HelloWorld并沒有出現(xiàn),以前經(jīng)?吹降腻e誤卻又出現(xiàn)了。Exceptioninthread"main"java.lang.NoClassDefFoundError:hello
以前只是偶爾玩一下,遇到問題就丟一邊不管了,現(xiàn)在卻必須得解決它?纯丛创a,和書上的一模一樣,即使是書錯了也應該不會錯在這個程序上吧。而且在netbeans中明明是好的?碞oClassDefFoundError這個單詞,好像是找不到這個class的原因。聯(lián)想起linux中運行某個文件時即使是當前目錄文件也要加./,
例如./install.pl。我想錯誤的原因也許和classpath有關(guān),而netbeans中未報錯是因為它有自己的類路徑設(shè)置(打開netbeans選項看一下,的確如此,而且還有很多個類路徑選項)。那么可以使用java的參數(shù)-classpath試一試。javaclasspath.hello(注意有個點,這個點代表當前路徑)
哈哈,終于運行成功了,看來的確是這方面的問題,F(xiàn)在把當前路徑也加到系統(tǒng)的classpath環(huán)境變量中,以后運行就不用每次都敲參數(shù)了。
classpath=.;C:\\ProgramFiles\\j2sdk_nb\\j2sdk1.4.2\\lib\\tools.jar;C:\\ProgramFiles\\j2sdk_nb
\\j2sdk1.4.2\\lib\\dt.jar(上面提過這有補充的^_^)準備階段結(jié)束了,接下來應該開始真正的java學習了。
Java學習筆記(二)--熟悉開發(fā)環(huán)境一、JDK(JavaDevelopmentKit)有如下公司或組織開發(fā)JDKSunJDKIBMJDKBEAJrocketGUNJDK
其中IBM的JDK包含的JVM(JavaVirtualMachine)運行效率要比SunJDK包含的JVM高出許多。而專門運行在x86平臺的Jrocket在服務端運行效率也要比SunJDK好很多。但不管怎么說,我們還是需要先把SunJDK掌握好。1、JDK的下載和安裝JDK又叫做J2SE(Java2SDKStandardEdition),可以從Sun的Java網(wǎng)站上下載到,,JDK當前最新的版本是J2SDK1.4.2,建議下載該版本的JDK,下載頁面在這里:。
下載好的JDK是一個可執(zhí)行安裝程序,默認安裝完畢后會在C:\\ProgramFiles\\Java\\目錄下安裝一套JRE(供瀏覽器來使用),在C:\\j2sdk1.4.2下安裝一套JDK(也包括一套JRE)。然后我們需要在環(huán)境變量PATH的最前面增加java的路徑C:\\j2sdk1.4.2\\bin。這樣JDK就安裝好了。2、JAVADocumentation
java編程手冊,java核心所在3、java應用服務器a、tomcatb、ibmwebshperec、beaweblogicd、免費jboss
二、java應用的運行環(huán)境應用服務器(AppServer)
AppServer是運行Java企業(yè)組件的平臺,構(gòu)成了應用軟件的主要運行環(huán)境。當前主流的AppServer是BEA公司的WeblogicServer和IBM公司的Websphere以及免費的Jboss,選擇其中一個進行學習就可以了,個人推薦Weblogic,因為它的體系結(jié)構(gòu)更加干凈,開發(fā)和部署更加方便,是Java企業(yè)軟件開發(fā)人員首選的開發(fā)平臺。下面簡要介紹幾種常用的AppServer:1、Tomcat
Tomcat嚴格意義上并不是一個真正的AppServer,它只是一個可以支持運行Serlvet/JSP的Web容器,不過Tomcat也擴展了一些AppServer的功能,如JNDI,數(shù)據(jù)庫連接池,用戶事務處理等等。Tomcat被非常廣泛的應用在中小規(guī)模的JavaWeb應用中,因此本文做一點下載、安裝和配置Tomcat的介紹:Tomcat是Apache組織下Jakarta項目下的一個子項目,它的主網(wǎng)站是:,Tomcat最新版本是Tomcat4.1.27,軟件下載的連接是:-4/binaries/。下載Tomcat既可以直接下載zip包,也可以下載exe安裝包(個人建議zip更干凈些),不管哪種情況,下載完畢安裝好以后(zip直接解壓縮就可以了)。需要設(shè)置兩個環(huán)境變量:JAVA_HOME=C:\\j2sdk1.4.2
CATALINA_HOME=D:\\tomcat4(你的Tomcat安裝目錄)
這樣就安裝好了,啟動Tomcat運行CATALINA_HOME\\bin\\startup.bat,關(guān)閉Tomcat運行shutdown.bat腳本。Tomcat啟動以后,默認使用8080端口,因此可以用瀏覽器訪問:8080來測試Tomcat是否正常啟動。Tomcat提供了兩個Web界面的管理工具,URL分別是::8080/admin/index.jsp
:8080/manager/html
在啟用這兩個管理工具之前,先需要手工配置一下管理員用戶和口令。用一個文本工具打開CATALINA_HOME\\conf\\tomcat-users.xml這個文件,加入如下幾行:
這樣用戶“robbin”就具備了超級管理員權(quán)限。重新啟動Tomcat以后,你就可以使用該用戶來登陸如上的兩個管理工具,通過Web方式進行Tomcat的配置和管理了。2、BEAWeblogic
Weblogic可以到BEA的網(wǎng)站上免費注冊之后下載到最新的Weblogic8.1企業(yè)版,License可以免費使用1年時間,其實這已經(jīng)完全足夠了。Weblogic的下載連接:,.../edocs.bea.com/。3、IBMWebshpere
Websphere同樣可以下載到免費的試用版本,到IBM的developerWorks網(wǎng)站可以看到Websphere試用產(chǎn)品的下載和相關(guān)的Websphere的資料,developerWorks中文網(wǎng)站的連接是:900.ibm.com/developerWorks/cn/wsdd/,Websphere
的下載連接:。4、Jboss
Jboss是免費開源的AppServer,可以免費的從Jboss網(wǎng)站下載:,然...n.com/idea.html三、Java的應用
Java的應用可以簡單分為以下幾個方面:1、Java的桌面應用
桌面應用一般僅僅需要JRE的支持就足夠了。
2、JavaWeb應用Java的Web應用至少需要安裝JDK和一個web容器(例
如Tomcat),以及一個多用戶數(shù)據(jù)庫,Web應用至少分為三層:Browser層:瀏覽器顯示用戶頁面Web層:運行Servlet/JSP
DB層:后端數(shù)據(jù)庫,向Java程序提供數(shù)據(jù)訪問服務3、Java企業(yè)級應用
企業(yè)級應用比較復雜,可以擴展到n層,最簡單情況會分為4層:Browser層:瀏覽器顯示用戶頁面
Client層:Java客戶端圖形程序(或者嵌入式設(shè)備的程序)直接和Web層或者EJB層交互
Web層:運行Servlet/JSP
EJB層:運行EJB,完成業(yè)務邏輯運算
DB層:后端數(shù)據(jù)庫,向Java程序提供數(shù)據(jù)訪問服務
4、Java嵌入式應用Java嵌入式應用是一個方興未艾的領(lǐng)域,從事嵌入式開發(fā),需要從Sun下載J2ME開發(fā)包,J2ME包含了嵌入式設(shè)備專用虛擬機KVM,和普通的JDK中包含的JVM有所不同。另外還需要到特定的嵌入式廠商那里下載模擬器。
9月4號變量.數(shù)據(jù)類型
1.在java里面int占4個字節(jié),long占8個字節(jié)2.Java基本數(shù)據(jù)類型:
整數(shù):(byte一個字節(jié):-128---127int四個字節(jié):-2147483648---+2147483647short兩個字節(jié):-32768---+32767long八個字節(jié):)
小數(shù)(浮點):floatdouble布爾:boolean
字符:char(兩個字節(jié),可以存放漢字,chartest1="中";)引申到字符串(類)3.在java中對char進行運算的時候,直接是當做ASCII碼對應的整數(shù)4.數(shù)據(jù)不能從高精度到低精度的轉(zhuǎn)換Byte
應該寫成是floata=3.4f;不過可以強制轉(zhuǎn)換:inta=(int)1.2;intb=(int)1.95.inta=1;intb=a+1.2;a先是往高精度轉(zhuǎn)換,然后賦給b,就報錯,改成inta=1;doubleb=a+1.2;或者inta=1;floatb=a+1.2f;就解決了。
1.流程控制
1.1switchcase語句中,switch條件表達式的數(shù)據(jù)類型應該和后面case的類型一致
1.2switchcase語句中,可用的數(shù)據(jù)類型主要是:byteshortintcharenum2.類與對象
2.1面向?qū)ο缶幊?類與對象
類名首字母大寫類里面的元素叫類的成員變量/屬性2.2類的定義
package包名;class類名extends父類implements接口名{
成員變量;構(gòu)造方法;成員方法;}
2.3如何創(chuàng)建對象:
先聲明再創(chuàng)建Catcat1;cat1=newCat();一步到位Catcat1=newCat();2.4.引用傳遞類似于指針一樣1.this類變量
1.1this屬于類的對象的而不是屬于類的
1.2.this不能在類的外部使用,只能在類定義時候使用!1.3.可以用類名直接訪問靜態(tài)變量2.類方法封裝
2.1.類變量是該類的所有對象共享的對象,一改全改了2.2.定義語法:訪問修飾符static數(shù)據(jù)類型變量名
2.3類方法(靜態(tài)方法、靜態(tài)函數(shù)):屬于所有對象實例的
2.4Java中:類變量(static)原則上用類方法(static)去訪問;類方法中不能訪問非靜態(tài)變量,就是非類變量,但是普通的成員方法可以訪問靜態(tài)變量(類變量)
使用:類名.類方法名對象名.類方法名2.5非類變量就是實例變量,屬于每個對象自己的
2.6.Java面向?qū)ο缶幊痰娜ㄋ模┐筇卣鳎悍庋b、繼承、多態(tài)(、抽象)2.7抽象:把一類事物的共有的屬性和行為提取出來,形成一個物理模板,此研究問題的方法就是抽象
2.8封裝:把抽象出來的數(shù)據(jù)和對數(shù)據(jù)的操作封裝在一起,數(shù)據(jù)被保護在內(nèi)部,程序的其它部分只有通過被授權(quán)的操作(成員方法),才能對數(shù)據(jù)進行操作。
2.9封裝的訪問控制修飾符2.10四種訪問控制符:公開級別:public
受保護級別:對子類和同一個包中的類公開
默認級別:沒有修飾符,向同一個包的類公開,子類不可以訪問類中默認級別的元素的
私有級別:用private修飾,只有類本身才能訪問公開>受保護>默認>私有
2.11包的三大作用:區(qū)分相同名字的類當類很多的時候可以很好的管理類控制訪問范圍
2.12包的打包命令:packagecom.xiaoming一般放在文件的開始的地方
2.13引包命令:improt包名訪問修飾符重載覆蓋
1.一個文家中如果只有public類,那么這個public類可以不用主函數(shù)2.不想被繼承就設(shè)為protected
3.子類最多只能繼承一個父類,Java里面不允許一個子類繼承多個父類,C++卻可以,如Java中一定要呢,就用接口吧
4.Java的所有類都是Object的子類,繼承層次數(shù)沒有限制
7.方法重載:類的同一種功能的多種實現(xiàn)方式,取決于調(diào)用者傳遞的參數(shù)8.方法重載注意事項:方法名相同
方法的參數(shù)類型,個數(shù),順序至少有一項不同方法的修飾符可以不同方法的返回類型可以不同另外:
只是返回類型不一樣并不構(gòu)成重載只是控制訪問修飾符不一樣不構(gòu)成重載9月5號
1.約瑟夫問題(丟手帕問題)
1.1方法覆蓋的:子類有一個方法和父類的某個方法名稱、返回類型、參數(shù)一樣
1.2方法覆蓋注意:
子類的方法的返回類型、參數(shù)、方法名稱要和父類的一樣,否則編譯出錯子類方法不能縮小父類方法的訪問權(quán)限,但是擴大是可以的,子類拋出比父類更少的異常
2.多態(tài)
2.1多態(tài)性:訪問子類可以通過訪問父類:Animalcat=newCat();Animaldog=newDog();
2.2在使用多態(tài)的時候,如果有使用覆蓋函數(shù),那么被覆蓋的方法(即是父類中的的那個相應的方法)是要存在的。
2.3多態(tài):一個引用(類型)在不同情況下的多種狀態(tài),可使代碼更加靈活2.4java允許父類的引用變量引用它子類的實例,是自動完成的抽象類接口(難點重點)
1.父類方法的不確定性,用抽象類修飾這個方法,abstract。2.抽象類還是可以一樣被繼承
3.當一個類繼承的類是抽象的類時候,就要把抽象類中的所有的抽象方法全部方法實現(xiàn)
4.用abstract關(guān)鍵詞來修飾的時候,一定是抽象類和抽象方法5.在使用中不多,公司筆試的時候考很多
6.抽象類不能被實例化,只有被繼承以后再去實例化
7.抽象類不一定要包含abstract方法,就算沒有abstract方法,也不能實例化它
8.一旦類包含了abstract方法,這個類必須聲明為abstract9.抽象方法不能有主體“{}“11.接口不能被實例化
12.接口中的所有方法都不能有主體13.抽象類里面是可以有實現(xiàn)了的方法的
14.接口中的所有方法都不能有主體,即都不能被實現(xiàn)15.接口是更加抽象的抽象類!。!
16.一個類繼承抽象類或是使用接口,那么就要實現(xiàn)所有的抽象方法17.一個類可以實現(xiàn)多個接口
18.接口中可以有變量(但是不能用private,protected修飾)
19.接口中的變量本質(zhì)上都是靜態(tài)的,而且是final,不管你加不加static,所以可以直接使用:接口名.變量名
20.在java開發(fā)中,經(jīng)常把常用的變量定義在接口中作為全局變量使用訪問形式:接口名.變量名
21.一個接口不能繼承其它的類,但是可以繼承別的接口22.接口體現(xiàn)了程序設(shè)計的多態(tài)和高內(nèi)聚低耦合的思想9月6號final作業(yè)評講
1.實現(xiàn)接口和繼承父類的區(qū)別:
2.java是單繼承,一個類只允許繼承一個父類,這種單繼承的機制可以保證類的純潔性,比C++的多繼承機制簡潔
3.實現(xiàn)接口可以看做是對單繼承的一種補充
4.繼承是層次式的,不太靈活,修改某個類就會打破這種繼承的平衡,但是接口就不會,因為只針對實現(xiàn)接口的類才起作用
5.用接口體現(xiàn)多態(tài):
6.前期綁定:在程序運行之前就進行綁定,由編譯器和連接程序?qū)崿F(xiàn),又叫靜態(tài)綁定,如static方法和final方法,包括private方法,它是隱式final的
7.后期綁定:在運行的時候根據(jù)對象的類型進行綁定,由方法調(diào)用機制實現(xiàn),因此又叫動態(tài)綁定,或是運行時綁定,除前期綁定外的所有方法都屬于后期綁定
9.final概念:final可以修飾變量和方法
當不希望父類的某些方法被子類覆蓋的時,可以用final修飾當不希望類的某個變量的值被修改,可以用final修飾當不希望類被繼承時,可以用final修飾10.final修飾的變量一般用下劃線書寫
11.如果一個變量是final的,那么定義時候必須賦初值12.final修飾的變量又叫常量,一般用XX_XX_XX命名13.final什么時候用:
處于安全的考慮,類的某個方法不允許修改類不會被其它的類繼承
某些變量值是固定不變的,比如pi9月7號講題目
1.switch只能對int、short、byte以及枚舉類型進行判斷,case后面只能是常量表達是
2.猜拳的java程序設(shè)計:
有個人Tom設(shè)計他的成員變量,成員方法,和電腦猜拳,電腦每次都產(chǎn)生一個隨機數(shù)0,1,2,0表示石頭,1表示剪刀,2表示布。
數(shù)組
1.數(shù)組是可以存放多個同一類型的數(shù)據(jù)2.用法:
程序員用法:數(shù)組定義:數(shù)據(jù)類型數(shù)組名[]=new數(shù)據(jù)類型[大小];
如:intarr[]=newint[5];或者是int[]arr=newint[5];或者是int[]arr=newint[5];數(shù)組引用:數(shù)組名[下標]
沒事找事用法:數(shù)組定義:intarr[];arr=newint[5];或者是int[]arr;arr=newint[5];或者是int[]arr;arr=newint[5];數(shù)組引用:數(shù)組名[下標]
古板用法:inta[]={1,2,3,4,5,6,7,8,9,0};數(shù)組引用:數(shù)組名[下標]
3.知道數(shù)組的大。篴rr.length(成員屬性)4.引用在棧里面,對象在堆里面5.對象數(shù)組:
對象、字符串的很多不能用”==”,用的話是表示地址相等,比較字符串的內(nèi)容是否相等是用equals方法
6.數(shù)組可存放同一類型數(shù)據(jù)
簡單數(shù)據(jù)類型(int,float)數(shù)組,可以直接賦值
對象數(shù)組在定義后,賦值時候需要再次為每個對象分配空間【即是:new對象】
數(shù)組大小必須事先指定,如:intx;inta[]=newint[x];是可以的數(shù)組名可以理解為指向數(shù)組首地址的引用數(shù)組的下標是從0開始標號的9月8號多維數(shù)組
1.多維數(shù)組,定義:
語法:類型數(shù)組名[][]=new類型[大小][大小]inta[][]=newint[2][3]第二十講二進制位運算移位計算1.0的反碼和補碼都是0
2.我們只會針對有符號的數(shù)才講反碼補碼
3.java沒有無符號數(shù),換言之,java中的數(shù)都是有符號的4.在計算機運算的時候,都是以補碼的方式運算的5.按位與&或|異或^取反~
6.~-2=-3(00000010->11111101->11111100->10000011)7.2&3=00000010
2|3=00000011
~-5=
(1000
0101->11111010->11111011(補碼)->00000100)4
8.有3個移位運算符:
>>算術(shù)右移:低位溢出,符號位不變,并用符號位補由于移動而空出的高位
>邏輯右移:
9.記。簩ω摂(shù)操作就要先找補碼。!正數(shù)也是,只不過不邊罷了。得到的結(jié)果如果是正數(shù)就結(jié)束,如果是負數(shù)就再折騰一下,轉(zhuǎn)變成原碼才行。
10.-1移動任意位都是-1
11.1
Queue結(jié)構(gòu)的集合類Queue接口
4.Java中所有的對象都是從Object繼承下來的5.子類交給父類,可以自動轉(zhuǎn)換,反過來就要強制轉(zhuǎn)換
6.ArrayList中可以多次存放同樣的人,ArrayList本質(zhì)是存放引用7.從ArryList中刪除對象
8.字符串相等是地址相等而不是內(nèi)容相等!
9.雇員管理系統(tǒng)程序的編寫(自己改進了一點,不完全,繼續(xù)改進)10.LinkedList
addFirst表示把元素加在鏈表的最前面(類似于棧一樣)addLast表示把元素加在鏈表的最后面(類似于隊列一樣)getFirstgetLastremoveremoveFirstremoveLast11.Vector:
12.Stack用法:(加的時候是在前加的)9月9號集合1.HashMap
HashMaphm=newHashMap();
Empemp=newEmp(“s001”,”aaa”,3.4f);2.HashMap可以存放空置但是HashTable不能存放空值。
3.Hashtable是基于陳舊的Dictionary的,HashMap是Java1.2引進的Map接口的一個實現(xiàn)
4.Hashtable是線程同步的,這個類中的一些方法保證了Hashtable中的對象是線程安全的。而HashMap是異步的,因而HapMap中的對象并不是線程安全的。因為同步的要求會影響執(zhí)行的效率,所以如果你不需要線程安全的集合那么使用HashMap是一個很好的選擇,這樣可以避免由于同步而帶來的不必要的性能開銷,從而提高效率。
5.值:HashMap可以讓你將空值作為一個表的條目的key或value,但是Hashtable是不能放入空值的(null)
6.HashTable由于是同步的,有鎖,因此是存在等待的,HashMap允許7.ArrayList和Vector區(qū)別:
Vector是同步的,是線程安全的,更安全
ArrayList是異步的,不是線程安全的,沒有Vector安全
數(shù)據(jù)增長:Vector缺省情況下是自動增長原來一倍的數(shù)組長度,適合保存大量的數(shù)據(jù);ArrayList是原來的50%
8.如果要求線程安全,使用Vector、Hashtable,否則ArrayList、LinkedList、HashMap
9.如果要求鍵值對,使用HashMap、Hashtable10.如果數(shù)據(jù)量大又考慮線程安全,使用Vector第二十四講集合補充
HashMap和Hashtable都是實現(xiàn)Map的接口的,ArrayList和LinkedList都是實現(xiàn)List的接口的
10.泛型可以更安全和提高代碼重用率,泛型可以利用反射機制拿到類的一系列信息,從而提高代碼的優(yōu)越性。
作業(yè)講評
1.靜態(tài)變量不給初值也是可以的,默認為0,如果前面有final就一定要賦值了
2.布爾值之間可以用”==”號
3.if(i==1&j==2)//由于”i==1”返回了布爾值,所以就可以過去,否則就不行,但是c中就沒有這樣的顧慮,c會自動轉(zhuǎn)換成boolen
4.繼承中不能縮減被繼承的父類中函數(shù)的范圍(針對函數(shù)的參數(shù)的范圍)5.Math.floor->取一個比某數(shù)小的最大整數(shù)Math.round->四舍五入
Math.ceil->取一個比某數(shù)大的最小整數(shù)//ceil:天花板Math.min->需要兩個數(shù)被操作
6.substring(beginIndex,endIndex)>起始索引包括,結(jié)束索引不包括7.字符串的序數(shù)也是從0開始計數(shù)
8.Java的內(nèi)存區(qū)分為:代碼區(qū)、棧區(qū)和堆區(qū)
9.普通變量定義和初始化的時候直接放在棧區(qū),不是普通變量的引用在棧區(qū),對象在堆區(qū)
10.類中含有靜態(tài)變量(函數(shù))時候:直接在數(shù)據(jù)區(qū)(申請空間)11.堆區(qū)中有字符串引用池(stringpool),它存放字符串的引用,當字符池發(fā)現(xiàn)有字符時就指向字符,字符是存放在堆區(qū)中的。相同的字符串指向相同的地址,但是如果要用new來初始化,地址就不一樣了,因為new是直接去開辟堆區(qū)的空間的。
12.對于對象來講,==是比較地址
13.a.equals(b)區(qū)分大小寫,a.equalsIgnoreCase(b)就不區(qū)分大小寫14.如果希望在子類中調(diào)用父類的構(gòu)造函數(shù),那么一般要求在子類的構(gòu)造函數(shù)中調(diào)用
15.super表示當前正要調(diào)用該類它父類的變量或方法。9月10號線程坦克大戰(zhàn)
1.線程有:新建、就緒、運行、阻塞、死亡狀態(tài)
2.運行中若資源突然不夠用了,就阻塞,等待,一旦又滿足條件了就進入就緒狀態(tài),如果還是可以滿足條件,就再次進入運行狀態(tài);運行結(jié)束就死亡。
3.在java中,一個類要當作線程來使用有兩種方法:繼承Thread類,并重寫run函數(shù)
實現(xiàn)Runnable接口,并重寫run函數(shù)(如果已經(jīng)繼承了別人的話,在不能多重繼承的情況下使用接口)
6.字節(jié)流:以字節(jié)方式讀寫的流,可以讀取二進制文件和任何類型的文件byte(InputStream,OutputStream)
字符流:可以用于讀寫文本文件,不能操作二進制文件(Reader,Writer)7.常見io流文件對象
4.常用IO流緩沖字符流,直接操作StringBufferedReaderStreamReader5.總結(jié):
FileInputStream文件字節(jié)流:Filef=newFile("d:\\\\test.txt");FileInputStreamfis=null;
FileReader文件字符流:fr=newFileReader("c:\\\\ttt.txt");fw=newFileWriter("d:\\\\ccc.txt");BufferedReader緩沖字符流:fr=newFileReader("c:\\\\ttt.txt");(讀行)br=newBufferedReader(fr);9月11號SimpleUMS
UMS(UserManagementSystem),故名用戶管理系統(tǒng),系統(tǒng)的作用就是對用戶的增|刪|查|改的一些操作
該系統(tǒng)有兩類人使用:普通客戶,管理員
1.系統(tǒng)剛剛啟動,有一個選擇頁面,要以普通客戶還是管理員的身份進入系統(tǒng),如下界面:
========SimpleUMS==========
請選擇要登錄系統(tǒng)的身份:1.客戶2.管理員3.退出系統(tǒng)(只能輸入1\\2\\3)2.無論輸入1或者是2,都要進入登錄界面,要求輸入用戶名和密碼,如下界面:========SimpleUMS==================用戶登錄===========請輸入用戶名:請輸入密碼:
3.按照要求輸入用戶名和密碼,成功之后進入系統(tǒng),如果不成功,要給出提示,如下界面:
========SimpleUMS==================用戶登錄===========
對不起,輸入的信息有誤,請輸入:1.重新登錄2.注冊新用戶(只能輸入1或者是2)
如果輸入1,則重復2的操作;如果輸入2,則進入注冊界面,如下界面:========SimpleUMS==================用戶注冊===========請輸入用戶名:請輸入密碼:
請輸入生日(yyyy-mm-dd格式):請輸入性別(輸入1或者是0):請輸入學歷:
輸入對應的信息之后,重復2的操作如果輸入3,則退出SimpleUMS系統(tǒng)4.如果是普通客戶登錄系統(tǒng),則顯示如下信息:========SimpleUMS==========
歡迎你,xxx,請選擇操作界面:1.查看自己的信息2.修改密碼3.注銷如果輸入1,列出如下界面:
========SimpleUMS==========姓名:XXX
生日:1989年12月22日性別:男學歷:本科
如果輸入2,列出如下界面:請輸入新密碼:請確認新密碼:
如果兩次密碼一樣,處理修改密碼業(yè)務邏輯,界面回到4的界面如果兩次密碼不一樣,一致重復該界面如果輸入3,則回到1的界面
5.如果是管理員登錄系統(tǒng),則顯示如下信息:========SimpleUMS==========xxx管理員,請選擇操作界面:
1.查看全部客戶的信息2.查看一個客戶的信息3.新增一個客戶4.刪除一個客戶5.修改一個用戶6.注銷
5.1:如果輸入1,則列出全部客戶的信息,如下界面序號姓名
性別
學歷
出生年月日
1張三男本科1987-11-09
2李四男本科1987-09-123如花女小學1690-11-11輸出完之后,還要顯示5的大的導航界面5.2:如果輸入2,則列出指定客戶的,如下界面請輸入需要查看客戶的id:
如果輸入的id存在,則顯示客戶的信息,如下界面姓名性別
學歷
出生年月日
張三男本科1987-11-09輸出完之后,還要顯示5的大的導航界面如果不存在,則給一個提示,如下界面對不起,指定的客戶不存在!
輸出完之后,還要顯示5的大的導航界面
5.3:如果輸入3,則表示從系統(tǒng)的后臺添加一個客戶,參照注冊邏輯5.4:如果輸入4,則表示從系統(tǒng)的后臺刪除一個客戶,如下界面請輸入需要刪除客戶的id:
如果輸入的id存在,則顯示刪除成功,如下界面刪除指定客戶成功
輸出完之后,還要顯示5的大的導航界面如果輸入的id不存在,則顯示刪除失敗,如下界面刪除指定客戶失敗
輸出完之后,還要顯示5的大的導航界面
5.5:如果輸入4,則表示從系統(tǒng)的后臺修改一個用戶,如下界面請輸入需要修改客戶的id:
如果輸入的id不存在,則給出如下界面對不起,指定的客戶不存在
輸出完之后,還要顯示5的大的導航界面如果輸入的id存在,則給出如下界面新的密碼:確定新的密碼:
新的學歷:
輸入完信息之后就顯示5的大的導航界面5.6:如果輸入6,注銷,返回登錄界面
實現(xiàn)要求:用戶的信息要存儲在文件中,定義自己好解析的格式存儲代碼盡量模塊化,不要一個類寫完全部的功能
任何人不要做成一樣,要體現(xiàn)出差異性,否則會被視為抄襲檢查時不要出現(xiàn)任何的bug技術(shù)提示:用好static關(guān)鍵字
String字符串解析的api文檔Map集合的key-value鍵值對的妙用在解決循環(huán)顯示的時候,想想while循環(huán)
想想經(jīng)常出現(xiàn)的字符串,是不是有更好的方式處理?看看有哪些數(shù)據(jù)信息是可以放在Properties里面的設(shè)計好實體類的屬性和方法設(shè)計好UMS類的屬性和方法
相關(guān)API提示:退出系統(tǒng)(停止程序):System.exit(0);9月12號試題評講
主要是復習以前的東西:
1.在try里面拋出異常和發(fā)生一般的異常是一樣的,都會被catch住2.final修飾的類不能被繼承了final修飾方法,該方法不能被覆蓋
final用于聲明屬性、方法和類,分別表示屬性不可變,方法不可重寫,類不可繼承
3..包的聲明必須是源文件的第一句話
4.類的成員變量可以不賦初值,就是不初始化,但是如果是局部變量就需要給初值
5.字符串相比是比地址,如果字符串一樣的話就是一樣的地址數(shù)據(jù)庫概念
1.數(shù)據(jù)庫的基本結(jié)構(gòu)
物理數(shù)據(jù)層:數(shù)據(jù)庫的最內(nèi)層
概念數(shù)據(jù)層:數(shù)據(jù)庫的中間層,數(shù)據(jù)庫的整體邏輯表示邏輯數(shù)據(jù)層:用戶所看到和使用的數(shù)據(jù)庫2.SQL語言包括:
數(shù)據(jù)定義語言(DDL):create、drop、alter數(shù)據(jù)操作語言(DML):insert、update、delete數(shù)據(jù)查詢語言(DQL):select語句
數(shù)據(jù)控制語言(DCL):grant、revoke、commit、rollback等3.--如何顯示平均工資和最高工資GROUPBYselectavg(sal),
selectavg(sal),max(sal),deptnofromempgroupbydeptno
11.having往往和groupby結(jié)合使用,可以實現(xiàn)對分組查詢到的結(jié)果進行篩選,并可以排序
selectavg(sal),deptnofromempgroupbydeptnohavingavg(sal)
4.凱文米特尼克:黑客
5.自連接:同一張表上的連接查詢顯示某個員工的上級和他的上級名字
selectenamefromempwhereempno=(selectmgrfromempwhereename="blue")
6.對于自連接可以考慮將表分開的意思,看成兩張表
selectworker.ename雇員,boss.ename老板fromempworker,empbosswhereworker.mgr=boss.empno
7.子查詢是指嵌入在其它sql語句中的select語句,也叫嵌套查詢8.單行子查詢:返回單行數(shù)據(jù)的子查詢。select*fromempwheredeptno=(selectdeptnofromempwhereename="lucy")
9.多行子查詢:返回多行數(shù)據(jù)的子查詢
--查詢和部門10的工作相同的雇員的名字崗位工資部門號select*fromempwherejobin(selectdistinctjobfromempwheredeptno=10)
排除10號部門的:
select*fromempwherejobin(selectdistinctjobfromempwheredeptno=10)anddeptno!=10
10.在from子句中使用子查詢???復雜查詢
1.如何顯示高于部門平均工資的員工的信息,相當于是:1.首先知道各個部門的平均工資
--將1的結(jié)果當做一個臨時的表select
emp.ename,emp.sal,tmp.myavg
from
emp,(select
avg(sal)myavg,deptnofromempgroupbydeptno)tmpwhereemp.deptno=tmp.deptnoandemp.sal>tmp.myavg
當在from子句中使用子查詢時候,該子查詢會被作為一個臨時表來對待,當在from子句中使用子查詢時候必須給予查詢指定別名
2.分頁查詢,按照雇員id號升序取出
3.--請顯示第2個到第4個入職的雇員,按照時間的先后順序,如下:--top后面的數(shù)代表要取出幾條記錄
selecttop3*fromempwhereempnonotin(selecttop1empnofromemporderbyhiredate)orderbyhiredate
4.左外連接、右外連接
顯示公司每個員工和他上級的名字
左外連接(leftjoin):左邊的表的記錄全部要出現(xiàn),左邊表的元素全部要出現(xiàn),如果沒有匹配的記錄就用空來填
selectw.enameb.enamefromempwleftjoinempwherew.mgr=b.empno右外連接(rightjoin):右邊的表的記錄全部要出現(xiàn),右邊表的元素全部要出現(xiàn),如果沒有匹配的記錄就用空來填
內(nèi)連接(innerjoin):顯示所有匹配的,不匹配的就不顯示了5.約束
1.sqlserver201*約束包括:notnull:
null意思是什么都沒有,就像房子沒有建起來,但是’’代表占空間了,就像房子建了但是里面沒有什么東西
unique:表示不允許重復,是唯一的,但是可以是空值,不過只能是放一個空值,兩個空值代表是一樣的值。同一個表中,主鍵只有一個,但是unique可以有多個。
9月14號sqlserverjdbc
1.sqlserver里面都用單引號沒問題的
2.顯示ResultSet結(jié)果集,可以理解為表行的結(jié)果集,理解為游標,定義ResultSetrs,此時rs指向結(jié)果集的第一行的前一行,rs.getInt(1),括號里面的數(shù)字是列,會報空指針,取出第一行的第一列用rs.next(),rs是按照行循環(huán)取出的,現(xiàn)在我們就循環(huán)取出,rs.next()。
3.Statement和PreparedStatement區(qū)別:①Statement:直接將程序送到數(shù)據(jù)庫
②PreparedStatement:它先預編譯了一下再傳送到數(shù)據(jù)庫中,PreparedStatemen還t帶有緩存機制,緩解數(shù)據(jù)庫的壓力,效率高,適合使用batch,比較好的解決系統(tǒng)本地化問題,而且能有效防止危險字符的注入,解決sql的注入漏洞問題。
JavaWEB項目(基于JSP+Servlet+MySql)的企業(yè)人事管理系統(tǒng)。
六、實習總結(jié)
通過這次在青軟的實習,我深深的體會到了自己對于一個企業(yè)人的差距,這種差距不僅體現(xiàn)在技術(shù)上,也體現(xiàn)在經(jīng)歷上。技術(shù)方面,我們毋庸置疑,肯定不能勝任IT企業(yè)需要的人才。在學校我們可以由著自己性子去做事,而在企業(yè),可能由于你的一個不注意就會給企業(yè)帶來巨大的損失。作為學生,我已不能在沉溺于溫室中,只有盡快的與社會接觸我們深深地認識到這次實習帶給我們的經(jīng)驗財富。踏上社會才讓我認識到社會是一所更能鍛煉人的綜合性大學,只有正確的深入社會,了解社會,服務于社會,投身到實習中去,才能使我們發(fā)現(xiàn)自身的不足,為今后走出校門,踏進社會創(chuàng)造良好的條件;才能使我學有所用,在實習中成才,在服務中成長,并有效的為社會服務,體現(xiàn)大學生的自身價值。今后的工作中,是在現(xiàn)在的鍛煉積累經(jīng)驗的基礎(chǔ)上,不斷拓展活動范圍,挖掘和培養(yǎng)人才的潛力。
艱辛知人生,實踐長才干”。通過開展豐富多彩的社會實踐活動,使我逐步了解了社會,開闊了視野,增長了才干,并在社會實踐活動中認清了自己的位置,發(fā)現(xiàn)了自己的不足,對自身價值能夠進行客觀評價。這在無形中使我對自己有一個正確的定位,增強了我努力學習的信心和毅力。我是一名大三學生,即將走上社會,更應該提早走進社會、認識社會、適應社會。
“紙上得來終覺淺,絕知此事要躬行”。這次的實習使我找到了理論與實踐的最佳結(jié)合點。只重視理論學習,忽視實踐環(huán)節(jié),往往在實際工作崗位上發(fā)揮的不很理想。通過實習所學的專業(yè)理論知識得到鞏固和提高。就是緊密結(jié)合自身專業(yè)特色,在實習中檢驗自己的知識和水平。
友情提示:本文中關(guān)于《實訓總結(jié)青軟實訓報告》給出的范例僅供您參考拓展思維使用,實訓總結(jié)青軟實訓報告:該篇文章建議您自主創(chuàng)作。
來源:網(wǎng)絡(luò)整理 免責聲明:本文僅限學習分享,如產(chǎn)生版權(quán)問題,請聯(lián)系我們及時刪除。