interface接口简介

红太狼 2024-03-31 16:39 208阅读 0赞

1、interface中定义常量
public interface ConstVal {

String MODULE_NAME = “ModuleName”;

String ENTITY = “Entity”;
String SERVICE = “Service”;
String SERVICE_IMPL = “ServiceImpl”;
String MAPPER = “Mapper”;
String XML = “Xml”;
String CONTROLLER = “Controller”;
String OTHER = “Other”;
String PARENT = “Parent”;

String JAVA_TMPDIR = “java.io.tmpdir”;
String UTF8 = StandardCharsets.UTF_8.name();
String UNDERLINE = “_“;

String JAVA_SUFFIX = StringPool.DOT_JAVA;
String KT_SUFFIX = “.kt”;
String XML_SUFFIX = “.xml”;

/**
* 实体模板路径
*/
String TEMPLATE_ENTITY_JAVA = “/templates/entity.java”;

/**
* 实体模板路径(kotlin模板)
*/
String TEMPLATE_ENTITY_KT = “/templates/entity.kt”;

/**
* 控制器模板路径
*/
String TEMPLATE_CONTROLLER = “/templates/controller.java”;

/**
* Mapper模板路径
*/
String TEMPLATE_MAPPER = “/templates/mapper.java”;

/**
* MapperXml模板路径
*/
String TEMPLATE_XML = “/templates/mapper.xml”;

/**
* Service模板路径
*/
String TEMPLATE_SERVICE = “/templates/service.java”;

/**
* ServiceImpl模板路径
*/
String TEMPLATE_SERVICE_IMPL = “/templates/serviceImpl.java”;

String VM_LOAD_PATH_KEY = “file.resource.loader.class”;
String VM_LOAD_PATH_VALUE = “org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader”;

String SUPER_MAPPER_CLASS = “com.baomidou.mybatisplus.core.mapper.BaseMapper”;
String SUPER_SERVICE_CLASS = “com.baomidou.mybatisplus.extension.service.IService”;
String SUPER_SERVICE_IMPL_CLASS = “com.baomidou.mybatisplus.extension.service.impl.ServiceImpl”;

interface ComplaintType {
int URL = 0;

int USER = 1;

int GROUP = 23;
}
}

2、 interface与abstract的相同点:
(1)都是没有具体实现,需要继承类进行实现;
(2)无法直接调用;
(3)interface算是抽象类的特例;
3、 interface和abstract的区别:
(1)interface无构造方法,abstract类可以有构造方法;
(2)abstract类中可以有普通成员变量和普通成员方法,interface 只有抽象方法(可以有普通成员方法,但不建议);
(3)abstract类的访问类型可以是public或是protected,但interface默认的访问类型就是public abstract
4、内部接口

4.1 内部接口也称为嵌套接口,即在一个接口内部定义另一个接口。举个例子,Entry接口定义在Map接口里面,如下代码:
public interface Map {
interface Entry{
int getKey();
}
void clear();
}
4.2 使用内部接口的理由
如下是一些强有力的理由:
• 一种对那些在同一个地方使用的接口进行逻辑上分组;
• 封装思想的体现;
• 嵌套接口可以增强代码的易读性和可维护性;
在Java标准库中使用内部接口的一个例子是java.util.Map和Java.util.Map.Entry。这里java.util.Map同样被当成命名空间使用。Entry并不属于全局作用域范围.
4.3 内部类如何工作
内部类可以被认为是一个外部类内部定义的一个常规方法。因为一个方法可以被声明为静态和非静态,类似的内部类也可以被声明为静态和非静态。静态类类似于静态方法,它只能访问外部类的静态成员属性。非静态类可以访问外部类的所有成员属性。
7c883cfc27f04eba8c8a5cb8d88f3607.jpeg

发表评论

表情:
评论列表 (有 0 条评论,208人围观)

还没有评论,来说两句吧...

相关阅读

    相关 interface接口

    1、因为它是抽象的,所以在类中实现(调用)的时候必须要进行方法重写才能使用 ![在这里插入图片描述][watermark_type_d3F5LXplbmhlaQ_shado

    相关 interface接口

    当类中的方法都是抽象方法, 接口格式特点: 1、接口中可以定义常量和抽象方法。 2、接口中成员有固定修饰符:       常量:public static final 

    相关 接口interface

    什么是接口? 一种把类抽象的更彻底,接口里只能包含抽象方法的“特殊类”。接口不关心类的内部状态数据,定义的是一批类所遵守的规范。(它只规定这批类里必须提供某些方法,提供这