java 复习小结(1)

java学习中的一些个人总结吧

马上就要考java了,感觉慌慌的,赶紧整理一下知识点。
ps:考完了,烤炸了。。。
1, static:
静态方法中不能直接访问实例变量和实例方法
static方法中不能使用this关键字(我的理解是因为是类的方法所以没有当前对象)
类中可以包含静态代码块,它不存在于任何方法中。当类被装载时,静态代码块只被执行一次。执行顺序就是他们在类中的顺序。(然后这里就出来考点了……一个父类一个子类,构造函数上边都有一个静态代码块,问你这两个静态代码块和两个构造函数的调用顺序。)

2,final :
final类不能被继承
final方法不能被子类覆盖
final变量 必须被显示的初始化,并且只能发初始化一次。(相当于const?)

3,abstract:
用abstract修饰的类是抽象类,不能被实例化,里边可以没有方法,如果有方法,那么一定是抽象的方法(只声明不能实现,实现交给继承他的类)。

4,interface:
接口中只能包含public,static,final的成员变量(定义的不是变量,是常量,接口是一套标准,统一的入口)不写public的话,默认是public而不是一般意义上的default,这是借口特有的。
接口里的方法必须全是抽象的(由类(implements)实现,一个类可以实现多个接口)
接口之间允许存在继承(extends)关系

5,overload(重载):
条件:
1)方法名相同
2)方法的参数类型、个数、顺序、至少有一项不同
3)方法的返回类型可以不一样
4)方法的修饰符可以不相同

6,override(重写):
子类方法的名称、参数签名、返回类型必须与父类的一模一样。
子类不能缩小父类方法的访问权限,但可以扩大(注意,如果在父类里的方法是private的,那么子类里根本看不到这个方法,也就谈不上说什么扩大访问权限了。
子类不能抛出比父类方法更多(范围更大)的异常

7,instanceof
creature <- animal <- cat / dog / cock
比如这样的继承关系,那么我们可以这么使用
animal a = new cat();
if ( a instanceof cat) // 如果a 是cat类型的实例变量
then do something;

8,异常处理
如果一个方法不想处理异常,可以通过throws语句将异常抛出去。

int method1(int x) throws Exception1, Exception2{
    if( x < 0 ){
        throw new Exception1();
    }
    if(x == ){
        throw new Exception2();
    }
}

然后,如果你用到这个函数,就需要try-catch语句

try{
    method1();
}catch(Exception e){
    System.out.println(e.getMessage());
    e.printStackTrace();
    return xxx;
}finally{
// 不论是否发生了异常,都会执行这个语句块,除非System.exit();
// finally语句会在catch语句里的return之前执行。
}

在java中,任何异常都是Throwable类的直接子类或间接子类的实例。java的类库里提供了一些常见的异常类,如果这些不能满足用户的需求,那么也可以通过继承等来创建自己的异常类。
RuntimeException类及其子类都称为运行时异常,这种异常的特点是java编译器不会检查它,也就是说,当程序中出现这种异常时,即使没有用try-catch语句捕获它,也没有用throws字句声明抛出它,也会编译通过。
注意 RuntimeException表示无法让程序恢复运行的异常,导致这种异常的原因通常是由于执行了错误操作。一旦出现了错误操作,建议终止程序。
而非运行时异常的表示程序可以处理的异常,如果抛出异常的方法本身不能处理它,那么方法的调用者应该去处理,从而使程序继续运行。(非运行时异常要么用try-catch语句捕获,要么throws抛出,否则编译过不去)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值