Java基础入学考blog-9

来源:互联网 发布:8月信贷数据 编辑:程序博客网 时间:2024/05/21 14:03

基础复习-第9天

----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------



网络编程:

         网络基础知识

                  Mac地址:每个网卡专用地址,也是唯一的。

                  端(port):应用程序(进程)的标识(网络通信程序)

                           OS中可以有65536(2^16)个端口,进程通过端口交换数据。

                           端口是一种抽象的软件结构,与协议相关:TCP的23端口和UDT的23端口为两个不同的概念。

                           端口应该用1024以上的端口,以下的端口都已经设定功能。

                  协议:为了进行网络中的数据交换而建立的约定,协议是为了保证通信的安全,不同层的协议是完全不同的。

                           TCP协议:传输层的协议,重发一切错误的信息

                           IP协议:保证地址和主机一一对应(ip地址+网卡地址)

                          

         TCP编程:

                  TCP是一种面向连接的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方的成对的两个socket之间必须建立连接,以便在TCP协议的基础上进行通信,当一个socket(通常都是server socket)等待建立连接时,另一个socket可以要求进行连接,一旦这两个socket连接起来,它们就可以进行双向数据传输,双方都可以进行发送或接收操作。

                           1) 服务器分配一个端口号,服务器使用accept()方法等待客户端的信号,信号一到打开socket连接,从socket中取得OutputStream和InputStream。

                       2) 客户端提供主机地址和端口号使用socket端口建立连接,得到OutputStream和InputStream。

 

                  Server端编码的步骤:

                           1、new ServerSocket 打开端口

                           2、调ServerSocket的accept()等待客户连接,当连接成功返回交互的Socket。

                           3、调用Socket.getInputStream,getOutputStream获得服务器端的IO流

                           4、用处理流封装后与客户端交互,记住你读我写,一读一写。

                           5、关闭单一客户端调用Socket的close(),关闭服务器调ServerSocket的close();

 

                  Socket端编码步骤:

                           1、new Socket(Server ip,Serverport)试图连接,如成功才有对象

                           2、调用Socket.getInputStream,getOutputStream获得服务器端的IO流

                           3、用处理流封装后与客户端交互,记住你读我写,一读一写。

                           4、关闭,只有Socket的close()方法。


图形界面:

         布局管理器:

                  CardLayout:卡片布局,面板重叠放置,只能看到一个,最先添加的会被显示出来,可以进行翻动

                           两种构造方法:

                                    CardLayout()

                                         创建一个间隙大小为 0 的新卡片布局。

                                    CardLayout(int hgap, int vgap)

                                         创建一个具有指定的水平和垂直间隙的新卡片布局。

                       常用的方法:

                                    previous(Container parent)

                                         翻转到指定容器的前一张卡片。

                                show(Containerparent, String name)

                                          翻转到已添加到此布局的具有指定 name 的组件

                                next(Containerparent)

                                         翻转到指定容器的下一张卡片。

                                first(Containerparent)

                                         翻转到容器的第一张卡片。        

                                last(Containerparent)

                                         翻转到容器的最后一张卡片。

                                        

              GridBagLayout:增强版的网格布局,组件可以跨行跨列的进行布局。

                       构造方法:

                                GridBagLayout()

                                         创建网格包布局管理器。

                       注意:

                                该布局管理器的具体实现需要借助GridBagConstraints类,利用GridBagConstraints类的属性对组件进行设置,具体内容查看API文档。

                               

         菜单项:

                  JMenuBar:菜单栏的实现,将JMenu对象添加到菜单栏以构造菜单

                           构造方法:

                                    JMenuBar()

                                         创建新的菜单栏。

                                        

                  JMenu:菜单的该实现是一个包含JMenuItem的弹出窗口

                           构造方法:

                                    JMenu(String s)

                                         构造一个新JMenu,用提供的字符串作为其文本。

                                        

                  JMenuItem:菜单中的项的实现,菜单项本质上是位于列表中的按钮

                           构造方法:

                                    JMenuItem(String text)

                                         创建带有指定文本的JMenuItem。

                               

AWT事件模型:

         事件模型的三要素:

                  事件源(Object):事件的产生者。

                  事件(EventObject):描述发生了什么事情。 

                  事件监听(EventListener):事件的处理者

                  关系:

                           事件只与事件源有关,与事件监听无关

                           一个事件源可以注册多个事件监听。

                           一个事件监听器可以在多个事件源中注册。

                           一个事件源可以就同一类事件注册多个事件监听。

        

         事件处理机制:委派式的处理机制(是一种松耦合)

                  组件自身会产生事件对象,但本身不一定负责处理,而是交给一个监听者去处理

                 

         实现监听的步骤:

                  a. 实现监听接口implements XxxxListener

                  b. 重写方法actionPerformed(ActionEvent e)

                  c. 注册监听addXxxxListener(ActionListener l)

                 

         适配器:一个重写了所有接口中方法的类

                  在java.awt.event包中,会有一些适配器,也就是把相应的XxxxListener,换成XxxxAdapter就是适配器。

                  在AWT中经常用匿名内部类来继承适配器做监听


----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 小米note充电充不进去电怎么办 乐视手机otg功能用不了怎么办 小米4c手机玩王者荣耀卡怎么办 捡的小米6被锁了怎么办 小米5s手机玩穿越火线卡怎么办 苹果平板更新完系统登录不上怎么办 谷歌商店一直卡在核对信息怎么办 贴吧邮箱忘了无法登陆怎么办 华为手机绑定了账号忘了怎么办 淘宝的手机多次注册无法登录怎么办 电脑看不到U盘里面的文件怎么办 c盘访问权限被锁了怎么办 xp系统电脑开机密码忘记了怎么办 华为荣耀9用久了卡怎么办 华为p9相机模糊敲打就正常怎么办 华为p9蓝频按什么都没反映怎么办 华为手机p9开机密码忘了怎么办 华为P9手机开机一直闪屏怎么办 荣耀畅玩7x用户数据锁定怎么办 华为手机p9的指纹解锁坏了怎么办 华为P9青春版外放音量小怎么办 华为麦芒5的开关键失灵怎么办 小米手机进水黑屏但是有声音怎么办 小米5手机突然黑屏没电怎么办 小米4开不了机怎么办充电没反应 小米手机充电没反应开不了机怎么办 红米note手机开不了机怎么办 红米手机突然黑屏开不了机怎么办 红米2a开不开机怎么办 红米4手开不了机怎么办 红米4a开不了机怎么办 魅族手机拨打电话时黑屏怎么办 金立手机拨打电话时黑屏怎么办 红米手机刷机黑屏了怎么办 酷派手机开机黑屏但能嗡嗡响怎么办 酷派手机忘记锁屏密码怎么办 酷派手机锁屏密码忘了怎么办 酷派手机不停的开机关机怎么办 苹果6手机进水了开不了机怎么办 金立手机突然黑屏开不了机怎么办 丢失手机又忘了ID锁怎么办?