shutdown只是将线程池的状态设置为SHUTWDOWN状态,正在执行的任务会继续执行下去,没有被执行的则中断

发送文件:依靠FileInputStream,DataInputStream,getInputStream实现

FileInputStream流被称为文件字节输入流,意思指对文件数据以字节的形式进行读取操作如读取图片视频等。在io包中,提供了两个与平台无关的数据操作流:数据输出流(DataOutputStream),数据输入流 (DataInputStream),通常数据输出流会按照一定的格式将数据输出,再通过数据输入流按照一定的格式将数据读入。getInputStream方法可以得到一个输入流,客户端的Socket对象上的getInputStream方法得到输入流其实就是从服务器端发回的数据,getOutputStream方法得到的是一个输出流,客户端的Socket对象上的getOutputStream方法得到的输出流其实就是发送给服务器端的数据

聊天信息:依靠PrintWriter,BufferedReader,InputStreamReader,getInputStream

PrintWriter可用来创建一个文件并向文本文件写入数据, BufferedReader类从字符输入流中读取文本并缓冲字符,以便有效地读取字符,数组和行;InputStreamReader类是从字节流到字符流的桥接器:它使用指定的字符集读取字节并将它们解码为字符。getInputStream方法可以得到一个输入流。

PrintWriter字符打印流,autoFlush设置为true,则 println、printf 或 format 方法将刷新输出缓冲区

GUI  使用Java swing

JFrame – java的GUI程序的基本思路是以JFrame为基础,它是屏幕上window的对象,能够最大化、最小化、关闭。
JPanel – Java图形用户界面(GUI)工具包swing中的面板容器类,包含在javax.swing 包中,可以进行嵌套,功能是对窗体中具有相同逻辑功能的组件进行组合,是一种轻量级容器,可以加入到JFrame窗体中。

JLabel – JLabel 对象可以显示文本、图像或同时显示二者。可以通过设置垂直和水平对齐方式,指定标签显示区中标签内容在何处对齐。默认情况下,标签在其显示区内垂直居中对齐。默认情况下,只显示文本的标签是开始边对齐;而只显示图像的标签则水平居中对齐。

JTextField –一个轻量级组件,它允许编辑单行文本。

JPasswordField – 允许我们输入了一行字像输入框,但隐藏星号(*) 或点创建密码(密码)

JButton – JButton 类的实例。用于创建按钮类似实例中的 "Login"。

JList,列表框。JList 以列表的形式展示多个选项,允许用户选择一个或多个选项。其中的选项内容由一个 ListModel 实例来维护。JList 不实现直接滚动,需要滚动显示,可以结合 JScrollPane 实现滚动效果。使用DefaultListModel管理JList中的项目。

JTextArea文本区域。JTextArea 用来编辑多行的文本。JTextArea 除了允许多行编辑外,其他基本用法和 JTextField 基本一致。

JSplitPane是一个分隔面板

JList.setSelectedIndex设置所选择的此选项卡窗格的索引

事件监听器

public void addActionListener(ActionListener l):添加指定的动作侦听器,以接收发自此按钮的动作事件。当用户在此按钮上按下或释放鼠标时,发生动作事件。如果 l 为 null,则不抛出任何异常,也不执行任何动作。addActionListener:注册事件监听者
actionPerformed:如何处理事件

System.exit(0)是将你的整个虚拟机里的内容都停掉了 ,而dispose()只是关闭这个窗口,但是并没有停止整个application;System.exit(0)是正常退出程序,而System.exit(1)或者说非0表示非正常退出程序;System.exit(status)不管status为何值都会退出程序。和return 相比有以下不同点:   return是回到上一层,而System.exit(status)是回到最上层

JOptionPane.showMessageDialog调出一个显示信息的对话框

java实现文件选择 JFileChooser;setFileSelectionMode(JFileChooser.FILES_ONLY),FILES_ONLY指示仅显示文件。showOpenDialog文件打开选择框;getSelectedFile   返回选中的文件。

JList选择事件监听器ListSelectionListener:addListSelectionListener添加监听器,创建一个实现了 ListSelectionListener的监听器,在监听器的valueChanged方法添加响应代码,getSelectedIndex():返回被选中的所有元素中最小的index。getSelectedValue()返回被选中的,index最小的元素值

Toolkit类是 Abstract Window Toolkit 的所有实际实现的抽象超类。Toolkit 的子类被用于将各种组件绑定到特定本机工具包实现。

 
 
 

