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

面向对象的一点小想法

接口里的方法可以写也可以不写

如果写的话,那么得是默认方法,需要在前面加个default

在这里插入图片描述

对于默认方法,能够重写,或者直接继承(也就是直接用)

比如下面:

在这里插入图片描述
就直接调用了接口的默认函数nibuhao,

如果重写的话,就是这样:

在这里插入图片描述

当然,有一种情况一定得重写,就是

一个类有可能使用相同的默认方法实现两个接口

public interface vehicle {default void print() {System.out.println("I am a vehicle!");}
}public interface fourWheeler {default void print() {System.out.println("I am a four wheeler!");}
}

第一个解决方案是创建一个自己的方法来覆盖默认实现。

public class car implements vehicle, fourWheeler {public void print() {System.out.println("I am a four wheeler car vehicle!");}
}

第二种方案是使用 super 调用指定接口的默认方法。

public class car implements vehicle, fourWheeler {public void print() {vehicle.super.print();}
}

转载自

另外的就是直接实现,像上图的nihao就是在实现类中实现。

另外,实现类也可以继承接口里已经写的方法,直接用。

其次,接口可以继承多个接口
比如接口A继承接口B和接口C

那么实现接口A的类就可以用B和C的方法

在这里插入图片描述
在这里插入图片描述
而且经过实验,发现 实现类A实现接口B,类C继承实现类A,
那么类C将拥有A的方法和B的默认实现方法。

当然,如果类A重写了B的默认方法,那么C继承的就是重写的方法。

还有一种很牛逼的做法,在实现类A中,实现接口B的方法,然后在实现的方法中用到B的默认函数!

相关文章:

面向对象的一点小想法

接口里的方法可以写也可以不写 如果写的话,那么得是默认方法,需要在前面加个default 对于默认方法,能够重写,或者直接继承(也就是直接用) 比如下面: 就直接调用了接口的默认函数nibuhao&#…...

数据仓库工作问题总结

1. ODS 层采用什么压缩方式和存储格式? 压缩采用 Snappy ,存储采用 orc ,压缩比是 100g 数据压缩完 10g 左右。 2. DWD 层做了哪些事? 1.、数据清洗 空值去除过滤核心字段无意义的数据,比如订单表中订单 id 为 nul…...

Java常用算法

关于时间复杂度: 平方阶 (O(n2)) 排序 各类简单排序:直接插入、直接选择和冒泡排序。线性对数阶 (O(nlog2n)) 排序 快速排序、堆排序和归并排序。O(n1)) 排序, 是介于 0 和 1 之间的常数。希尔排序。线性阶 (O(n)) 排序 基数排序&#xff0c…...

插画网课平台排名

插画网课平台哪个好,插画网课排名靠前的有哪些,今天给大家梳理了国内5家专业的插画网课平台,各有优势和特色,给学插画的小伙伴提供选择,报插画网课一定要选择靠谱的,否则人钱两空泪两行! 一&am…...

雷达、定位、跟踪等信号处理邻域SCI期刊整理及推荐

雷达邻域SCI期刊整理及推荐:题名、刊物信息、撰写特点、审稿周期及投稿难度总结 定位/跟踪邻域SCI期刊整理及推荐:题名、刊物信息、撰写特点、审稿周期及投稿难度总结 估计/滤波/融合等信号处理邻域SCI期刊整理及推荐:题名、刊物信息、撰写…...

NDK C++ 指针常量 常量指针 常量指针常量

指针常量 常量指针 常量指针常量// 指针常量 常量指针 常量指针常量#include <iostream> #include <string.h> #include <string.h>using namespace std;int main() {// *strcpy (char *__restrict, const char *__restrict);// strcpy()int number 9;int n…...

常见前端基础面试题(HTML,CSS,JS)(一)

html语义化的理解 代码结构: 使页面在没有css的情况下,也能够呈现出好的内容结构 有利于SEO: 爬虫根据标签来分配关键字的权重,因此可以和搜索引擎建立良好的沟通,帮助爬虫抓取更多的有效信息 方便其他设备解析&#xff1a; 如屏幕阅读器、盲人阅读器、移动设备等&#xff0c…...

Delphi RSA加解密

感谢、感谢、感谢大佬的分享&#xff0c;https://github.com/ZYHPRO/RSAEncryptAndDecode 目录 1. 前言 2. 准备工作 3. Demo注意事项说明 3.1 公钥、私钥文本格式 3.2 回车键的影响 3.3 中文加解密说明 4. 结语 1. 前言 最近工作上安排了一个项目&#xff0c;与工商银行之…...

oracle基本操作

文章目录基本操作用户权限管理&#xff1a;权限传递&#xff1a;角色管理&#xff1a;数据导出&#xff1a;对于远程数据库查看表空间查看表空间路径查看被锁的对象基本操作 connect sys/zxm as sysdba-- 用 sys用户登录 create user jsdx identified by jsdx 创建用户 jsdx 密…...

