/**
*
*/
package cn.yanshun.interfaces;
/** 这个类用来测试接口的使用
*/
public class Test02_UseInterface {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//可以创建接口对象,进行测试吗?? ----报错,无法创建接口对象,Cannot instantiate the type Face
//接口是个特殊的抽象类,抽象类不能创建实例化对象
//Face f = new Face();
//怎么测试接口呢??难道是通过创建子类对象,测试使用接口吗?? ----是的
//报黄线:The value of the local variable s is not used
Son4 s = new Son4();
s.pmethod();
s.love();
//s.i = 1; ---- 报错:The final field Face.i cannot be assigned
//s.i + s.s 不是标准语法----The static field Face.i should be accessed in a static way
System.out.println(Face.i);
System.out.println(Face.s);
Face.hate();
/** 通过以上代码可知:接口与子类间,既是继承关系,又是实现关系,或者说实现关系中包含了继承关系,实现是对继承的优化 */
}
}
//既然要测试接口的使用,需要你创建接口
interface Face{
//创建接口的构造方法
//报错:Interfaces cannot have constructors
// public Face(){}
//创建成员方法/属性
//创建成员属性
//报错:The blank final field i may not have been initialized
// int i;
// String s;
/** 接口中,成员属性,在声明时,必须手动初始化,完成赋值。成员变量,必须在首次声明时初始化赋值,说明此成员属性,是一个常量。 */
int i = 0;
String s = "今天有太阳";
//创建成员方法
//接口中的成员方法不能含有方法体
//abstract method
public void pmethod();
//不是abstract method,而是default方法
public default void love() {
//这又是啥方法声明??
System.out.println(i);
}
//不是abstract method,也不是成员方法,而是static方法
public static void hate() {
//这又是啥方法声明??
System.out.println(s);
}
}
//The type Son must implement the inherited abstract method Face.pmethod()
//abstract method Face.pmethod()抽象方法
//inherited继承
//子类、实现类
class Son4 implements Face{
/** ----add unimplemented methods
----make type Son abstract */
@Override
public void pmethod() {
// TODO Auto-generated method stub
System.out.println("今天天气正好:"+s+"/"+i);
}
}
相关推荐
【Java基础知识 19】Java接口的作用和意义
Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
A:LinkedList实现了List接口; B: AbstractSet实现了Set接口; C: HashSet继承自AbstractSet基类; D: WeakMap继承自 AbstractMap
List,Set,Map在java.util包下都是接口 List有两个实现类:ArrayList和LinkedList Set有两个实现类:HashSet和LinkedHashSet AbstractSet实现了Set A:LinkedList实现了List接口; B: AbstractSet实现了Set接口; C: HashSet继承自AbstractSet基类; D: We
【2023,学点儿新Java-21】Java中default的语法格式 | 父类私有的方法能被重写吗?| 详解:this的用法、super的用法 | new在创建对象和数组时分别做了什么?
本篇继续对Java中的关键字进行介绍。其中在Java的“关系”中,较为详细地介绍了Java中的extends、implements、instanceof等关键字以及它们的用法示例。当然了,这里仅仅是对它们进行初步的介绍,在后续教程中博主也会循序渐进,即会详细讲解它们的用法并给出清晰易懂的示例,请大家不要着急哦~
Java-Collection源码分析(十二)——Set、AbstractSet、HashSet和LinkedHashSet
一、set的集合框架 二、Set接口 Set接口除了从Collection接口继承之外,还添加了所有构造函数的约定以及add,equals和hashCode方法的约定。 public interface Set extends Collection { //返回此集合中的元素数(其基数)。 int size(); //如果此集合不包含元素,则返回true。
【智驾与大模型】端到端与多模态大模型的精彩之旅
智驾和大模型的回顾与展望。开头的笔者自述也说了些心窝子话,边缘计算的监管刻不容缓!
「大模型学习」(11)kv cache与vllm详解,一文读懂!
Key(键):表示上下文的特征。Value(值):表示上下文的内容。Query(查询):表示当前 token 的查询向量。AttentionQKVsoftmaxQKTdkVAttentionQKVsoftmaxdkQKTV),每次生成一个新 token(比如下一个词),模型会再次查看之前的所有K和V,以计算当前 token 的注意力。问题:每次都重新计算之前的 K/V 很浪费!项目维度(简化)含义Q当前 token 的查询向量。
Java语言-----封装、继承、抽象、多态、接口
Java的继承、多态、抽象、接口的详细讲解。继承的四种访问控制符、多态的转型、抽象的定义等等详细讲解。
电池保护板为什么采用NTC热敏电阻而不是PTC热敏电阻?
R25=10K,即环境温度25°时,阻值是10K),温度变化1°C,阻值相应地明显变化,温度响应很灵敏,也就能精准地反向换算出阻值对应的温度。另外,还有功率型NTC热敏电阻,其主要用在开关电源设计中,串联在市电输入上,抑制浪涌电流。电池保护板上的NTC热敏电阻(NTC一端接地,另一端接电池充电控制IC管脚),在电池温度上升时,NTC热敏电阻温度也会随之上升,从而NTC电阻值会下降,因此电池充电控制IC用ADC检测的电压值就降低,当检测到的电压值达到下限阈值时,电池充电控制IC就会停止对电池的充电或放电。
Java8基础(1):接口中的default和static方法
1、Java8接口 常量 抽象方法 默认方法 静态方法 聊聊Java8接口中的default和static方法_zab635590867的博客-优快云博客_接口中的default方法和static方法 接口中的方法_sinat_34089391的博客-优快云博客_接口中的方法 java8中接口default、static新特性,与抽象类区别_zyq_2014的博客-优快云博客_抽象类default java中接口(interface)详解_sun_shine...
《炬丰科技-半导体工艺》用于半导体的RCA清洁技术
书籍:《炬丰科技-半导体工艺》 文章:用于半导体的RCA清洁技术 编号:JFKJ-21-1073 引言 RCA清洗技术是用于清洗硅晶圆等的技术,由于其高可靠性,30多年来一直被用于半导体和平板显示器(FPD)领域的清洗。其基础是以除去颗粒为目的的氨水-过氧化氢溶液组成的SC―1洗涤和以除去金属杂质为目的的盐酸-过氧化氢溶液组成的SC―2洗涤相结合的洗涤技术。SC-1洗涤的机理说明如下。首先,用过氧化氢氧化硅晶片的表面,用作为碱的氨蚀刻氧化硅,并通过剥离去除各种颗粒。此外,如图1所示,在pH 10.5附近的S
基于AMD AU15P FPGA的SLVS-EC桥PCIe设计方案分享
各位FPGAer周末愉快,今天熊猫君分享一个基于AMD AU15P FPGA的SLVS-EC桥PCIe设计方案。
【Java基础】接口与继承
(3)如果子类没有这个属性,就看父类有没有这个属性(如果父类有该属性,并且可以访问,就返回信息…(4)最终运行效果看子类(运行类型)的具体实现,即调用方法时,按照从子类(运行类 型)开始查找方法。接口就是约定一些方法,而这些方法的具体方法体由实现接口的类实现,形成一套规范的统一的方法体系。虽然构造器,代码块不能被继承,但是在创建子类实例的时候,会调用父类的代码块和构造器。(4)如果父类没有就按照(3)的规则,继续找上级父类,直到Object…当继承的方法和接口的默认方法相同时,调用继承的方法。
生信技能53 - WisecondorX自动化批量npz转换和reference构建
wiseconrdoX分析CNV适用于CNVseq、NIPT和WGS等项目。
java接口中的default方法
在java8以后,接口中可以添加使用default或者static修饰的方法,在这里我们只讨论default方法,default修饰方法只能在接口中使用,在接口种被default标记的方法为普通方法,可以直接写方法体。 实现类会继承接口中的default方法 如果接口A中有default方法: public interface A { public default void a(){ ...
ubuntu20.04屏幕亮度无法调节(亮度条调节无效)的简单靠谱解决方案及踩坑历程
0 前言 网上关于ubuntu系统亮度无法调节的问题的解决方法有很多,但是绝大部分并没有什么用(这也是我自己的亲身体会),或者并不靠谱。在遍尝各路方法过后,我终于解决了这一棘手的问题(毕竟最大亮度真的非常刺眼,无法长时间直视),在此记录一下踩坑历程以及最后的解决方案。 1 Naive方法 由于使用需要,最近在电脑原有的win10基础上安装了ubuntu双系统。我安装的是当前新版的ubuntu20.04.2.0,靠谱的安装教程可以参考这里。 之前师兄说双ssd安装双系统会有系统启动引导的问题出现,
YOLOv11-seg改进系列 | 引入CVPR2022 MetaFormer,零参数池化Token混合+StarReLU MLP,精度涨不掉速
本文提出了一种改进YOLOv11分割任务的C3k2_PoolingFormer模块,通过引入MetaFormer架构和Pooling Token Mixer,在保持模型轻量化的同时增强全局感受野建模能力。核心创新包括:1)使用零参数的AvgPool3×3差值作为Token Mixer,实现高效邻域信息聚合和局部对比增强;2)采用StarReLU MLP替代传统激活函数,提升非线性表达能力。改进后模型仅增加6.1%参数量,却能显著提升分割精度,特别适用于需要长程依赖建模的实例分割任务。该设计为轻量级视觉模型提
default关键字
default关键字default在Switch中的使用default在接口中的使用(jdk1.8之后)两个接口中默认方法冲突问题类与接口中定义了相同的方法 default关键字在Java中主要有两个用法,一个是在switch中执行,另一个是jdk1.8之后使用default关键字在接口中定义普通方法。 default在Switch中的使用 default会在case匹配失败后执行 int c...
汉书HE8,好用的汇编代码编写工具
汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大
《Java》抽象类和接口的区别
今天来研究一些之前学习遗留的问题,没有认真去解决到的问题,本博文的主题是总结一下抽象类abstract与接口interface 的区别
OV9734 DATASHEET,完整规格书
OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等
IEM模型,地表粗糙度模拟
利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟
java基础之接口
接口 interface 接口的定义 [访问权限修饰符] interface 接口名{ //接口成员 } 接口中可以定义的成员有: 方法 方法都是抽象方法 访问权限为public 属性 只能是常量,声明时同时赋值 访问权限为public public static final 接口的实现 关键字: implements //A 是接口 B的实现类 public class ...
jdk-8u144-linux-x64.tar.gz.
该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包
interface接口
抽象类大多用于抽取相关子类的共用行为方法实现或者是共同成员变量,然后通过继承的方式达到代码复用的目的。接口是对行为的抽象,它是抽象方法的集合,利用接口可以达到行为定义和业务实现分离的架构设计目的,粗接口的多实现以及多重继承等特性,在架构设计上更灵活, 易扩展。在抽象类中,抽象方法本质上是定义行为规范:规定父类中的抽象行为(抽象方法),要。Java的接口( interface )盱定义纯粹的抽象行为(方法)规范。一个类实现interface接口时,要求必须实现该接口中所有的抽象方法。
Java的抽象类和接口
🎉🎉🎉哈喽!!!大家好,这里是 我不是小明同学 🎆欢迎各位小伙伴关注➕点赞➕留言➕收藏 🎆我坚信努力奔跑才能与幸运不期而遇。 🎆🎉🎉🎉作者知识水平有限,若有什么错误或者需改进之处希望大家指出,若是你有更好的代码希望能给博主留言,博主希望能在优快云与各位一起进步。 目录 抽象类 抽象类语法 抽象类特性 接口 语法规则 接口使用 接口的特性 实现多个接口 接口间的继承 抽象类 在解决实际问题时,我们一般将父类定义为抽象类,需要使用这个父类进行继承与多态处理。 在..
全网最细java零基础学习就业课程教学之java基础篇7:面向对象3
java零基础就业
Java--接口--JDK8新特性--详解/实例
本文介绍Java的接口知识。包括:JDK8新特性(default、static),匿名内部类。
JAVA8版本
开始我们也提到,interface 新增default和static修饰的方法,为了解决接口的修改与现有的实现不兼容的问题,并不是为了要替代abstract class。在 java 8 中专门有一个包放函数式接口java.util.function,该包下的所有接口都有 @FunctionalInterface 注解,提供函数式编程。在其他包中也有函数式接口,其中一些没有@FunctionalInterface 注解,但是只要符合函数式接口的定义就是函数式接口,与是否有。
【JDK8】default
目录官方文档default static多个默认方法 官方文档 https://docs.oracle.com/javase/tutorial/java/IandI/defaultmethods.html http://cr.openjdk.java.net/~briangoetz/lambda/Defender%20Methods%20v4.pdf 接口可以有实现方法,而且不需要实现类去实现其方法。 Java 8中出现,接口添加default方法,不强制实现了该接口的类也实现这个新加的方法 效率高:在字节
封装(static的性质、代码块)
我们知道面向对象语言有三大特征:封装,继承,多态。在此之前我们也知道了什么是类和对象(一定要有这些基础知识,详情请看Java中的类和方法(方法重载)-优快云博客这一篇我们就来详细讲解封装和继承。为了更好的管理类,我们提出了一个包的概念,把多个类收集在一组,称为软件包。包其实就是文件夹下的一个类。在同一个工程中,允许存在相同名称的类,只要处在不同的包中即可。我们平时输入要用到Scanner这个类,用到这个类需要导包。//不导包只能这样指定使用//导入包以后就可以这样使用。
2万+



被折叠的 条评论
为什么被折叠?



