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)
thinking in java知识小记(一)的更多相关文章
- effective java读书小记(一)创建和销毁对象
序言 <effective java>可谓是java学习者心中的一本绝对不能不拜读的好书,她对于目标读者(有一点编程基础和开发经验)的人来说,由浅入深,言简意赅.每一章节都分为若干的条目, ...
- Java知识体系
Java知识体系 java知识结构.jpg web框架.jpg 计算机课程体系.png 2016-08-19_090929.png 流行的哈希算法生存状况.jpg "JAVA之父" ...
- Android开发学习必备的java知识
Android开发学习必备的java知识本讲内容:对象.标识符.关键字.变量.常量.字面值.基本数据类型.整数.浮点数.布尔型.字符型.赋值.注释 Java作为一门语言,必然有他的语法规则.学习编程语 ...
- Java知识体系纲要
最近一段时间,把Java主要涉及到的大概念都大致学习了一遍,为了让自己能够更好地形成对Java知识体系的整体把握,先把学过的知识点添加到自己画的思维导图上. 整个Java知识体系的划分,我自己主要将它 ...
- 震惊!90%的程序员不知道的Java知识!
震惊!90%的程序员不知道的Java知识! 初学Java的时候都会接触的代码 public static void main(String[] args){ ... } 当时就像背公式一样把这行代码给 ...
- 实现网络数据提取你需要哪些java知识
本篇对一些常用的java知识做一个整合,三大特性.IO操作.线程处理.类集处理,目的在于能用这些只是实现一个网页爬虫的功能. Ⅰ 首先对于一个java开发的项目有一个整体性的了解认知,项目开发流程: ...
- Java知识回顾 (1) 编译环境与基本变量类型
参考资料 runoob Java知识回顾序列的相关资料,主要来自 runoob,并对其中的知识进行概况或总结,去除对一个之前了解过Java的人员无关的知识点.以便能够使得一个新手,或之前有Java经验 ...
- Java知识集锦
Java知识集锦 一.Java程序基础 1.1 开发和运行环境 1.2 Java语言概述 二.Java语法基础 2.1 基础类型和语法 2.2 对象和类型 2.3 包和访问控制 三.数据类型及类型转换 ...
- EF基础知识小记四(数据库=>模型设计器)
EF基础知识小记三(设计器=>数据库)介绍了如何创建一个空设计器模型,并如何将模型同步到数据库的表中,本文则主要介绍如何将一个存在的数据库同步到模型设计器中.为了能快速的模拟这个过程,给出一下建 ...
随机推荐
- prototype vs __proto__ 之间关系
__proto__ is the actual object that is used in the lookup chain to resolve methods, etc. __proto__是解 ...
- Asp.Net WebAPI 通过HttpContextBase获取请求参数
WEBAPI中的Request是HttpRequestMessage类型,不能像Web传统那样有querystring和from 方法接收参数,而传统的HttpReqest的基类是HttpReqest ...
- windows身份验证,那么sqlserver的连接字符串的
Data Source=计算机名称或ip地址;Initial Catalog=数据库名称;Integrated Security=True windows身份验证不需要psw的Provider=SQL ...
- C++编译指令#pragma pack的配对使用
#pragma pack可以用来指定C++数据结构的成员变量的内存对齐数值(可选值为1,2,4,8,16). 本文主要是强调在你的头文件中使用pack指令要配对使用,以避免意外影响项目中其他源文件的结 ...
- uva 10922 - 2 the 9s
題目意思:讀取一數字,此數字最大有1000位.計算該數字是否為九的倍數?如是,再計算其階層數. ※判斷是否為九的倍數:所有位數相加 ÷ 9=0,即為九的倍數. ※計算階層數:所有位數相加後得出的第一個 ...
- js分页算法
function get_hs_page(cur_page, total_page) { var result = ""; for(var i = 1; i <= total ...
- PHP二维数组排序函数
PHP一维数组的排序可以用sort(),asort(),arsort()等函数,但是PHP二维数组的排序需要自定义. 以下函数是对一个给定的二维数组按照指定的键值进行排序,先看函数定义: functi ...
- ThinkPHP内置函数详解D、F、S、C、L、A、I
单字母函数D.F.S.C.L.A.I 他们都在ThinkPHP核心的ThinkPHP/Mode/Api/functions.php这个文件中定义. 下面我分别说明一下他们的功能: D() 加载Mode ...
- 类和对象:面向对象编程 - 零基础入门学习Python037
类和对象:面向对象编程 让编程改变世界 Change the world by program 经过上节课的热身,相信大家对类和对象已经有了初步的认识,但似乎还是懵懵懂懂:好像面向对象编程很厉害,但不 ...
- 消息机制 - Windows程序设计(SDK)004
消息机制 让编程改变世界 Change the world by program 内容节选: 我们来回顾一下,窗口是怎么从代码中诞生出来的? 1. 首先我们是通过给 WNDCLASS 窗口类结构各个成 ...