学习网考试学习资料

Gzu521.com

计算机等级考试二级Java初级练习(精选25题)(3)

全国计算机等级考试   点击:次   发布时间:2008-1-19   【字体: 】   来源:Gzu521.com
GZU521.COM学习网

22. 多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
  答:多线程有三种实现方法,分别为:
  ① 实现runnable接口,覆盖run()方法。
  ② 继承thread,覆盖run()方法。
  ③ 继承timertask,覆盖run()方法。
  同步的实现是在方法前加synchronized,在调用wait()和notify()。

  23. 请说出你所知道的线程同步的方法
  答:1. synchronized 方法:通过在方法声明中加入 synchronized关键字来声明 synchronized 方法。
  2. synchronized 块:通过 synchronized关键字来声明synchronized 块。

  24. 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
  答:不可以。synchronized 方法都必须获得调用该方法的类实例的锁方能执行,否则所属线程阻塞,方法一旦执行,就独占该锁,直到从该方法返回时才将锁释放,此后被阻塞的线程才能获得该锁,重新进入可执行状态。 +o%PYvX/b^1e[[ 此文转贴于我的学习网IT认证全国计算机等级考试 http://www.Gzu521.com] +o%PYvX/b^1e[

  25. 用java socket编程,实现简单的echo功能
  如: 客户端从键盘输入 hi (当用户输出exit 退出程序),服务端响应为 hi(服务器要求为多线程)
  解:服务器程序:
  import java.io.*;
  import java.net.*;
  public class myserver extends thread{
  private socket cq ;
  public myserver(socket cq)
  {
  this.cq = cq;
  }
  public void run()
  {
  try
  {
  bufferedreader in=new bufferedreader(new inputstreamreader(cq.getinputstream()));
  printwriter out=new printwriter(cq.getoutputstream());
  while(true)
  {
  string str=in.readline();
  system.out.println(str);
  out.println("message: "+str);
  out.flush();
  if(str.equals("exit"))
  break;
  }
  }
  catch(ioexception e)
  {
  system.out.println(e.message());
  }
  }
  public static void main(string[] args) throws ioexception{
  serversocket server=new serversocket(8009);
  while(true)
  {
  socket s=server.accept();
  new myserver(s).start();
  }
  }
  }
  客户端程序:
  import java.net.*;
  import java.io.*;
  public class myclient{
  public static void main(string[] args)throws exception
  {
  socket server=new socket("localhost",8009);
  bufferedreader in=new bufferedreader(new inputstreamreader(server.getinputstream()));
  printwriter out=new printwriter(server.getoutputstream());
  bufferedreader br=new bufferedreader(new inputstreamreader(system.in));
  while(true)
  {
  string str=br.readline();
  out.println(str);
  out.flush();
  if(str.equals("exit")){
  break;
  }
  system.out.println(in.readline());
  }
  server.close();
  }
  }

上一页 本文共3页:第 [1] [2] [3]

责任编辑:gzu521

IT认证分类
计算机软件水平考试
全国计算机等级考试
思科认证
微软认证
ORACLE/CIW认证
Linux认证
JAVA认证
其它认证
分类推荐信息
更多...
大类最新文章
更多...