java基础--初学时记
Java基础
注释
单行注释
//注释
多行注释
/* */
文档注释
/** */
标识符
关键字
abstract | assert | boolean | break | byte |
---|---|---|---|---|
case | catch | char | class | const |
continue | default | do | double | else |
enum | extends | final | finally | float |
for | goto | if | implements | import |
instanceof | int | interface | long | native |
new | package | private | protected | public |
return | strictfp | short | statuc | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
标识符注意点
- 所有标识符都应该以字母,美元符或者下划线开始
- 首字符之后可以任意使用字母,美元符,下划线或者数字
- 不能使用关键字当作变量名或者方法名
- 标识符是大小写敏感的
数据类型
强类型语言
- 要求变量的使用要严格符合规定,所有变量都必须先定义后使用
基本类型
基本类型比较值
数值类型
整数类型
-
byte 占一个字节,范围:-128–127
-
short占两个字节,范围:-32768–32767
-
int占四个字节,范围: -2147483648 (-2的31次方)–2147483647 (2的31次方-1)
-
long占八个字节,范围:-9223372036854775808 (-2的63次方)–9223372036854775807 (2的63次方-1)[数字后面加L]
二进制0b 0b10=2
十进制 10=10
八进制0 010=8
十六进制0x 0x10=16
浮点类型
有限 离散 舍入误差 大约数(接近但不等于)
银行使用BigDecimal数学工具类,不使用float
- float占四个字节[数字后面加F]
- double占八个字节
字符、
所有字符本质还是数字
- 字符类型char占两个字节
- 转义字符\t 制表符(table)\n 换行符
Boolean类型
- 占一位,值为ture或false
引用类型
引用类型相比较比较内存地址
类
接口
数组
字节
1bit表示1位
1Byte表示一个字节1B=8b
1024B=1KB
1024KB=1M
位
位(bit):计算机内部数据存储的最小单位,11001100是一个八位二进制数
字节
字节(byte):是计算机中数据处理的基本单位,习惯用大写B来表示
1B(byte,字节)=8bit(位)
字符
字符:是指计算机中使用的字母、数字、字和符号
类型转换
由于Java是强类型语言,所以要进行有些运算的时候需要用到类型转换
- 不能对布尔值进行强制转换
- 不能将对象转换为不相干类型
- 高容量转换低容量需要强制转换,强制转换可能存在内存移除或者精度问题
强制转换
高–>低
int i = 20;
byte b = (byte)i;
自动转换
低–>高
int i =20;
double b = i;
变量
-
变量:可变化的量
-
Java是一种强类型语言,每个变量都必须声明其类型。
-
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
注意事项:
每个变量都有类型,类型可以是基本类型,也可以是引用类型
变量名必须是合法的标识符
变量声明是一条完整的语句,因此每个声明都必须以封号结束。
变量作用域
类变量
static int allClicks = 0 ;
static用于提升作用域,常用于单例模式
实例变量
String st = "hello world";
局部变量
public void method(){
int i = 0 ;
}
变量命名规范
- 所有变量、方法、类名要见名知意
- 类成员变量:首字母小写和驼峰原则
- 局部变量:首字母小写和驼峰原则
- 常量:大写字幕和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则
- 方法名:首字母小写和驼峰原则
常量
-
常量(Constant):初始化后不能在改变值
-
所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
-
常量名一般使用大写
final double PI = 3.14;
final为修饰符。
当用final修饰一个类时,表明这个类不能被继承
在想明确禁止 该方法在子类中被覆盖的情况下才将方法设置为final的
final详解:final
运算符
- 算数运算符:+,-,*,/,%,++,–
- 复制运算符:=
- 关系运算符:>,<,<=,>=,==,!=instanceof
- 逻辑运算符:&&,||,!
- 位运算符:&,|,^,~,>>,<<,>>>
- 条件运算符 ? :
- 扩展复制运算符:+=,-=,*=,/=
自增运算符
++,–
a++ :a=a+1 先赋值再自增
++a:先自增再赋值
a-- :a=a-1 先赋值再自减
–a:先自减再赋值
幂运算
2^3 2x2x2 =8
double pow = Math.pow(2,3);//2^3
逻辑运算
-
与(and):&& ,或(or):||,非(取反):!
boolean a = ture; boolean b = false; a&&b=false a||b=ture !a&&b=ture
位运算
位运算例子
A = 0011 1100
B = 0000 1101
A&B=0000 1100//与
A|B=0011 1101//或
A^B=0011 0001//异或(相同为0,不同为1)
~B =1111 0010//取反
位运算面试题
-
2*8=16:2<<3=16
<< =*2 ,>>=/2
0000 0010
0001 0000
三元运算
字符串连接符
字符串链接符:“+”
int a = 10;
int b = 20;
System.out.println(""+a+b);//输出1020
System.out.println(a+b+"");//输出30
//输出语句中,遇到字符串之后的"+"用作拼接而不是计算
三元运算符
? :
x ? y : z;
当x结果为true时,结果为y,否则为z
包机制
-
为了更好的组织类,Java提供了包机制,用于区别类名的命名空姐。
-
包语句语法:
package pkg1.pkg2.pkg3…
-
导入包
import package1.package2.classname
JavaDoc
- JavaDoc命令是用来生成自己的API文档的
参数信息
- @author 作者名
- @version版本号
- @since指明需要最早使用的jdk版本
- @param参数名
- @return返回值情况
- @throws异常抛出情况
下一篇: 更改HTML属性