当前位置: 首页 > news >正文

【精选】Java面向对象进阶——接口细节:成员特点和接口的各种关系

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~
✨主攻领域:【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!

目录

接口中成员的特点

代码

接口和类之间的关系

代码1

代码2


接口中成员的特点

  • 成员变量

    只能是常量

    默认修饰符:public static final

  • 构造方法

    没有

  • 成员方法

    只能是抽象方法

    默认修饰符:public abstract

代码

接口:inter

package demon6;public interface inter {//public static finalint a = 10;}

测试类:test

package demon6;public class test {public static void main(String[] args) {System.out.println(inter.a);
//        inter.a = 20;}
}

接口和类之间的关系

  • 类和类的关系

    继承关系,只能单继承,不能多继承,但是可以多层继承

  • 承类和接口的关系

    实现关系,可以单实现,也可以多实现,还可以在继承一个类的同时实现多个接口

  • 接口和接口的关系

    继承关系,可以单继承,也可以多继承

代码1

接口1:inter1

package demon6;public interface inter1 {public abstract void method1();public abstract void method2();public abstract void method3();}

接口2 :inter2

package demon6;public interface inter2 {public abstract void method4();
}

实现类:interimpl

package demon6;public class interimpl implements inter1,inter2{@Overridepublic void method1() {}@Overridepublic void method2() {}@Overridepublic void method3() {}@Overridepublic void method4() {}
}

代码2

接口1:inter1

package demon7;public interface inter1 {public abstract void method1();
}

接口2:inter2

package demon7;public interface inter2 {public abstract void method2();
}

接口3:inter3 (继承接口1和接口2)

package demon7;public interface inter3 extends inter1,inter2{public abstract void method3();}

测试接口:interimpl

package demon7;public class interimpl implements inter3{@Overridepublic void method1() {System.out.println("method1");}@Overridepublic void method2() {System.out.println("method2");}@Overridepublic void method3() {System.out.println("method3");}
}

测试类:test

package demon7;public class test {public static void main(String[] args) {interimpl i = new interimpl();i.method1();i.method2();i.method3();}
}

相关文章:

  • 随想录刷题笔记 —二叉树篇7 617合并二叉树 700二叉搜索树中的搜索 98验证二叉搜索树
  • C++数据结构与算法——双指针法
  • python-使用ffmpeg批量修改文件的后缀名
  • vue自定义指令(图文示例)
  • Leetcode3026. 最大好子数组和
  • 基于BP算法的SAR成像matlab仿真
  • Sora时代,我们的AI应该何去何从?——关于Sora大模型的思考
  • IIC--集成电路总线
  • C++ 多起点的bfs(五十九)【第六篇】
  • 文生图提示词:天气条件
  • 数据结构之时空复杂度
  • 软件工程师,超过35岁怎么办
  • spring cloud stream
  • MySQL的配置文件my.cnf正常的配置项目
  • 信息安全性测试
  • JS中 map, filter, some, every, forEach, for in, for of 用法总结
  • 【Leetcode】104. 二叉树的最大深度
  • C学习-枚举(九)
  • Git学习与使用心得(1)—— 初始化
  • GraphQL学习过程应该是这样的
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • Linux Process Manage
  • 分布式事物理论与实践
  • 回流、重绘及其优化
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 物联网链路协议
  • 项目实战-Api的解决方案
  • 延迟脚本的方式
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 栈实现走出迷宫(C++)
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • 组复制官方翻译九、Group Replication Technical Details
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • #100天计划# 2013年9月29日
  • #etcd#安装时出错
  • #Linux(权限管理)
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (ros//EnvironmentVariables)ros环境变量
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (未解决)macOS matplotlib 中文是方框
  • (原創) 如何使用ISO C++讀寫BMP圖檔? (C/C++) (Image Processing)
  • .cn根服务器被攻击之后