《网络编程技术》课程实验指导书
《网络编程技术》课程实验指导书 上海大学通信与信息工程学院 2005年9月 目录 实验一用户界面及多线程程序设计(2) 实验二网络通信程序设计(5) 实验三服务器端小程序设计(9) 实验四综合实例(11) 实验一用户界面及多线程程序设计 实验目的:1掌握java运行环境的配置 2理解事件响应机制 3掌握java基本用户界面设计、多线程程序设计 实验仪器:网络计算机,Jcreator pro 2.0 , JDK1.4, Windows2000 实验项目及步骤: 1 Java运行环境配置 安软件提示安装Jcreator2.0和JDK1.4。 在 Windows2000 环境中增加环境变量.;c:\jdkl.2\lih\dt.jar;c:\/dkL2\lib\toolsJar 在Jcreator pro 2.0编辑下面源程序,验证环境配置是否正确。 import java.awt.Graphics; public class HelioApplet extends java.applet.Applet{ public void init()( resize(250,250); } public void paint(Graphics g)( g.drawString(”Hello”,50,100); } } 2基本用户界面设计 调试下面“计算器”程序,理解事件响应机制。 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class CalculatorTest extends JFrame implements ActionListener( J Label label 1 =new JLabel(MPlease The First Num“); JLabel labe!2=new JLabel(MPlease The Second Num“); JLabel Iabel3=new JLabel(“The Result is“); JTextField textl=new JTextField(15); JTextField text2=new JTextField(l5); JTextField text3=new JTextField(15); JButton button 1 =new JButton(“加”); JButton button2=new JButton(“减“); JButton button3=new JButton(“乘”); JButton button4=new JButton(H除”); public CalculatorTest()( superC calculatorTest“); Container c=getContentPane(); c.setLayout(new FlowLayout()); c.add(label l);c.add(text 1); c.add(labe!2);c.add(text2); c.add(button l);c.add(button2); c.add(button3);c.add(button4); c.add(labe!3);c.add(text3); button 1 .addActionListener(this); button2.addActionListener(this); button3.addActionListener(this); button4.addActionListener(this); addWindowLi stener( new WindowAdapter() ( public void windowClosing(WindowEvent e)( System.exit(O); } } ); setSize(220,250); } public void actionPered(ActionEvent e)( float al,a2,a3; String strl,str2; strl=textl .getText(); al =Float.valueOf(str 1).float Vai ue(); str2=text2.getText(); a2=Float.valueOf(str2).float Value(); if(e.getSource()==button 1){ a3=al+a2; text3.setText(strl+“+“+str2+“=“+String.valueOf(a3)); } if(e.getSource()==button2) ( a3=al-a2; text3.setText(strl+,,-n+str2+,,=“+String.valueOf(a3)); } if(e.getSource()==button3) ( a3=al*a2; text3.setText(strl+,,* ,+str2+ =“+String.valueOf(a3)); } if(e.getSource()==button4) ( a3=al/a2; text3.setText(strl+ 7“+str2+“=“+String.valueOf(a3)); } } public static void main(String args[])( JFrame frame=new CalculatorTest(); frame.show(); 3多线程程序设计 参考下面程序结构,利用多线程技术实现动态时钟。 import java.applet.*; import java.awt.*; import java.utiL*; public class RunnableDemo extends Applet implements Runnable( Thread clockThread; public void start(){ 〃启动多线程 ) public void run()( 〃多线程运行主体 } public void paint(Graphics g)( 〃重画功能实现 } public void stop() { 〃线程停止 实验二网络通信程序设计 实验目的:1掌握java的基本网络支持 2掌握Socket通信机制 3结合多线程技术实现聊天室程序设计 实验仪器:网络计算机,Jcreator pro 2.0 , JDK1.4, Windows2000 实验项目及步