hive只复制表结构不复制表数据

目录 一、背景 二、准备测试数据 1.建表 2.造测试数据 三、操作 1.CTAS &#xff08;1&#xff09;.无分区表测试 &#xff08;2&#xff09;.分区表测试 2.LIKE &#xff08;1&#xff09;.无分区表测试 &#xff08;2&#xff09;.分区表测试 一、背景 有一张ori_…...

如何将Linux的NIC 名称更改为 eth0 而不是 enps33 或 enp0s25,只要几秒钟

概述 我们使用Linux系统&#xff0c;网卡名称通常都是eth0&#xff0c;但是有一些新的linux发行版&#xff0c;网卡名字 enps33 或 enp0s25。 pengubuntu:~$ ifconfig ens33 Link encap:Ethernet HWaddr 00:0c:29:fd:4d:3a inet addr:192.168.0.113 Bcast:192.168.0.…...

位运算笔记

1. 为什么要学位运算 因为这是计算机内部运算的语言&#xff0c;所以会非常快。 本人是因为学习算法经常遇见一些求二进制中的0和1的各种操作&#xff0c;好多都不知道所以特此整理一下&#xff0c;如有不对&#xff0c;烦请指正。 2. 什么是位运算 程序中的所有数在计算机内存…...

2023全国首个区块链平台发布,区块链绿色消费积分系统玩法悄然上市

全国首个区块链平台发布&#xff0c;区块链绿色消费积分系统玩法悄然上市 2023-02-23 16:15梦龙 大家好&#xff0c;我是你们熟悉而又陌生的好朋友梦龙&#xff0c;一个创业期的年轻人 2月22日&#xff0c;首届中国数字产权创新大会在成都举办。在本次大会上&#xff0c;全国…...

【异常】因为忘加了租户查询条件,导致重复ID导入失败Duplicate entry ‘XXX‘ for key ‘PRIMARY‘

一、异常说明 Error updating database. Cause: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry 670 for key PRIMARYThe error may exist in /mall/admin/mapper/GoodsCategoryMapper.java (best guess)The error may involve .admin.mapper.GoodsCate…...

证明CPU指令是乱序执行的

承接上文CPU缓存一致性原理双击QQ.exe从磁盘加载到内存里面&#xff0c;内存里面就会有了一个进程&#xff0c;进程产生的时候会产生一个主线程&#xff0c;就是main方法所在的线程&#xff0c;cpu会找到main开始的地方&#xff0c;把它的指令读取过来放到程序计数器&#xff0…...

css 属性和属性值的定义

文章目录css文本属性作业列表属性背景属性作业css文本属性 序号属性描述说明1font-size字体大小浏览器默认16px&#xff1b;2font-family字体当字体是中文字体&#xff0c;英文字体&#xff0c;中间有空格时候&#xff0c;要加双引号&#xff0c;多字体之间用逗号隔开 默认微软…...

Python获取中国大学MOOC某课程评论及其参与人数

文章目录前言一、需求二、分析三、运行结果前言 本系列文章来源于真实的需求本系列文章你来提我来做本系列文章仅供学习参考 一、需求 1、课程参加人数 2、课程学员名称及其评论 二、分析 首先查看网页源代码是否有需要的数据 课程参加人数 课程学员名称及其评论 F12 打开浏…...

【C++】类和对象(完结篇)

文章目录1. 再谈构造函数1.1 初始化列表1.2 explicit关键字2. static 成员2.1 静态成员变量2.1 静态成员函数2.3 练习2.4 总结3. 匿名对象4. 友元4.1 友元函数4.2 友元类5. 内部类6. 拷贝对象时编译器的一些优化7. 再次理解类和对象这篇文章呢&#xff0c;我们来再来对类和对象…...

低代码开发可以解决哪些问题?

低代码开发可以解决哪些问题&#xff1f;如果用4句话去归纳&#xff0c;低代码开发可以解决以下问题—— 为企业提供更高的灵活性&#xff0c;用户可以突破代码的限制自主开发业务应用&#xff1b;通过减少对专业软件开发人员的依赖&#xff0c;公司可以快速响应市场上的新业务…...

Linux 中使用 docker-compose 部署 MongoDB 6 以上版本副本集及配置 SSL / TLS 协议

一、准备环境 MongoDB 副本集部署至少 3 个节点&#xff08;奇数节点&#xff09;&#xff0c;为了保障数据安全性&#xff0c;可考虑将 MongoDB 节点分布在不同的主机上&#xff0c;本示例使用一台主机部署 3 个 MongoDB示例。 1、创建 MongoDB 集群数据相关目录 # 创建 Mo…...

[具身智能-218]:针对不同编程语言和应用场景,AI自动编程擅长与不擅长之处?

