JavaEE复习在路上(首发微信公众号:学习微站)

2.接口怎么使用的,接口有方法体吗?接口与抽象类有什么区别?

2020-11-10  本文已影响0人  学习微站

1、接口的主体包括抽象方法,默认抽象,可省略abstract,由于接口代表着一个对外行为的集合,所以任何方法在接口内都是public(公开的)。

public interface IUserDao extends IBaseDao<User>{    int batchDel(List<Integer> ids);    void deleteById(Integer id);    SystemAdmin login(String username);    Set<String> getPerSetByUserId(Integer id);    public void modifyPassword(User user);}

一个类实现多个接口—》解决单继承问题(Java是单继承的)
接口怎么使用?
一般为public interface。。。
用一个类实现去实现该接口。
2、接口没有方法体接口体中只进行方法的声明,不允许提供方法的实现 方法的定义没有方法体,且用分号结尾。现在开发通常接口没有方法体。

扩展:java8的接口新特性(可以有方法体的接口)

interface MyInterface{    String myNewName(String newName);    default String myOldName(){        return "chao";    }}

3、接口与抽象类有什么区别?
1 属性:接口没有普通属性,只有静态属性,只能public final static 修饰。
抽象类可以有普通属性或静态属性
2 方法:接口中的方法没有方法体, 默认public abstarct 修饰,不能定义静态方法(static)。
而抽象类可以有普通方法,也可以没有抽象方法,可以定义静态方法(static)
3 构造函数:接口中没有构造函数,抽象类中可以有构造器,但是它不能用于new对象,而是用子类电泳来初始化抽象类操作(构造方法–》构造函数与类名相同)

构造方法的声明:修饰符 class_name(类名)  (参数列表){ 逻辑代码}

4 初始化块:接口不能包含初始化块,而抽象方法可以

应用:SSM中dao,service,mapper层中用到了接口等等

上一篇下一篇

猜你喜欢

热点阅读