-
首先,什么是密封类?
可能有同学会说 :密封类当然就是“蜜蜂”累啊!
你是在跟我开玩笑吗!!!
密封类是被 final 关键字所修饰的类,兄dei~
-
密封类的特点
1、密封类不能用作基类;
2、就算派生类也被final所修饰也不可以,兄dei~
-
既然有密封类,那么肯定就有密封方法,那么什么是密封方法呢 ?
注意 :被 final 修饰的方法是不能被 override(重写) 的;密封类和密封方法的存在就是为了防止有意的派生。 -
我们来看一看,什么是抽象类 ?
在Java中,含有抽象方法的类被称为抽象类,抽象类被 abstract 关键字修饰,当然,抽象方法就是被 abstract 关键字修饰的方法。
-
抽象类有什么特点 ?
1、抽象类不能被实例化,也就是不能 new 对象;
2、抽象类中可以既包含抽象方法,又包含非抽象方法;
3、抽象类中可以定义实例变量;
4、抽象类不能被密封,因为抽象类就是被用来作为基类使用的,所以它也不能被 private 修饰 -
抽象类的派生类
<1> 派生类如果是普通类,必须实现抽象类的抽象方法;
<2> 派生类如果是抽象类,可以不实现基类的抽象方法。 -
抽象方法有什么特点 ?
抽象方法没有方法体,不含大括号 -
接下来,就到了我么的接口部分,那么问题来了,什么是接口 ?
接口呢,由 interface 关键字所定义,如下 :
-
接口的特点
1、接口内的属性默认是 public static final 类型的;
2、接口内的方法默认是 public abstract类型的。
加上大括号就报错了~
3、接口是用来实现的,实现接口用 implements 关键字;
4、接口的派生类必须实现接口的所有抽象方法;
5、接口解决了 Java 单继承的局限问题,派生类可以实现多个接口
class A implements B,C,D{
}
6、当派生类是接口时,可实现多继承,并且可以不实现父接口的方法
- 抽象类和接口的区别 :
1、接口内的方法,必须不能被实现,而抽象类可以有部分非抽象方法。
2、抽象类只能继承一次,但是接口可以被实现或者继承多个。
a.一个抽象类可以继承一个抽象父类,但是一个接口可以使用关键字
extends继承多个接口
b.抽象类是对类整体的抽象 而接口是对行为进行抽象
c. 在接口中的成员变量和成员方法默认为public static final
和public abstract
d.抽象类当中的方法和成员变量没用明确要求。但是抽象类当中的
方法不能是private.