AI自动编程的能力在不同编程语言和应用场景下表现出显著差异。选择合适组合&#xff0c;能让AI成为强大的“加速器”&#xff0c;反之则可能带来风险。 核心原则是&#xff1a;AI对主流语言和标准化任务的支持最好&#xff0c;而在处理底层、高性能或复杂业务逻辑时则需要人工…...

单轮车辆ABS防抱死控制Simulink仿真模型 1.可控制切换冰雪路面和开关ABS系统控制 2.仿真输出时域下的车速/轮速/制动距离/滑移率/控制信号曲线,可以配置车重/滑移率-摩擦系数曲线/主缸

单轮车辆ABS防抱死控制Simulink仿真模型 1.可控制切换冰雪路面和开关ABS系统控制 2.仿真输出时域下的车速/轮速/制动距离/滑移率/控制信号曲线&#xff0c;可以配置车重/滑移率-摩擦系数曲线/主缸压力/制动效能因数等参数。 3.有基础说明文档单轮车辆ABS防抱死控制Simulink仿真…...

PINN在流体力学中的应用:Burger方程参数反演全流程解析

PINN在流体力学中的革命性实践&#xff1a;Burger方程参数反演深度指南 当计算流体力学遇上深度学习&#xff0c;一场静悄悄的革命正在发生。传统数值方法在求解复杂流体问题时往往面临计算成本高、适应性差的瓶颈&#xff0c;而物理信息神经网络&#xff08;PINN&#xff09;的…...

ZUI 3组件库深度解析:50+实用组件如何提升开发效率 [特殊字符]

ZUI 3组件库深度解析&#xff1a;50实用组件如何提升开发效率 &#x1f680; 【免费下载链接】zui ZUI is an HTML5 front UI framework. 项目地址: https://gitcode.com/gh_mirrors/zu/zui ZUI 3是一个全新的开源HTML5前端UI框架&#xff0c;提供了超过50个实用组件&am…...

SDXL-Turbo创作分享:用实时绘画工具生成的精美作品案例

SDXL-Turbo创作分享&#xff1a;用实时绘画工具生成的精美作品案例 1. 引言&#xff1a;实时AI绘画的新纪元 想象一下这样的场景&#xff1a;你正在构思一个赛博朋克风格的城市景观&#xff0c;随着键盘的每一次敲击&#xff0c;眼前的画面实时变化&#xff0c;就像魔术师挥动…...

OpenClaw内存优化:千问3.5-35B-A3B-FP8在8GB设备的运行技巧

OpenClaw内存优化&#xff1a;千问3.5-35B-A3B-FP8在8GB设备的运行技巧 1. 为什么需要内存优化 当我第一次尝试在8GB内存的MacBook Pro上运行千问3.5-35B-A3B-FP8模型时&#xff0c;系统几乎立即崩溃了。这让我意识到&#xff0c;想要在资源有限的设备上运行大型语言模型&…...

可能是综合性能最强的PCIe 5.0 SSD!铠侠EXCERIA PRO G2 2TB评测:AIDA64线性写入全程不掉速

一、前言&#xff1a;铠侠首款旗舰级PCIe 5.0 SSD 可能很多读者会疑惑&#xff0c;作为存储领域的一线巨头&#xff0c;在PCIe 5.0时代&#xff0c;为什么铠侠迟迟没有推出旗舰级SSD产品&#xff01; 这主要是因为&#xff0c;早期的PCIe 5.0 SSD主控功耗极高(超过10W)&#xf…...

戴尔G15终极散热控制指南:告别AWCC臃肿,拥抱轻量级开源方案

戴尔G15终极散热控制指南&#xff1a;告别AWCC臃肿&#xff0c;拥抱轻量级开源方案 【免费下载链接】tcc-g15 Thermal Control Center for Dell G15 - open source alternative to AWCC 项目地址: https://gitcode.com/gh_mirrors/tc/tcc-g15 还在为戴尔G15笔记本的高温…...

如何快速获取B站直播推流码:摆脱直播姬限制的终极指南

如何快速获取B站直播推流码&#xff1a;摆脱直播姬限制的终极指南 【免费下载链接】bilibili_live_stream_code 用于在准备直播时获取第三方推流码&#xff0c;以便可以绕开哔哩哔哩直播姬&#xff0c;直接在如OBS等软件中进行直播&#xff0c;软件同时提供定义直播分区和标题功…...

专业游戏界面增强:HunterPie如何提升Monster Hunter: World的狩猎体验

专业游戏界面增强&#xff1a;HunterPie如何提升Monster Hunter: World的狩猎体验 【免费下载链接】HunterPie-legacy A complete, modern and clean overlay with Discord Rich Presence integration for Monster Hunter: World. 项目地址: https://gitcode.com/gh_mirrors/…...