- 相關推薦
java實訓聊天總結
關于JAVA聊天室編寫的總結
在編寫JAVA聊天室的過程中,讓我學到了很多東西,有知識方面的,而更多的是經驗。
從以前學習C,到現學習JAVA,有很多的地方不習慣。主要的就是思想不會轉變。但是還是有很多相似的地方,
比如,如何實現心中所想的東西時,很多函數的編寫的方法是類似的,而不同的是JAVA多了繼承、多態、封裝等等
面向對象的東西。所以在整體構思方面差異比較大,但是細節方面還是類似的。
編寫聊天室讓我對面向對象的了解算是更進一步了。
首先:聊天室實現的就是聊天;用戶與用戶之間實現聊天的功能。
然后:對于聊天這個功能如何實現呢?
1、 要實現用戶與用戶之間的交流,必須要有一個通信實體做出“主動姿態”,主動接受來自其他通信實體的連接請求。這就是服務端。
2、 客戶端——用于連接到服務端,然后實現用戶之間的通信。
所以這里的服務器和客戶端便是兩個對象,它們能實現用戶之間的通信。
對于總體的構思擦不多就是這樣。所以現在需要的便是一步一步的細化下去。、
一、 服務端
a) 服務端如何實現主動接受其他通信實體的連接請求?
b) 如何實現客戶端之間信息的收發?
c) 服務端應該有些什么樣的功能呢?
二、 客戶端
a) 如何連接到服務端?
b) 客戶端應該有些什么樣的功能?
當慢慢的思考下去,思想便會慢慢的清楚。
再開始編寫的時候,其實頭是亂的,摸不著頭緒,因為那時候開始的時候便在想:如何寫連接?如何寫收發信息?如何寫連接?等等。也許這就是學C的時候的習慣思想,那時候寫過的最大的程序便是俄羅斯方塊,其余的便是在搞算法。不過當自己慢慢的習慣JAVA的編程思想之后,便是好多了。
對于服務端和客戶端的設計
1、 服務器端的主要功能:
a) 在特定的端口上進行監聽,等待客戶端連接。
b) 默認端口為30000 。
c) 向已經連接到服務的用戶發送系統消息。
d) 統計在線人數。
e) 當停止服務器時,斷開所有的用戶連接。
2、 客戶端的主要功能:
a) 連接到已經開啟的聊天服務的服務端。
b) 用戶可以配置連接后顯示的用戶名。
c) 當服務器端開啟的話,用戶可以隨時登陸和注銷。
d) 用戶可以向所有人或者某一個人發送消息。
主要類和方法:
一、服務端:
1、ChatSever 便是服務器的主框架了。包括服務器的屬于的定義、
組件的組合、事件的處理等等。
2、ServerListen 類是服務端的監聽類。監聽客戶端是否連接。
3、ServerReceive 類是接收和發送客戶端、服務端的消息。
4、LNode 類封裝了用戶的屬性。
5、UserLinkList 類則是封裝了對用戶操作的方法。如:添加、查找、刪除等;
6 ServerHelp 類這是幫助板塊。
二、客戶端
1、Client 類 則是客戶端的主要框架。
2、UserSet 類 是對用戶名的設置和修改。
3、ClientReceive 類 實現客戶端和服務端消息的收發。
4、ClientHelp 類 這是幫助板塊。
(具體代碼就不發了,太多了。。)
對于聊天室的編寫部分已經完成了,接下來便是完善它的功能和修復它的一些BUG。因為發現有很多地方有BUG:
1、 客戶端無法接收到服務端發出的系統消息。
2、 服務端無法收到客戶端下線的消息,導致服務端無法刪除以下線的客戶端。所以客戶端連接重復。
3、 當服務端停止服務時,客戶端未斷線。
4、 客戶端不能接收到其他客戶端的上線和下線消息。
目前發現的BUG就是以上幾個。同時除了BUG以外,還發現很多的不足:
1、 客戶端的IP設置是不能改變的,所以當服務端換IP時,客戶端需要從源代碼中去修改,導致不方便。
2、 服務端、客戶端沒有設置快捷按鈕,導致每次啟動都要通過“菜單”來啟動和連接。
3、 所有的表現都是以文字表現的不能接收和發送圖片。
以上是目前發現的不足點。希望能在修改之后得到完善。
JAVA實訓心得
在本學期的最后一周,我們在學校機房進行了為期一周的JAVA實訓。現在即將結束了,回首本學期的java學習,重點還是在學習概念等一些常識性的東西,Application應用程序和Applet小程序,它的開發工具,數據類型,變量,接口,輸入輸出流,學會分析異常,拋出異常,后期主要是小程序運用,Gui界面設計和事件。我覺得這兩種程序結構有很大的不同,不管是體系結構還是運行方式,都有很大的區別,我主要偏向于小程序的學習,呵呵,因為感覺它用處比較大,可以做出好多好多好玩的游戲,運用程序等,且它靈活。呵呵,當然學知識可不能憑自己的愛好和一時興趣,要一步一個腳印,認認真真,踏踏實實,理論與實踐相結合,在扎實掌握課本實例和內容之后,有一定的擴展閱讀和課外學習,充分全面的了解JAVA的應用和擴展運用。
在我所學的語言當中,我自認為JAVA是一門比較強大的面向對象的編程語言,不僅僅因為它的跨平臺性,更多的是因為它的靈活多變和實用性較強,可以說比較的經典和強悍。
所以學好java語言有很大的用處,這次實訓,面對一道陌生的題目和要求時,不應慌張和無措,首先應該想到這和課本上的哪些知識具有結合點,回憶和分析這種結構的算法和具體實施方法,綜合考慮其他的方面,例如:該題的易寫性和易懂性及其他的問題的可利用性。在編寫時,一個小小的符號,一個常量變量的設定,這都無不考量著我們的細心和嚴謹,所以學習JAVA,不僅對我們以后學習其他語言有很大的好處,而且也讓我們知道了和理解了作為一個編程人員首先應具有的良好心理素質,那就是冷靜思考和專心致志。對待學術知識應該是嚴謹和認真。
這次實訓,我們更多學到的是不懂就問和自己應該盡自己的全力去嘗試,哪怕失敗,只要自己盡自己的全力,和身邊同學一起探討而不是抄襲,團結合作,發揮團隊意識,最后在自己的努力下,終于運行成功,這種成就感美不可言,心情愉悅至極。
最后終于要結束了,大家都有種釋懷的感覺,當然我想我更多的是興奮和自己掌握了知識之后的飽滿感,學知識就像吃東西一樣,吃飽了就應該好好的消化。要不斷的溫習和運用,做到舉一反三,將所學知識充分融入到平時的學習生活中去,為以后的工作做好堅實的基礎。感謝學校和老師能夠為我們提供這次機會,讓我們更好的掌握和了解JAVA這門語言。謝謝!
【java實訓聊天總結】相關文章:
java實訓聊天系統報告總結10-08
java實訓總結11-18
java專業實訓總結11-17
java實訓個人總結11-17
java實訓總結收獲10-08
java實訓的自我總結10-05
java實訓工作總結06-23
java實訓報告總結400010-06
java web實訓報告總結10-06
聊天室系統實訓總結10-05