抽象类和接口

抽象类

抽象方法:abstract修饰符的方法。

抽象类:abstract修饰符的类。

复制代码
/**
 *abstract抽象类,单继承
 * 不能new只能靠子类去实现
 * 抽象类中可以写普通方法,抽象方法一定要再抽象类中。
 */

public abstract class Action {
    //只有约束,没有方法体
    public abstract void doSomeThing();
}
复制代码
public class A extends Action{
    //继承抽象类必须实现抽象类中的方法,或者再将方法抽象由继承的子类实现
    @Override
    public void doSomeThing() {

    }
}

接口

普通类:只有具体实现。

抽象类:具体实现和规范(抽象方法)都有。

接口:只有规范,自己无法写方法。(约束和实现分离)

//interface 接口的关键字,接口都需要有实现类Impl
public interface UserService {
    //接口中所有的定义都是抽象的public abstract,所以关键字可以省略。
    public abstract void add(String name);
    void update (String name);
    void delete(String name);
}
复制代码
/**
 * 类 可以实现接口 implements 接口
 * 实现了接口的类,就需要重写接口中的方法
 */
//利用接口 实现多继承
public class UserServiceImpl implements UserService,TimeService {
    @Override
    public void add(String name) {

    }

    @Override
    public void update(String name) {

    }

    @Override
    public void delete(String name) {

    }

    @Override
    public void timer() {

    }

}
复制代码

接口的作用:

  1.约束

  2.定义一些方法,让不同的人实现

  3.方法都是public abstract

  4.常量都是public static final

  5.接口不能被实例化,接口中没有构造方法

  6.接口implements可以实现多接口

  7.必须重写接口中方法

 

posted @   格兰芬多剁剁剁  阅读(33)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示