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层中用到了接口等等
网友评论