基于Java的在线聊天室相关推荐

  1. 基于Java+Swing实现聊天室

    基于Java+Swing实现聊天室 一.系统介绍 二.功能展示 三.其它 1.其他系统实现 四.获取源码 一.系统介绍 Java聊天室系统主要用于实现在线聊天,基本功能包括:服务端和客户端.本系统结构 ...

  2. java web聊天室论文_基于Java网页版聊天室的设计与实现毕业论文含开题报告及文献综述(样例3)...

    <基于Java网页版聊天室的设计与实现毕业论文含开题报告及文献综述.doc>由会员分享,可免费在线阅读全文,更多与<基于Java网页版聊天室的设计与实现毕业论文含开题报告及文献综述& ...

  3. 基于java的在线聊天系统设计

    基于java的在线聊天系统设计 在进入20世纪90年代以后,信息量就以几何倍的数量进行增长,而互联网的出现则促进了信息的传播,21世纪更是一个信息大爆炸的时代,计算机及互联网已被广泛运用到各个领域及地 ...

  4. java web聊天室论文_基于Java网页版聊天室的设计与实现毕业论文含开报告及文献综述.doc...

    基于Java网页版聊天室的设计与实现毕业论文含开报告及文献综述 本科生毕业论文(设计) 题 目: 基于Java网页版聊天室的设计与实现 姓 名:学 院: 理学院 专 业: 信息与计算科学 班 级: 信 ...

  5. java web聊天室论文_基于java网页版聊天室的设计与实现毕业论文含开题报告及文献综述.doc...

    基于java网页版聊天室的设计与实现毕业论文含开题报告及文献综述.doc 还剩 52页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧,价 ...

  6. 基于Java的在线聊天APP系统分析及设计

    基于Java的在线聊天APP系统分析及设计 目录 基于Java的在线聊天APP系统分析及设计 1 一. 需求分析 3 核心用户分析 3 系统的主要功能的概述 3 项目操作流程图 4 功能详解 4 登录 ...

  7. Java网络编程,使用Java实现UDP和TCP网络通信协议,以及基于UDP的在线聊天室。

    文章目录 前言 一.网络编程概念 1.网络 2. 网络编程的目的 3.想要达到这个效果需要什么 4.网络分层 二.网络编程Java类 1.IP地址:InetAddress 2.端口 3.TCP连接 3 ...

  8. 从头搭建一个基于 Python 的在线聊天室

    本场 Chat,是基于 Python + Redis + Flask 来搭建一个简单易用的在线聊天室.完全从零开始,一步一步完成整个项目. 主要分享内容: Flask 项目结构 Python Redi ...

  9. JAVA实现在线聊天室(层层递进)

    - 本文讲述了从实现单个多个客户的收发信息(基础简易版),到各种实现代码的封装(oop版),实现群聊(群聊过渡版),到最后实现私聊(终极版)的过程 - 本文内容是在初步学习网络编程时,练习强化记忆时的 ...

最新文章

  1. 乐观锁与悲观锁——解决并发问题
  2. 显示串中只出现一次的字符.
  3. FileUpload时用Javascript检查扩展名是否有效
  4. 牛客题霸 [顺时针旋转矩阵] C++题解/答案
  5. EntityFramework_MVC4中EF5 新手入门教程之三 ---3.排序、 筛选和分页
  6. android.support.v7 fragme,打造最强RecyclerView侧滑菜单,长按拖拽Item,滑动删除Item
  7. elasticsearch查询文档数量
  8. 8999元起!vivo X Fold折叠屏旗舰今日首销:采用航天级浮翼式铰链
  9. tableau无法建立连接_欧普照明利用 Tableau 解放数字化人才,助力企业数字化转型...
  10. Atitit 切入一个领域的方法总结 attilax这里,机器学习为例子
  11. 一个有趣的例子,JS+CSS实现【兴趣是最好的老师】
  12. 白话空间统计三十:地统计学(2)前提假设
  13. 中科院计算机研究方向-考研导师选择的一些建议
  14. 时域、频域、傅里叶变换
  15. 解决无法从Git官网下载Git安装包的具体方法
  16. 学计算机如何防辐射,日常生活如何防辐射 学会这4招不用怕
  17. ViewBinding使用时出现Missing required view with ID: xxx 错误
  18. C#将自定义的时间字符串直接转换为UTC世界协调时间
  19. 进行最大公约数和最小公倍数的求解
  20. 同等学力计算机科学与技术真题-2006年

热门文章

  1. 10分钟学会用python写游戏,实例教程
  2. 说说在 Android 中如何接收系统广播
  3. 客户端本地数据破解手段 攻防总结
  4. 最近联通iPhone4上市时间确认
  5. ParameterizedType使用简单了解
  6. 熹妃q传怎么解除有缘人
  7. 1065 单身狗(输出数字前添0)
  8. Node.js实现简易的获取access_token
  9. 护航绿色低碳经济,让数据中心的可持续发展“有章可循”
  10. iOS11 input的光标错位