首页 > 其他分享 >抽象类和接口

抽象类和接口

时间:2023-02-17 23:34:30浏览次数:35  
标签:定义 实现 接口 抽象类 方法 public

抽象类

概念

  抽象方法:只有方法的定义,没有方法体的实现,这种方法就是抽象方法

  定义类抽象方法的类,就是抽象类

 

定义和实现

  抽象类和抽象方法是用abstract关键字定义的: ​ 如:定义抽象类:public abstract class Action {} ​ 定义抽象方法:public abstract void doSomething();

  抽象类中的方法,需要继承这个类的子类来将抽象方法进行重写,使之实现这个方法;

  若子类不想实现父类的抽象方法,只要子类也是抽象类即可;这样的话就要交由它的子子类来实现;

 

注意事项

  1.不能new这个抽象类(抽象类不能被实例化对象),只能通过子类来实现它;

  2.让子类使用extends关键字继承抽象类,让子类实现抽象类中的抽象方法;

  3.在抽象类中可以只定义普通方法,也可以只定义抽象方法;

  4.有抽象方法,这个类一定是抽象类

 

 

接口

概念

  接口就是一组规则,比如:如果”你是飞机,则必须能飞“之类这样的规则;

  接口不关心你如何飞,可以是直升机那么飞,也可以客机那么飞;接口只需要你是飞的,如何飞由实现类来实现;

  接口说了我这个方法是干啥干啥的。但是具体怎么干的,过程是啥?这个就是实现类来解决的问题,实现类来怎么干具体的过程都在实现类。

 

定义

  接口是使用interface关键字来定义的 ​ 如:public interface UserService {}

  接口中所有定义的方法都是抽象的,默认是隐藏了:public abstract,如:

  //接口中定义方法
  void run(String name);
  //void run(); = public abstract void run();

  接口中定义的属性都是静态常量,默认是隐藏了:public static final,如:

  //接口中定义属性,都为静态常量
  int AGE = 99;
  //int AGE = 99; = public static final int AGE = 99;

 

实现

  接口的实现是使用implements关键字,让类来实现的,这个类为实现类; ​ 如:public class UserServiceImpl implements UserService {}

  实现类可以实现多个接口,也就是多继承,接口与接口之间使用逗号分隔; ​ 如:public class UserServiceImpl implements UserService,TimeService {}

  实现类中,需要重写接口中的所有方法;

 

注意事项

  1.约束,接口约束了这个方法必须干什么;实现类则是实现这个结果的过程;

  2.定义一些方法,让不同的人实现,不同的人实现,就是不同的过程,提高代码效率;

  3.接口中定义的方法,都是抽象方法;

  4.接口中定义的属性,都是静态常量;

  5.使用implements关键字可以让实现类实现(继承)多个接口;

  6.实现类必须重写接口中的所有方法;

 

标签:定义,实现,接口,抽象类,方法,public
From: https://www.cnblogs.com/chj020415/p/17131764.html

相关文章

  • 接口调试时如何请求一个需要登录才能访问的接口
    在后台在开发、调试接口时,常常会遇到需要登陆才能请求的接口。比如:获取登陆用户的收藏列表,此时,我们就需要模拟登陆状态进行接口调试了。如图:今天,我们讲解利用Apipost的环境......
  • 【MybatisPlus】条件构造器Wrapper、分页查询、自定义SQL、Service层接口、代码生成器
    MybatisPlus基础篇(目录)1.条件构造器Wrapper1.1概述​ 我们在实际操作数据库的时候会涉及到很多的条件。所以MP为我们提供了一个功能强大的条件构造器Wrapper。使......
  • 如何在接口请求发送之前添加参数
    使用场景我们可能需要在请求时发送一些参数,而这些参数是通过其他参与发送的请求参数计算而来的。举例:接口:​​https://console.apipost.cn/need_token.php​​body请求参数......
  • 接口自动化测试思路和实战(1):接口自动化测试思路和实战
    接口自动化测试框架目的测试工程师应用自动化测试框架的目的:增强测试脚本的可维护性、易用性(降低公司自动化培训成本,让公司的测试工程师都可以开展自动化测试)。以下......
  • MeterSphere 接口测试使用之下载文件
    1背景在我们实际应用中,需要测试下载文件接口,但是没有浏览器又如何直接下载呢?MeterSphere可以使用BeanShell写脚本的方式来实现该测试。2实现原理1、通过写BeanShell后......
  • 怎么编写接口测试用例?
    怎么编写接口测试用例?接口测试用例如何编写?看到许多这样的问题,大家都知道编写接口测试用例是接口测试的重要组成部分,它决定了测试的质量和可靠性。因此,程序员必须编写高质量......
  • golang 入门(七) 接口-多态
    所谓多态就是子类在继承了父类后,自己重新写了一个方法覆盖父类的同名方法。继续引用上文的案例,父类computer中有PowerOff方法,但是子类laptop把盖子合上也可以认为是一种Powe......
  • 项目实践中伪式的面向接口编程
    什么是面向接口编程?看到标题的朋友我相信你肯定也有和我最初一样的疑惑?为什么在实际项目过程中定义了那么多只有唯一实现的接口?这里的原因实际上是受到了软件工程历史上提......
  • AOP + 注解 实现通用的接口参数校验
    大家好,我是小悟写移动端接口的时候,为了校验参数,传统的做法是加各种判断,写了很多重复的代码,而且也不美观。为了增加代码复用性,美观的校验参数,采用AOP+注解的方式来实现接口......
  • JAVA 抽象类
    抽象类 在java语言继承层次结构中,位于上层的类更具有通用性,甚至更加抽象,这些类封装的方法被重写的可能更大.java用关键字  abstract 格式为: [访问控制符]a......