java 基本类型四类八种(区分字符常量和字符串常量),其他都是引用类型(类、接口、数组),字符采用Unicode,每个字符两个字节,可用十六进制编码表示(char a = '\u0061';)。
float f = 1.1f;//必须加f
7中基本类型的转换
字符串连接符+
函数形参中参数的传递,基本类型传递的是数值本身,引用类型传递的是对对象的引用
成员变量有默认的初始值
同一类的每个对象共享该类的方法
非静态方法是针对每个对象调用的
方法中的this表示对使用该方法的对象的引用
static方法中不可访问非static变量,static成员可由对象或类调用
jar -cvf xx.jar *.* //可将jar包设为classpath
重写的方法不能有比被重写的方法更严格的访问权限
继承中的构造方法(规则比较多)
Object类是所有类的基类
1.在进行String与其他数据类型连接时,自动调用该类型的toString方法,通常会重写此方法(public String toString())。
2.equals方法也常被重写(public boolean equals(Object obj))
对象转型(增强了可扩展性)
1.基类引用不可以访问子类对象新增的成员(包括变量和方法)。
2.父类引用指向子类对象,使用instanceof进行判断该引用变量指向的对象是否属于该类或父类。
动态绑定和多态(更加增强了可扩展性)
1.继承
2.重写
3.父类引用指向子类对象
抽象类,final,接口
1.抽象类中可以有方法的具体实现,也可以有具体的构造方法,接口中咋不行。
2.接口中方法必须为public,变量必须为public static final,抽象类无此限制。
3.含有抽象方法的类必须为抽象类。
4.final修饰的变量不能被修改,final修饰的类不能被继承,final修饰的方法不能被重写。
异常
1.编译期出现的错误容易解决,重点解决运行期出现的错误。
2.
class A {
<span style="white-space:pre"> </span>public static void main(String[] args) {
<span style="white-space:pre"> </span>A a = new A();
<span style="white-space:pre"> </span>try {
<span style="white-space:pre"> </span>a.method1();
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>catch(someException e) {
<span style="white-space:pre"> </span>e.printStackTrace();
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>void method1() throws someException {
<span style="white-space:pre"> </span>throw new someException("someException occur in method1");
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>void method2() throws someException {
<span style="white-space:pre"> </span>method1();<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>void method3() throws someException {
<span style="white-space:pre"> </span>method2();<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>}
}
<img src="https://img-blog.csdn.net/20150628183338997?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZXZlcnlvbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
3.
4.
5.继承中,重写的方法要抛出原方法一样的异常或不抛出异常。
6.多个catch时,要保证每个catch都可执行。
7.五个关键字:try、catch、finally、throw、throws。
数组
1.数组变量属于引用变量,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。
2.声明数组时,不能指定长度
3.数组的静态初始化(不带new)、动态初始化(带new),数组元素的默认初始化。
4.二维数组可看成以数组为元素的一维数组。
5.注意数组的拷贝(System.arraycopy(Object src, int srcPos , Object dest , int destPos , int length))。