1
java注释
在Java的编写过程中我们需要对一些程序进行注释,除了自己方便阅读,更为别人更好理解自己的程序,所以我们需要进行一些注释,可以是编程思路或者是程序的作用,总而言之就是方便自己他人更好的阅读。
-
中文名
java注释
-
方便
自己他人更好的阅读
-
程序
编程思路
-
主要种类
注释一行
快速
导航
- 说明
- 注释例子
- 作用
- 速算游戏
- java注解
- 自定义
主要种类
对于Java注释我们主要了解三种:
1, // 注释一行
2, /* ...... */ 注释若干行
3, /**……*/文档注释
说明
/** ...... */ 注释若干行,并写入 javadoc文档通常这种注释的多行写法如下:
/**
* .........
* .........
*/
javadoc提取注释的工具/**注释内容*/ (其余两种和C++注释一样).
注:注释内容即不会被编译的内容,只是解释说明
注释例子
import java.awt.*; //调用awt包
import java.applet.*;
import java.awt.Color; //调用awt中的Color类
public class extends Applet implements Runnable {
Image buffer;// 定义图像对象
Graphics gContext;// 定义图形上下文
Thread animate;// 定义一个线程
String s = "这是文字动画";
int w, h, x, y, size = 12; // 定义整形变量并赋值
/**
* Applet初始化
*
* @see java.applet.Applet
* @return 无
*/
public void init() {
w = getWidth();// 返回组件的当前宽度。
h = getHeight();// 返回组件的当前高度。
buffer = createImage(w, h);// 创建一个宽W高H的图形区域。 (创建一幅用于双缓冲的、可在屏幕外绘制的图像)
gContext = buffer.getGraphics();// 获得图像使用的图形上下文
gContext.setColor(Color.blue);// 设置图形上下文的当前颜色为蓝色
}
/**
* Thread 线程启动操作
*/
public void start() {
// 开始animate线程
if (animate == null) {
animate = new Thread(this);
animate.start();
}
}
/**
* Thread 线程终止时的处理操作 以释放资源
*/
public void stop() {
// 结束animate线程
if (animate != null)
animate = null;
}
/**
* Runnable接口的实现
* 执行所需的操作
*/
public void run() {
while (true) {
//X,Y的坐标设定
x = (w - s.length() * size) / 2;
y = (h + size) / 2;
gContext.setFont(new Font("宋体", Font.PLAIN, size));
gContext.drawString(s, x, y);//绘制一串字符s内容的文本
repaint();//重画图形
try {
animate.sleep(50);//线程休眠50ms
} catch (InterruptedException e) {// 捕获异常
}
gContext.clearRect(0, 0, w, h);//通过使用当前绘图表面的背景色进行填充来清除指定的矩形.0 - 要清除矩形的x 坐标。0 - 要清除矩形的 y 坐标。w - 要清除矩形的宽度。h - 要清除矩形的高度。
if (++size > 40)
size = 12;
}
}
/**
* Applet画图操作方法
*
* @see java.applet.Applet
*/
public void paint(Graphics g) {
g.drawImage(buffer, 0, 0, this);//绘制指定的buffer的图像
}
/**
* Applet刷新操作,重新绘制图形
*
* @see java.applet.Applet
*/
public void update(Graphics g) {
paint(g);//重新调用paint函数绘制图形
}
}
作用
通过注释提高Java源程序代码的可读性;使得Java程序条理清晰,易于区分代码行与注释行。另外通常在程序开头加入作者,时间,版本,要实现的功能等内容注释,方便后来的维护以及程序员的交流。
速算游戏
规则如下:
1、点击“开始游戏”按钮,游戏开始,系统会发出四张牌
2、并把组合的表达式(四张牌的四则混合运算表达式)输入到输入框里(最终结果=24)
3、点击“确定”按钮,游戏将会计算你输入的表达式是否正确,并且给出提示
4、如果输入的表达式不正确,则会让用户重新输入,如果输入的表达式正确,则重新开始游戏
猜数字
importjava.util.Random; //一上来导入包不用说了吧 publicclassCaishuzi{ //服务器端口号8181 staticfinalintPORT=8181; //声明一个服务器套接字 ServerSocketserverSocket; //客户端套接字 Socketsocket; //数据输入流 DataInputStreamnetIn; //数据输出流 DataOutputStreamnetOut; //随机数的数组 intrandomNum[]; //游戏等级 intlevel=0; publicCaishuzi(){//猜数字的构造函数 initRandomNum(); waitConnect(); } privatevoidinitRandomNum(){//初始化随机数 randomNum=newint[5];//数组初始化,大小为5 Randomran=newRandom();//随机数类 for(inti=0;i<5;i++){ randomNum[i]=ran.nextInt(100);//生成5个随机数,范围0~99 } } // privatevoidwaitConnect(){//等待客户端连接 BufferedReaderansiIn=newBufferedReader(newInputStreamReader( System.out.println("服务器启动."); try{ serverSocket=newServerSocket(PORT);//服务器套接字 System.out.println("等待客户端连接......"); socket=serverSocket.accept();//侦听并接受到此套接字的连接,注意这句话会一直运行直到有客户端连上 System.out.println(""+socket); netIn=newDataInputStream(socket.getInputStream()); netOut=newDataOutputStream(socket.getOutputStream());//分别得到客户端的输入输出流,这样就可以Client—Server间相互传递数据了 }catch(Exceptione){ e.printStackTrace(); } } // privatevoidprocessAnswer(){//应答客户端 try{ StringclientMsg=netIn.readUTF();//取得客户端传过来的字符 while(!clientMsg.equals("end")){//不停循环,但如果客户端传过来的字符是"end",就结束了 System.out.println("客户端:"+clientMsg); System.out.print("生成随机数为"+randomNum); intclientInputNum=Integer.parseInt(clientMsg);//把客户端猜的数字转成int型 if(clientInputNum<0||clientInputNum>100)//小于0或大于100不行哦 System.out.print("输入超过范围,请输入0~100以内的数字"); StringserverMsg=""; if(clientInputNum==randomNum[level]){ serverMsg="恭喜你猜对了!"; }elseif(clientInputNum>randomNum[level]){ serverMsg="您输入太大了!"; }elseif(clientInputNum<randomNum[level]){ serverMsg="您输入太小了!"; }
//以上为猜的数字和服务器生成的随机数比,究竟是大于小于还是等于呢,把结果设到serverMsg变量 netOut.writeUTF(serverMsg);//然后把信息传到客户端 if(serverMsg.equals("end")){ return; } clientMsg=netIn.readUTF();//继续下一次猜数字 } }catch(Exceptione){ // System.out.print("连接关闭或数据处理错误"); } } publicstaticvoidmain(String[]args){ Caishuzis=newCaishuzi(); } }
模块注释
1、源文件注释
源文件注释采用 /** …… */,在每个源文件的头部要有必要的注释信息,包括:文件名;文件编号;版本号;作者;创建时间;文件描述包括本文件历史修改记录等。中文注释模版:
/**
* 文 件 名 :
* CopyRright
* 文件编号:
* 创 建 人:
* 日 期:
* 修 改 人:
* 日 期:
* 描 述:
* 版 本 号:
*/
类(模块)注释:
类(模块)注释采用 /** …… */,在每个类(模块)的头部要有必要的注释信息,包括:工程名;类(模块)编号;命名空间;类可以运行的JDK版本;版本号;作者;创建时间;类(模块)功能描述(如功能、主要算法、内部各部分之间的关系、该类与其类的关系等,必要时还要有一些如特别的软硬件要求等说明);主要函数或过程清单及本类(模块)历史修改记录等。
英文注释模版:
/**
* CopyRright
* Project:
* Module ID:
* Comments:
* JDK version used:
* Namespace:
* Author:
* Create Date:
* Modified By:
* Modified Date:
* Why & What is modified
* Version: