//单行注释 /* 多行注释 */ /** 文档注释 */
命名时可以包含:字母、数字以及 下划线和 $ 符号等等。
但是不能以数字开头,也不能是关键字,且严格区分大小写。
类名:每个单词的首字母大写(大驼峰);
方法名:首字母小写,后面每个单词的首字母大写(小驼峰);
变量名:也用小驼峰;
包名:也用小驼峰;
接口名:大驼峰,一般加上首个字母写大写I;
异常名:大驼峰,一般最后以单词Exception结尾。
具体介绍在这篇文章:数据类型与变量详解
整数:byte short int long;
浮点数:float double;
字符:char;
布尔类型:boolean;
除了int和char的包装类是Integer和character,其它都是将首字母大写,如long对应Long。
类class;接口interface;数组[ ];字符串变量String。
简单说一下规则:
访问修饰限定符 数据类型 变量名 = ;
如果是引用数据类型在等号后面就跟相应的实例化
是基本数据类型直接赋值就行
运算符的详细解析在这篇文章:运算符详解
加: +
减 :-
乘:*
除:/
取余:%
在除法时两边为整数结果为整数,Java中小数可以取余。
+=,-=,*=,/=,%=。
其实就是对算数运算符使用的一个简写,如a = a + 10和a += 10两个等价。
++ ,–。
口诀:前置先加加/减减,在运算;后置置先运算,再加加/减减。
相等 ==
不等 !=
大于 >
小于 <
大于等于 >=
小于等于 <=
逻辑与 &&
逻辑或 ||
逻辑非 !
注意逻辑短路现象,就是逻辑运算符两边的表达式只执行前面就决定了值,后面表达式就不会执行。
按位与 & :对应位有0就是0
按位或 | :对应位有1就是1
按位异或 ^ :对应位相同位0,不同为1
按位取反 ~ :0,1互换
左移 <<
右移 >>
无符号右移 >>>
表达式1?表达式2:表达式3
程序逻辑控制的详细解析在这篇文章:程序逻辑控制详解
if-else语句,switch-case语句。
while循环,do-while循环,for循环。注意continue(除该次循环进入下一次)和break(出循环)的区别。
详解方法在这篇文章:方法详解
修饰符 返回值类型 方法名(参数表列){ }
方法名同,参数一定要有不同,返回值无关。
自己调用自己,使用时注意结束条件。
详细讲解数组在这篇文章:数组详解
类型 [] 数组名 = ; 在等号右边3种方式 1.{} 2.new 类型[]{} 3.new 类型[] //长度不能省
类型 [][] 数组名 = ; 在等号右边3种方式: 1.{{},{},{},······} 2.new 类型[][]{{},{},{},······} 3.new 类型[][] //行不能省
使用循环遍历。
类与对象的详解写了多篇文章,在写到具体内容时再给出详解文章链接。
类定义以及实例化详解文章:类定义,实例化详解
class 类名{ //成员变量 //成员方法 }
通过new关键字实例化对象。
我们通常在类中成员方法用this来引用当前成员,防止成员与形参同名报错。
方法名与类名一样的成员方法,在实例化对象时会自动调用。
详细介绍封装在这篇文章:封装详解
封装就是访问限定修饰符给的不一样,让类,类的成员的访问权限不一样。
private,default,protected,public。
就记住static修饰的不依赖对象就行。
详解继承在这篇文章:详解继承
继承之间使用关键字extends,子类会继承父类的一切。如果一个类不希望被继承就使用final修饰。
子类调用父类成员可以使用关键字super。
将子类向父类转型为向上转型。
将父类向子类转型(强转)为向下转型。
向下转型要注意父类(有多个子类)是该子类转型过来的,一般使用instanceof关键字来判断。
重写的格式:方法名,参数表列,返回类型(可以是父子类关系)都要相同。
重写的条件:继承体系下,方法不被private,static,final修饰;重写方法权限>=被重写方法。
重写重载区别:
详解抽象类在这篇文章:抽象类详解
被abstract修饰的类叫抽象类,修饰的方法叫抽象方法。
抽象类与普通类的区别就是可以包含抽象方法。
抽象方法可以没有具体实现,但是被子类继承一定要被重写。
因为抽象方法是必须被重写的,所以重写条件也适用。
详解接口在这篇文章:接口详解
使用interface关键字修饰类就是接口,
‘子类’用implement实现接口。
里面的方法默认为public abstract修饰。只能有default修饰的具体方法,JDK9后可以有private修饰的方法。
接口不能被实例化。
详解内部类在这篇文章:内部类详解
静态内部类,实例内部类,局部内部类,匿名内部类。
详解比较器在这篇文章:比较器详解
一般要实现Comparable接口,重写CompareTo方法来比较。
实现Comparator接口然后重写compare方法就可以实现自己的比较条件。
详解深拷贝与浅拷贝在这篇文章:深拷贝与浅拷贝详解
拷贝都要实现Cloneable接口。
深拷贝与浅拷贝的区别就是深拷贝是重新开辟空间,浅拷贝是直接指向原来的空间。
详解String常用操作在这篇文章:String常用操作详解
要记住对String的改变都不会对原字符串进行改变。
详解异常常用操作在这篇文章:
异常分类:运行时异常和编译时异常。
throw抛异常,try捕获异常,catch处理异常。
自定义异常:实现类然后继承运行时异常(RunTimeException)或 编译时异常(Exception)。