java学习笔记--day05

抽象类 (用abstract关键字)

当遇到某一些对象/类含有大量互相重复的属性、方法,并且部分方法又需要重写时,我们可以为这一批类创建一个共同的父类,这个父类中以正常方式含有重复且不需要重写的内容,并另外包含一些抽象方法,只有方法头,没有方法体,在子类继承时必须重写方法体为自己需要的样子,且能继承获得父类定义好的内容

  1. 抽象类不能new

  2. 抽象类可以写普通的方法

  3. 抽象方法必须写在抽象类中

  4. 子类必须要实现抽象类中的方法,除非子类也是抽象类

接口

只有规范,自己无法写方法,只能做专业的约束,实现了约束和实现分离

  1. 约束

  2. 定义一些方法,让不同的人实现

  3. 接口中的所有方法都是公开抽象的(public abstract)

  4. 所有的属性都是公开静态的常量(public static final)

  5. implements可以实现多个接口

  6. 实现类必须重写接口中的方法

  7. 实现类命名一般以Implement结尾

 public class aaaImpl implements aaa,bbb{
     //重写的接口中的方法
 }

内部类

一个java类中只能有一个public class,其他class可以有无数个

成员内部类

写在一个外部类的里面,作为成员,并且可以获取外部类的私有属性

静态内部类

作为内部类添加static关键字

局部内部类

方法中的类

匿名内部类

直接new,前面不起名,不用将实例保存到变量中

异常

java中把异常当做对象来处理,并定义了一个基类java.lang.Throwable作为所有异常的超类

检查性异常

一般由用户错误引起,如,所需文件被删除,用户提供了非法数据等

运行时异常

可以由程序员避免的异常,编译时可以被忽略

错误

不受程序员控制,在代码中可能被忽略,如,栈溢出,内存不足,链接错误,类定义错误等

异常处理机制

抛出

throw new ArithmeticException();//方法中主动抛出异常

throws用于方法上抛出异常

捕获

捕获异常时可以写多个catch,但是当两个catch有包含关系时,大的应该写在后面,如果大的在前,则后面小的分类会被覆盖

 try{
     //监控区域
     System.out.println(1/0);
 }catch(ArithmeticException e){//捕获异常
      System.out.println("程序出现异常");
 }finally{//不论是否出现异常都会执行,一般用来释放资源
 }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值