Java的特点
- 简单性
- 面向对象
- 可移植性:write once run everywhere
- 高性能
- 分布式
- 动态性:例如反射
- 多线程:可以一边看博客,一边听音乐
- 安全性:可以构建防病毒防篡改的应用
- 健壮性:内存检查,异常机制使得应用不会崩溃
问题:Java为什么能成功
除了好用之外,也有一些运气,踩中了互联网的时代。
Java的三种注释
- 单行注释:以
//开头。 - 多行注释:以
/*开头以*/结尾。不能嵌套,可以在一行代码内注释 - 文档注释:以
/**开头以*/结尾,可以生成项目api文档
命名原则
标识符规则:
- 必须以字母,下划线_,美元符号$开头。
- 其他部分可以是字母下划线
_美元符$,和数字的任意组合。 - 大小写敏感,且长度无限制。
- 不可以是Java的关键字。
标识符使用规则:
- 表示类名的标识符:每个单词的首字母大写,如Man,GoodMan。
- 表示方法和变量的标识符:第一个单词小写,从第二个单词开始首字母大写,我们称其为驼峰原则,如eat(),eatFood()。
数据类型
基本数据类型
数值型
- 整数类型:byte,short,int,long,分别是1,2,4,8字节。整型常量默认是int,最大是21亿。
在Java中如何表示相应进制:
int a = 100; //十进制
int b = 015; //八进制
int c = 0xff; //十六进制
int d = 0b1001010101;
3. 浮点型 float 4字节 -3.403E38~3.403E38 double 8字节 -1.798E308~1.798E308。
- float称为单精度类型,尾数可以保留7位有效数字
- double这种类型表示的精度是float的两倍称为双精度类型,绝大多数程序使用的都是double类型
- 浮点不精确,不能比较
- 浮点常量默认double,要改变就要在后面加f
字符型 char
- 转义字符,\u0061,\n,\p,\b,\t
布尔型boolean
- 逻辑判断,在内存中占据一个或四个字节,不能用0或非0替代true和false。
引用数据类型 4个字节
算数运算符
整数运算
- 如果两个操作数有一个是long,则结果也为long
- 没有long时,即使操作数全是byte,short,其结果也是int
浮点运算
- 有两个操作数一个为double,则结果为double,
- 只有两个操作数都为float,结果才为float
自增运算符
a++;先赋值再自增++a;先自增再赋值
例如int a = 10;
System.out.println(a++);结果就是10 如果是System.out.println(++a);结果就是11
取模运算
- 其操作数可以为浮点,一般为整数,结果为余数,符号和运算左边的数一致
逻辑运算符
- 与:有一个false结果为fasle
- 或:有一个true结果为true
- 非:取反
- 异或:同真异假
- 短路:只要第一个满足条件就不执行后面的逻辑比如短路与只要第一个为false就会直接出结果不会运算后面的逻辑,短路或是第一个为true则直接输出结果
对于数字的逻辑运算符就是位运算,按照相同的逻辑取0,1 false true
- char可以通过""+char来变成字符串
运算符的优先级
- 括号的优先级最高
- 算数运算符比位运算符高
- 之后是逻辑运算符,与比或高
自动转换类型
- 容量小的类型可以自动转换为容量大的类型
- long类型不能自动转为int
- 特殊:整形常量是int类型,可以自动转换为byte,short,char,前提是不超过对应类型的表示范围比如
- byte h2 = 1234就会报错 char h3 = 97+25此时输出h3会是一个字母
在/t前加空格可以让其对其