“interface”(接口)关键字使抽象的概念更深入了一层。
我们可将其想象为一个“纯”抽象类。
它允许创建者规定一个类的基本形式:
方法名、自变量列表以及返回类型,但不规定方法主体。
接口也包含了基本数据类型的数据成员,
但它们都默认为 static 和 final。
接口只提供一种形式,并不提供实施的细节。
接口这样描述自己:“对于实现我的所有类,看起来都应该象我现在这个样子”。
因此,采用了一个特定接口的所有代码都知道对于那个接口可能会调用什么方法。
这便是接口的全部含义。所以我们常把接口用于建立类和类之间的一个“协议”。
有些面向对象的程序设计语言采用了一个名为“protocol”(协议)的关键字,
它做的便是与接口相同的事情。
为创建一个接口,请使用 interface 关键字,而不要用 class。与类相似,
我们可在 interface 关键字的前面增加一个 public 关键字
(但只有接口定义于同名的一个文件内);或者将其省略,营造一种“友好的”状态。
为了生成与一个特定的接口(或一组接口)相符的类,
要使用 implements(实现)关键字。我们要表达的意
package com.lgf.polymorphism;
/**
* 一.接口特点
* 1. 可以包含基本数据类型,但是默认都为static 和 final.
* (Java接口中的成员变量默认都是public,static,final类型的(都可省略))
*
* 2. Java接口中的方法默认都是public,abstract类型的(都可省略),没有方法体,不能被实例化
*
* 3. Java接口中只能包含public,static,final类型的成员变量和public,abstract类型的成员方法
*
* 4. 接口中没有构造方法,不能被实例化
*
* 5.一个接口不能实现(implements)另一个接口,但它可以继承多个其它的接口
*
* 6.Java接口必须通过类来实现它的抽象方法
*
* 7.当类实现了某个Java接口时,它必须实现接口中的所有抽象方法,否则这个类必须声明为抽象类
*
* 8.不允许创建接口的实例(实例化),但允许定义接口类型的引用变量,该引用变量引用实现了这个接口的类的实例
*
* 9.一个类只能继承一个直接的父类,但可以实现多个接口,间接的实现了多继承.
*
* 二. 接口分类
* 1.普通接口
* 2.标识接口
* 3.常量接口是指用Java接口来声明一些常量,然后由实现这个接口的类使用这些常量
* @author lgf
*
*/
interface InterfaceDemo {
public static final int INT_VALUE = 9;
int DEFAULT = 10;
// int DEFAULT2; 默认是final 必须马上进行初始化
public abstract void abstractFunction();
void defaultFunction();// 默认会带上public abstract 修饰符
// protected abstract void protectedFunction(); 连protected也不可以
}
分享到:
相关推荐
Origin教程009所需练习数据
内容概要:本文提出了一个新的激活函数dReLU,用于提高大语言模型(LLM)的稀疏激活水平。dReLU可以显著减少模型推理过程中激活的参数数量,从而实现高效的模型推理。通过在Mistral-7B和Mixtral-47B模型上的实验,验证了dReLU的有效性。结果表明,使用dReLU的模型在性能上与原始模型相当甚至更好,同时减少了计算资源的需求,达到了2-5倍的推理加速。 适合人群:对深度学习、大语言模型和模型优化感兴趣的机器学习研究人员和技术开发者。 使用场景及目标:适用于需要高效推理的大语言模型应用场景,特别是资源受限的设备,如移动电话。目标是减少模型的计算资源消耗,提高推理速度。 其他说明:本文详细探讨了dReLU的设计和实验验证,提供了大量的实验数据和对比结果,展示了dReLU在多种任务上的优越表现。
最近参加一个农业机器人的比赛,由于今年的题目是蔬菜幼苗自动搬运,因此搬运部分需要用到一个三轴运动的装置,我们参考了3D打印机的原理,上面通过步进电机控制丝杆和皮带从而带动我们的抓手来抓举幼苗。因为比赛的幼苗和幼苗的基质比较小,这个过程需要精度比较高,查询了一些资料后,我想到了用dma来给STM32单片机的定时器寄存器ARR发送数据来精准控制输出pwm的数量,从而可以精准控制步进电机转动的度数,可以十分方便的计算出到某个位置需要的脉冲。
白色大气风格的商务团队公司模板下载.zip
2023-04-06-项目笔记-第三百五十八阶段-课前小分享_小分享1.坚持提交gitee 小分享2.作业中提交代码 小分享3.写代码注意代码风格 4.3.1变量的使用 4.4变量的作用域与生命周期 4.4.1局部变量的作用域 4.4.2全局变量的作用域 4.4.2.1全局变量的作用域_1 4.4.2.356局变量的作用域_356- 2024-12-25
白色大气风格的个人摄影图片博客网站源码下载.zip
白色大气风格的木材加工行业网站模板下载.zip
PCle AI加速卡在智能制造中的应用.docx
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于计算机科学与技术等相关专业,更为适合;
白色风格的后台管理系统模板下载.rar
内容概要:本文详细介绍了网络热点采集系统的开发过程,包括网页抓取、数据去重、清洗、分类和可视化的各个环节。系统使用 Python 的 requests 和 BeautifulSoup 库抓取指定关键词相关的网页内容,通过集合数据结构去重,利用正则表达式清洗数据,根据关键词匹配进行分类,最后通过 matplotlib 和 wordcloud 库进行数据可视化,展示热点信息。此外,文章还介绍了多线程抓取、数据缓存、异常处理等性能优化方法,以及系统的部署和运行步骤。 适合人群:具有 Python 编程基础的开发人员和技术爱好者。 使用场景及目标:该系统适用于需要实时监控网络热点话题的个人或企业,帮助他们快速了解和分析热点信息的趋势和分布,辅助决策。 阅读建议:在学习本文时,建议读者跟随每一步代码实现,理解各个模块的设计思路和技术细节,并尝试在自己的环境中搭建和运行整个系统,以便更好地掌握网络热点采集系统的开发流程。
白色大气风格的KTV美女麦霸网站模板下载.zip
白色简洁风的博客网站模板下载.zip
梧州市五险一金办事指南
白色简洁风格的餐厅服务团队整站网站源码下载.zip
白色大气风格的境外游景区模板下载.zip
白色大气风格的美食厨师展示模板下载.zip
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于计算机科学与技术等相关专业,更为适合;
白色大气风格的视察滚动房地产模板下载.zip
【要点】:本文提出LLM-Select方法,利用大型语言模型(LLM)在仅提供输入特征名称和预测任务描述的情况下,实现特征选择,其性能可媲美传统数据科学工具,并具有跨查询机制和提示策略的一致性。 【方法】:通过零样本提示(zero-shot prompt)LLM输出特征的重要性分数,实现特征选择。 【实验】:在真实世界数据集上进行广泛实验,结果表明基于LLM的特征选择在性能上与LASSO等数据驱动方法相当,且无需查看下游训练数据。