java10网络编程(简化版).pptVIP

  • 0
  • 0
  • 约8.72千字
  • 约 46页
  • 2019-12-02 发布于湖北
  • 举报
第九章 Java网络程序设计基础 知识点: 了解端口、套接字等网络程序常用专有名词的意义 了解TCP/IP与UDP等网络协议的数据传递方式 了解Java语言中的常用数据流 掌握客服/服务Socket通信的流程 掌握多线程与其他程序的结合 本章主要介绍以下4个部分的内容: 1.Socket编程常用专有名字 2.TCP/IP与UDP通信比较 3.客服/服务Socket通信程序设计 4.编写多线程的客户/服务程序 一、 Socket编程简介 Socket编程常用专有名字 2、 Socket编程 3、端口(Port) 3、端口(Port) 4、 ServerSocket 4、 ServerSocket 二、 TCP/IP与UDP通信比较 2、 流通信协议 3、 TCP/IP与UDP通信比较 三、客服/服务Socket通信程序设计 1、我们通过下图来了解一下客服/服务Socket通信程序设计的整个流程: 2、数据流回顾 3、使用TCP协议的Socket网络编程 (2)打开一个Socket对象。 (3)创建一个数据输入流和一个数据输出流。 (4)关闭Socket。 3、使用TCP协议的Socket网络编程 3、使用TCP协议的Socket网络编程 (1)服务器程序设计 (2)客户程序设计 (3)结果讨论 (4)思考 四、编写多线程的客户/服务程序 1、JAVA多线程的优势: 2、创建线程的方式 2、创建线程的方式 2、创建线程的方式 2、创建线程的方式 2、创建线程的方式 2、创建线程的方式 3、控制线程的常用方法 3、控制线程的常用方法 3、控制线程的常用方法 3、控制线程的常用方法 4、线程的生命周期及控制 4、线程的生命周期及控制 四、编写多线程的客户/服务程序 1、我们通过下图来了解一下多线程服务与客户Socket通信程序设计的整个流程: 2、多线程服务与客户Socket通信程序设计实例开发 2、多线程服务与客户Socket通信程序设计实例开发 (1)服务器程序 (2)客户程序 public static void main(String argv[ ]){ MyThread t1=new MyThread(Thread1); MyThread t2=new MyThread(Thread2); t1.start(); t2.start(); } } 方法二:通过实现Runnable接口 提供一个实现接口Runnable的类作为线程的目标对象。在初始化一个Thread类或子类生成线程实例时,把目标对象传递给这个线程实例,由该目标对象提供线程体run()方法。这时,实现接口Runnable的类还可以再继承其他类,即实现接口Runnable的类可以不单纯是提供线程体。 import java.lang.*; class MyThread2 implements Runnable{ public void run(){ for(int i=0;i3;i++){ System.out.println(Thread.currentThread().getName()+:+i); try{ Thread.sleep(1000); }catch(InterruptedException e){ e.printStackTrace(); } } } 注意:这里必须指明当前线程。 public static void main(String argv[]){ MyThread2 s=new MyThread2(); MyThread2 k=new MyThread2(); Thread t1=new Thread(s,Thread1); Thread t2=new Thread(k,Thread2); t1.start(); t2.start(); } } 注意:两种不同方式进行多线程程序设计的线程类的创建和线程对象的初始化方式有什么不同。你怎么选择 void run() 线程所执行的代码 void start() 使程序开始执行,多次调用会产生异常 void sleep(long milis) throws InterruptedException 让线程睡眠一段时间,此期间线程不消耗CPU资源 void interrupt() 中断线程 static boolean interrupted() 判断当前线程是否被中断(会清除中断状态标记) boolean isInterrupted() 判断指定线程是否被中断 static Thread currentThread() 返回当前线程对象的引用 void set

文档评论(0)

1亿VIP精品文档

相关文档