JAVA程序员笔记 第11篇—面向对象(四)接口、抽象类、匿名类

密封类:

sealed 被继承类 permits可以被继承的类

public  sealed  class  Animal  permits  Dog ,  Cat{
   
//定义一个 密封类 Animal, 只允许 Dog, Cat 继承
}

允许某个类的可以被 特定的类继承 ,子类必须是final或密封类(一般都用final),且 必须定义需要继承的子类

abstract 修饰(抽象)

抽象类

1.抽象类用 abstract 修饰,此类不能实例化
2.抽象类不能创建对象、但必须定义定义构造器,便于子类实例化是调用(子类对象实例化的过程)
3.抽象类使用前提:继承性

抽象方法

1.方法为抽象方法,此时该方法不能实现(不能实例化),具体实现由子类完成。
2.包含抽象方法的类,一定是一个抽象类。但是,抽象类中可以没有抽象方法的
3.子类 重写父类中的 所有抽象方法后,此子类才可以实例化(涉及到接口知识点,接口可以看成是特殊的抽象类)
4.若子类没重写父类中的所有的抽象方法,则此子类也是一个抽象类, 需要使用abstract修饰。

注意:
1.abstract不能用来修饰:属性、构造器等结构
2.abstract不能用来修饰私有方法、静态方法、final方法、final的类

public abstract class TuXing {
   

    public abstract double zhouchang();

    public  double mianji(){
   
    return 0;
    }
}

关键字是有冲突的:
abstract与static 或者 final同时使用。

abstract 和 static 同时修饰类(内部类) ——可以。
static 和 final 同时 修饰 类,属性,方法 ——可以。
剩下的一律不可以同时修饰

abstract class Template{
   
//计算某段代码执行所需要花费的时间
public void spendTime(){
   
long start = System. currentTimeMillis();
this.code();//不确定的部分、易变的部分
long end = System. currentTimeMillis();
System.out.println
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值