thinking in java知识小记(一)

知识点一(javadoc):

        使用javadoc时特别注意选择encoding和charset为utf-8,要不然生成的javadoc会是乱码,命令:javadoc -encoding utf-8 -charset utf-8 *.java

附录(javadoc标记)

@author    作者标识

@version    版本号

@param    参数

@return    描述

@deprecated    过期

@throws    异常

@see    引用

@since    描述(API在什么程序的什么版本后开发支持)

@link    链接到某个特定的成员对应的文档中(用法为)

@value    对常量进行注释时,将常量的值包含在标签中

此外还有@serial、@serialField、@serialData、{@docRoot}、{@inheritDoc}、{@literal}、{@code} {@value arg}不常用标签

示例程序:

     * @author rjh

     * @version v1.0

     * @param args The<code>args</code>will be print

     * @deprecated  从下一个版本过期

     * @exception Exception a exception will{@link Test4} be throw

     * @see #toString()

     * @serialData 2016/6/02

参考地址:http://baike.baidu.com/view/975838.htm

知识点二(按位运算符):

        需知道    1101=(1*2^0)+(0*2^1)+(1*2^2)+(1*2^3)=13,抽象出数学表达式如下:

                n为第x位上的数字(默认都是从低位到高位),则每一位上对应的十进制数通用表达式为n*2^x,最后求和即是答案

        &    按位与,若两位中有一位是0则为0否则为1,例子:

    1101    13(Decimal)

    0110    6(Decimal)

    按位与为    00100    4(Decimal)

        |    按位或,若两个输入位都是0的情况下才会产生一个0,例子:

    1101    13(Decimal)

    0110    6(Decimal)

    按位或为    1111    15(Decimal)

        ^    按位XOR(异或)若两个输入位相反则为1,例子

    1101    13(Decimal)

    0110    6(Decimal)

    按位异或为    1011    11(Decimal)

        ~    按位非,是一元运算符,只针对一个二进制数据起作用,取相应进制位上边,例子:

    1101    13(Decimal)

    按位非为    0010    2(Decimal)

知识点三(equals)

        默认的equals方法比较的是引用的句柄,而其它一些类比较的是对象内容,是因为实现了equals方法。

Object中的equals方法为:

public boolean equals(Object obj) {

        return (this == obj);

 }

  

可以很直观的看出来这是使用==号判断是否相等,即比较的是值。

补充例子:char c = (char)(Math.random() * 26 + 'a');输出的c是一个a-z中间任意英文字母,此时+号计算的是double和int值(a所对应的ACII)

原文地址:https://www.cnblogs.com/everyday0error/p/5554668.html