抽象类
(1)抽象类概念:
如果一个类表达的是一种抽象的概念,仅仅作为其他派生类的一个父类(基类),主要定义功能,没有实现,具体的实现交给他的子类(派生类)
(2)语法:
在class前边加上abstract就是一个抽象类
(3)特点:
1 抽象方法所在的类必须是抽象类;
2 抽象类不能进行实例化;
3 如果要实现一个抽象类,就要创建一个子类继承这个抽象类;
4 子类继承抽象类以后,必须重写抽象类的所有抽象方法(前提是子类不是抽象类);
5 抽象类里边可以定义普通方法;
6 抽象类里边可以定义构造方法,给属性赋值
(4)抽象方法的特点:
只有方法的定义,没有方法体。
接口
接口就是一种公用的规范标准,只要符合规范标准,大家都可以通用
面向接口编程:复用性强
接口可以多实现
-
接口(接口里边的变量都是常量)
(1)定义:
1 就是多个类之间的公共规范;
2 接口就是一个特殊的抽象类型,接口里边的方法都是抽象方法;
3 接口解决了Java单继承的基类;
(2)定义一个接口:
public interface 接口名(){}
(3)接口的特点:
1 接口里边的属性都是常量,默认会加上“publicstatic final”修饰;
2 接口里边的方法都是抽象方法,默认会加上“publicstatic final”修饰;
3 接口也不能够实例化,他是一个特殊的抽象类;
4 抽象类是继承,接口是用来实现的。
5 一个类实现一个接口,必须实现这个接口的所有抽象方法(前提这个类不是抽象类);
6 一个类可以实现多个接口,中间要用逗号隔开;
7 接口里边不能定义普通方法,接口同时也没有构造方法;
8 接口也可以继承接口,并且可以继承多个接口;
9 如果一个类要先继承一个类,同时在实现接口,继承一定在实现接口前边
(4)实现类
1 实现接口的类叫做实现类
public class 类名 implements 抽象类名
{}