java程序求注释

java程序求注释,第1张

[1] MainThread类为服务端程序,运行过程中会生成SubThread线程去与客户端程序通讯

[2] Client类为客户端程序,让用户输入数据与服务端程序进行通讯

[3] 具体解释如下

[4] 已测试通过,笑纳^

import javaioIOException;

import javanetServerSocket;

import javanetSocket;

/

[1]创建7777端口,循环等待客户端连接<br>

[2]如果有客户端连接,生成一个socket对象,并生成一个子线程去处理接数据通讯<br>

/

public class MainThread {

public MainThread() {

try {

ServerSocket ss = new ServerSocket(7777);// 以创建7777端口

Systemoutprintln("服务器启动");

while (true) {

Socket socket = ssaccept();// 等待数据,如果没有数据会一直等待

new SubThread(socket)start();// 新建一个线程,将socket为参数传递过去,并启动此新线程

}

} catch (IOException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

}

/

服务端程序入口

/

public static void main(String[] args) {

// TODO Auto-generated method stub

// 创建MainThread类,实际上是调用MainThread类的构造函数

new MainThread();

}

}

import javaio;

import javanetServerSocket;

import javanetSocket;

/

[1]由服务端主线程创建,用于与客户端数据通讯<br>

[2]如果客户端发来的数据是以byebye开头的数据,则结束线程,否则将所收到的数据直接发送会给客户端<br>

/

public class SubThread extends Thread {

byte[] buffer = new byte[256];// 数据缓冲区

private InputStream is;// 输入流

private OutputStream os;// 输出流

Socket socket;// socket套接字

public SubThread(Socket s) {

// 由MainThread类调用此函数

thissocket = s;// 接收socket参数

}

public void run() {

try {

is = socketgetInputStream();// 从socket中取得输入流

os = socketgetOutputStream();// 从socket中取得输出流

} catch (IOException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

while (true) {

try {

int i = isread(buffer);// 读取缓冲区的数据

String str = new String(buffer, 0, i);// 复制所读到的数据,保存为一个String

Systemoutprintln("recieved:" + str);

if (strstartsWith("byebye"))

break;// 如果接收到的数据以"byebye"开头,就退出while循环,也就是退出线程

oswrite(strgetBytes());// 如果是其他字符开头,则将数据直接回复给对方

} catch (IOException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

}

}

}

import javaio;

import javanetServerSocket;

import javanetSocket;

/

[1]连接服务端程序,也就是localhost的7777端口 <br>

[2]接收用户输入数据,并发送给服务端 <br>

[3]等待服务端返回数据<br>

[4]输出服务端返回的数据<br>

@author lenovo

/

public class Client {

public Client() {

byte[] buffer = new byte[256];

try {

Socket socket = new Socket("localhost", 7777);// 连接localhost主机(就是本台电脑)的7777端口,生成socket对象

InputStream is = socketgetInputStream();// 从socket中取得输入流

OutputStream os = socketgetOutputStream();// 从socket中取得输出流

while (true) {

Systemoutprintln("输入:");// 提示用户输入数据

int i = Systeminread(buffer);// 接收用户输入的数据

String str = new String(buffer, 0, i);// 复制用户输入的数据保存为一个String

oswrite(strgetBytes());// 交数据发送到本机的7777端口

i = isread(buffer);// 等待对方的返回

str = new String(buffer, 0, i);// 复制对方返回的数据保存为String

Systemoutprintln("recieved:" + str);

}

} catch (IOException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

}

/

客户端程序入口

@param args

/

public static void main(String[] args) {

// TODO Auto-generated method stub

// 新建Client类,实际是调用Client类的构造函数

new Client();

}

}

注释是用来给开发者或者是软件后续的维护者来看的。一般是用来描述这一段代码或者是程序做了些什么样的事情。实现了哪些功能,java里面注释代码,可以分为行注释和块注释,方法注释等。

行注释就是在需要注释的代码前加 //

块注释则是用 / 和 / 把文本段落框起来即可

class Point {

    private double x; //类的属性

    private double y;

    Point(double x1, double y1) { //构造方法,给属性赋值。new Point(10,20),所以x=10,y=20

     x = x1; 

     y = y1;

    }

    public double getX() { return x; } //返回属性的值

    public double getY() { return y; }

    public void setX(double i) { x = i; } //给属性赋值

    public void setY(double i) { y = i; }

}

class Circle {

    private Point o;

    private double radius;

    Circle(Point p, double r) {//构造方法,就是在main方法中new的时候要执行的方法,会给o和radius赋值。

     o = p; 

     radius = r;

    }

    Circle(double r) {//构造方法

        o = new Point(00, 00);

        radius = r;

    }

    

    boolean contains(Point p) {

     double x = pgetX() - ogetX();

     double y = pgetY() - ogetY();

     if(xx + yy > radius  radius) return false;

     else return true;

    }

public void setO(double x, double y) {

        osetX(x); 

        osetY(y);

    }

    public Point getO() { return o; }

    public double getRadius() { return radius;}

    public void setRadius(double r) { radius = r;}

    public double area() { 

        return 314  radius  radius;

    }

    public double per(){

     return 3142radius;

    }

}

public class aaa {

  public static void main(String args[]) {

         Circle c1 = new Circle(new Point(10,20), 90); //首先new Point(10,20),会调用Point类的构造方法。得到一个Point对象,这个对象的属性x=10 y=20

 //然后看外面,调用Circle类的第一个构造方法。所以radius=90

         Systemoutprintln("c1 area = "+c1area());//这样执行Circle的area()方法时,返回3149090的结果

         Systemoutprintln("c1 area = "+c1per());//同样,返回314290的结果

}

}

不明白再问吧

public class myException extends Exception { //自定义的类继承JAVA的异常类

private static final long serialVersionUID = 1L; //序列化

public myException() { //构造方法 无参数

super("我定义的异常"); } //调用父类的构造方法

public static void main(String args[]) {//main方法 程序的入口

try { //try catch 语句块

new Exer6_6()mymethod1();//实例化 Exer6_6 调用它的mymethod1 方法

} catch (Exception e) {

Systemoutprintln(egetMessage()); //控制台打印异常信息

eprintStackTrace(); //异常信息

Systemoutprintln("myException" + egetClass()getName()); //得到具体的异常类名

}

}

}

class Exer6_6 { //自定义的类

public void mymethod1() throws myException {//一个普通方法抛出异常

mymethod2(); //调用这个方法mymethod2

}

public void mymethod2() throws myException { //一个普通方法抛出异常

throw new myException();//抛出一个自定义的异常信息类的实例

}

}

/ Book类/

public class Book

{

String bookName; / 书名变量 /

String authorName; / 作者名变量 /

int nopages;

boolean available;

Book(String book, String author, int pages, boolean status) / 构造函数 /

{

bookName = book; / 给类内的bookName赋初值,接受传入的参数 /

authorName = author; / 给类内的authorName赋初值,接受传入的参数 /

nopages = pages; / 给类内的nopages赋初值,接受传入的参数 /

available = status; / 给类内的available赋初值,接受传入的参数 /

}

boolean isAvailable() / 判断是否有这本书的函数 ,根据类内的available变量来判断/

{

if(available)

{

Systemoutprintln("有这本书");

return false;

}

else

{

Systemoutprintln("没有这本书");

return false;

}

}

/ 主函数,由这个作为入口开始整个程序/

public static void main(String[] args)

{

Book objBook = new Book("CoreJava", "Albert", 45, true); / 声明并实例化一个Book对象,因为它的构造函数要求要四个参数,所以传入四个/

/ 其中"CoreJava"对应构造函数中的String book, "Albert"对应String author, 45就是int pages也就是45页,true就对应是否可用的参数boolean status/

User objUser = new User(); / 声明并实例化一个User对象/

objUsergetBookStatus(objBook); / 调用User的getBookStatus方法来判断objBook这本书是否可用/

}

}

/ User类/

class User

{

/ 根据传入的Book对象判断这个Book对象是否可用/

void getBookStatus(Book objBook)

{

objBookisAvailable();

}

}

以上就是关于java程序求注释全部的内容,包括:java程序求注释、为什么要为程序添加注释,在java程序中如何为程序添加注释、对一个程序代码加上注释详细一点关于java的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10101762.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存