黑马程序员--图形界面中的鼠标,键盘两个事件,做一个磁盘的文件列表,菜单,子菜单,模拟记事本。网络编程,TCP的通信协议的特点

  1. ------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! ------

1.      线程通信,分析实现思路,保证数据安全,同步技术,等待与唤醒机制,wait notify notifyAll写Object类,锁的原因。sleep,wait两个方法区别。Lock接口,程序看明白。优先级,toString ,加入,让步,守护线程。图形界面awt(重量组件,依赖操作系统),swing(轻量组件,不依赖操作系统)组件的区别。创建窗体,进行设置,事件监听。标准格式:方法中嵌套一个匿名内部类,事件源.addXXXListener(new XXXAdapter){重写方法

    public voidxxx(XXXEvent e){

    }

 

2.      第二十六天学习内容,图形界面中的鼠标,键盘两个事件,做一个磁盘的文件列表,菜单,子菜单,模拟记事本。网络编程,网络互联模型OSI TCP IP,IP地址对象InetAddress,通信协议UDP TCP  端口号,Socket服务对象,UDP的数据发送接收。TCP的通信协议的特点

 

3.      鼠标事件

  使用按钮实现Button

  按钮事件源.addMouseListener(newMouseAdapter(){

        //点击  mouseClicked

        //移入  mouseEntered

        //移出  mouseExited

  })

 事件监听器调用的方法后,传递一个鼠标的事件对象MouseEvent类的对象,MouseEvent类的方法 int getClickedCount()获取到鼠标的点击次数

 

4.      键盘事件

  使用文本框事件TextField,单行文本,实现事件

  用户按下的是什么键,过滤非法字符。组合键使用Ctrl+Enter

  事件源.addKeyListener(newKeyAdapter(){

      public voidxxx(KeyEvent e)

  })

  KeyEvent类的对象,监听器传递给方法,包装了所有键盘事件的信息

  KeyEvent类的静态常量,写的是ASCII码,不需要去记录键盘的码,知道键盘的ASCII值,直接找这个类的静态常量,常量名字都是键盘上键的名字

  KeyEvent.VK_A

  KeyEvent类方法

    int getKeyCode()获取到按下的键盘的ASCII码值

    char getKeyChar()获取到按下的键盘的键的char值

  KeyEvent类的父类方法 consume()结束当前键盘事件

  KeyEvent类的父类方法 返回都是布尔值isAltDown  isControlDown() isShiftDown().如果用户按下的是这个键,返回真

 

5.      TextField组件的使用

  单行文本区域,不能换行

  构造方法,空参数,带有String参数,文本框的默认文字内容

  setEchoChar(char c)回显字符,参数写的是*,按下键盘的时候,文本框中显示的永远都是星号

 setText(String s)设置文本框中的内容

 String  getText()获取文本框内容

 

6.      文件列表展示案例

  需要的图形界面中的组件,窗体,对话框,输入框,按钮,多行文本区域,对话框有按钮和标签Label

  实现点击按钮,输入框的回车键效果

 

  Dailog对话框,也是一个窗体容器

  构造方法,两个参数Dialog(Framefrm,String titile)

            三个参数Dialog(Framefrm,String titile,boolean model) 如果是真,阻挡后面的所有窗体

 

7.      菜单

  菜单也是对象,描述菜单对象的类

  MenuBar  菜单栏

  Menu     菜单

  MenuItem 菜单条目 -- 点击后的功能实现

 

  MenuBar类构造器空参数,窗体方法setMenuBar将菜单栏绑定到窗体中

  Menu类构造器,传递字符串的标签,标签显示在菜单上,MenuBar类的方法add,把菜单添加进去

  MenuItem类构造器,传递字符串的标签,标签显示在菜单上,Menu类方法add,吧菜单条目添加进去

  MenuItem注册事件监听器,活动事件

 

8.      简单的模拟记事本功能

  打开,保存

  窗体,菜单,多行文本区域

  FileDailog文件对话框,用户可以选择文件。构造方法三个参数,窗体,标题,模式

  文件对话框获取用户选择的文件

   StringgetDircetory()获取选择的路径

   String getFile()获取选择的文件

 

 保存功能,将文本区域中的内容获取出来,写入一个文件

 已经保存过的文件,还有从来没有保存过的文件

 

9.      网络模型

10.  IP地址

  每个接入互联网的计算,都有一个唯一的身份标识,IP地址,采用4个数字段组成,每个数字段0-255

 IP地址的分类

   A

   B

   C

   D

   E

  访问互联网使用的都是IP地址,地址数字不好记忆,域名

  192.168开头,局域网

  127.0.0.1 本地回环地址,只要你机器网卡工作正常,自己有一个识别自己的IP地址,自己找自己,或者写localhost

 IP地址也是对象,Java中把IP地址封装成了对象,描述类java.net.InetAddress类

 InetAddress类,没有公开构造方法,但是类中很多非静态方法,找静态方法可以获取本类对象,对象调用非静态方法

l  static InetAddress getLoclHost()返回本地主机IP地址对象

l  String getHostName()主机名

l  String getHostAddress()IP地址

l  static InetAddress getByName(字符串主机名)找这个主机,获取指定主机的IP地址对象,这个对象获取主机名,和IP地址

 

11.  端口号

  标识进程的逻辑地址

    一个应用程序在操作系统中打开的一扇门,门号码

  0-65535表示端口号,每个端口号只能有一个程序运行

  常见的系统端口号: 80 互联网访问默认端口号。21 FTP文件上传下载端口号

  3306 MySQL数据库访问端口号   1521 Oracle数据库端口号  1433 MSSQL端口号

  javaWeb服务器Tomcat8080

 

12.  传输协议UDP

  传输协议:数据传输的双方约定好的内容。 我们约好今天晚上11点,通个电话,拨打你的188号码,说韩语

  UDP特点:

l  数据封装在数据包中,不需要连接  发短信

l  数据限制在64KB之内

l  无连接,不可靠,丟

l  不需要连接,速度快

 

13.  Socket服务

  通信双方都有Socket服务,其实就是Socket服务之间的通信

  UDP中,实现Socket通信的类,DatagramSocket既能收,也能发

 

14.  UDP的发送端实现

  将数据封装成数据包,把数据包交给、Socket发送

  UDP中封装数据包的类,DatagramPacket.

  发送方数据包,DatagramPacket类的构造方法,字节数组,数组长度,IP地址,端口号。

  数据封装完毕后,交给DatagramSocket服务发送

  发送方DatagramSocket空参数构造,方法send(DategramPacket)发送数据包

 

15.  UDP的接收端

  创建DatagramSocket对象,使用构造方法,传递int类型的端口号,端口监听

  数据包对象DatagramPacket接收包

  使用DatagramSocket类的方法reveive(DategramPacket)接收

  拆包 DatagramPacket方法实现拆包

  int getLength()接收到的字节数组的有效个数

  InetAddress getAddress()获取发送的IP地址对象,通过对象的getHostAddress方法获取IP地址

  int getPort()发送的端口号

 

16.  单一控制台窗口的收与发

  收,发,进行两个控制台的切换

  飞秋,一个窗口就可以实现收,发

  需要多线程,实现思想,main开启两个线程,一个是Send,一个是Receive

  Send还是Receive的Socket服务采用main创建好后参数传递,自己不创建Socket服务

 

17.  TCP协议特点

l  建立连接,形成通道 -- 打电话

l  可以进行大数据传输

l  三次握手才能连接,可靠协议

l  效率低

   QQ聊过视频,不连接能聊,每次连接过程比较慢

   适合大数据,安全的传输

   TCP,客户端与服务器

   客户端的 Socket服务类,就是Socket

   服务器的 Socket服务类,就是ServerSocket

   双方只有建立好连接后,才能通信,通信采用IO流的读写方式完成

18.   

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值