当前位置: 代码迷 >> 综合 >> java面向对象:抽象类和接口
  详细解决方案

java面向对象:抽象类和接口

热度:78   发布时间:2024-01-31 16:25:59.0

1.抽象类

(1)定义抽象类:

当一个被定义为抽象类是,它可以包含各种类型的成员,包括属性、方法等,其中方法又可分为普通方法和抽象方法,抽象类结构如下:

public  abstract  class  类名称{

修饰符   abstrract  返回值类型  方法名();

修饰符  返回值类型  方法名(){

方法体

}

}

注:抽象方法只能定义在抽象类中,但是抽象类中可以包含抽象方法,也可以包含普通方法,但是普通类中只能包含普通方法

(2)抽象类和抽象方法优势:

抽象类中已经实现的方法可以被其子类使用,使代码被复用;同时提供了抽象方法,保证子类具有自身的独特性

 

2.接口:

定义一个简单接口:

public  interface  接口名{

接口成员

}

注:定义接口使用abstract修饰符,访问修饰符只能是public,接口成员可以是全局变量和公共类的抽象方法;

使接口必须通过子类,子类通过implement关键字实现接口。

 

 

 

3.抽象类和接口相同点和不同点:

相同点:都代表系统的抽象化;

都不能被实例化;

都包含抽象方法;

不同点:抽象类中可以为部分方法提供默认实现,而接口只能包含抽象方法;

一个类中只能继承一个直接父类,但可以实现多个接口

 

 

4.面向对象设计原则:

多用组合,少用继承;

针对接口编程;

针对扩展开放,针对改变关闭。