java服务器端编程基础入门
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
import java.awt.*;
import java.awt.event.*;
import .*;
import java.io.*;
public class ChatServer
{
public static void main(String[] args)
{
boolean started = false; // 判断服务器是否启动了,先假定没有启动
ServerSocket ss = null;
DataInputStream dis = null;
try
{
ss = new ServerSocket(8888);
started = true; // 服务器已经启动了,设置started为true
while (started)
{ //当服务器端启动时。。。。
boolean bConnect = false; //判断服务器和客户端的连接是否已经建立,没有为false,连接成功返回true
Socket s = ss.accept(); //accept()与readUTF()方法一样,都是一个阻塞式方法,如果没有收到连接请求,则一直等待。。。。。
bConnect = true; //连接成功,设置bConnect为true
System.out.println("一个连接已经建立!"); // --------------------------
dis = new DataInputStream(s.getInputStream());
while (bConnect)
{
String str = null;
str = dis.readUTF(); //如果客户端突然断开连接,该语句就会抛出异常EOFException,所以我们必须得对dis.readUTF();进行异常处理
//readUTF()是阻塞式方法,如果得不到数据,则继续等待,直到读取到数据为止
System.out.println("从客户端接受的数据是:" + str);
}
}
}
catch (BindException e)
{
System.out.println("端口已被占用,其使用其他端口");
System.out.println("请关闭相关程序,重新运行!");
System.exit(-1);
}
catch (EOFException e)
{
System.out.println("客户端已经断开连接!");
}
catch (IOException e)
{
//e.printStackTrace();
System.out.println("服务器端读写错误!");
}
finally
{
try
{
if (null != ss) //如果监听程序打开了,则关闭网络监听程序
{
ss.close();
ss = null;
}
if (null != dis) //如果输入流打开了,则关闭输入流
{
dis.close();
dis = null;
}
}
catch (Exception e)
{
}
}
}
}
class A
{
int divide(int a, int b)
{
int m = 0;
try
{
m = a/b;
}
catch (ArithmeticException e)
{
System.out.printf("除数不能为零!\n");
}
//System.out.printf("1111");
return m;
}
}
public class TestExcep_1
{
public static void main(String[] args)
{
new A().divide(6, 2);
//System.out.printf("2222");
}
}
public class TestExcep_2
{
public static void main(String[] args)
{
int m = 99;
try
{
m = 2;
System.out.printf("m = %d\n", m);
}
catch (Exception e)
{
}
System.out.printf("m = %d\n", m);
}
}
import java.util.Scanner;
import java.util.InputMismatchException;
public class TestExcep_3
{
public static void main(String[] args)
{
int i;
Scanner sc = new Scanner(System.in); //System.in 表示键盘
try
{
i = sc.nextInt();
System.out.printf("i = %d\n", i);
}
catch (InputMismatchException e)
{
System.out.printf("输入数据不合法,程序被终止!\n");
}
}
}