@月月鸟

抽象类和抽象方法

抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。
抽象类和接口——JAVA

  • 抽象方法
    [访问修饰符]abstract<返回类型><方法名>([参数列表])
  • 抽象类
    abstract class<类名>{
    }
  • 定义一个抽象类
 public abstract class 类名称{
 	修饰符 absteact 返回类型 方法名();
 	修饰符 返回类型 方法名(){
 	方法体
 	}
 }

抽象类的优势和局限性

抽象类中已经实现的方法可以被子类使用,是代码可以被服用;同时提供了抽象的方法,保证了子类具有自身的独特性。
抽象方法可以有子类去实现,但会造成代码亢余,解决此问题最理想的方式就是使用接口。

定义和实现一个接口

1.接口
public interface 接口名{
// 接口成员
}

  • 和抽象类不同,定义接口使用interface修饰符,访问修饰符只能是public,求可选。
  • 接口成员可以是全局常量和公共的抽象方法。

2 实现接口
public 类名 implements接口名{
实现方法
普通方法
}.

  • 实现接口使用implements关键字。
  • 实现接口的类必须实现接口中定义的所有抽象方法。
  • 接口的实现类包含普通方法。
  1. 更复杂的接口
    接口继承
    [修饰符]interface 接口名extends父接口1,父接口2.。。{
    常量定义
    方法定义
    }
    实现多个接口的语法
    class 类名extends父类名implements接口1,接口2.。。。{
    类的成员
    }

面向对象设计的原则

  1. 摘取代码中变化的行为,形成接口。
  2. 多用组合,少用继承
  3. 针对接口编程,不依赖于具体实现。
  4. 针对扩展开放,针对改变关闭。

以上内容可能会有出入,部分出自转载,欢迎大家踊跃留言指正

相关文章:

  • 2021-10-24
  • 2021-11-25
  • 2021-11-24
  • 2021-07-18
猜你喜欢
  • 2021-07-16
  • 2021-08-20
  • 2021-12-19
  • 2021-04-15
  • 2021-06-19
  • 2021-09-11
  • 2021-10-20
相关资源
相似解决方案