java interface的定义变量_【Java关键字-Interface】为什么Interface中的变量只能是 public static final...

2023-11-08

三个关键字在接口中的存在原因:

public:接口可以被其他接口继承,也可以被类实现,类与接口、接口与接口可能会形成多层级关系,采用public可以满足变量的访问范围;

static:如果变量不是static的,那么接口必须实例化才可以访问自己的变量,接口不能被实例化,故非static的变量是无效的;

final:如果变量不是final的,而方法是abstract的,因此接口中的方法又不可以修改变量值,虽然可以直接修改静态成员变量,但所有实现类对应的值都被修改了,此做法等同于抽象类,故需要final修饰成员变量;

何为接口?何为抽象类?

1)抽象类是对一种事物的抽象,即对类抽象,而接口是对行为的抽象。抽象类是对整个类整体进行抽象,包括属性、行为,但是接口却是对类局部(行为)进行抽象。举个简单的例子,飞机和鸟是不同类的事物,但是它们都有一个共性,就是都会飞。那么在设计的时候,可以将飞机设计为一个类Airplane,将鸟设计为一个类Bird,但是不能将 飞行 这个特性也设计为类,因此它只是一个行为特性,并不是对一类事物的抽象描述。此时可以将 飞行 设计为一个接口Fly,包含方法fly( ),然后Airplane和Bird分别根据自己的需要实现Fly这个接口。然后至于有不同种类的飞机,比如战斗机、民用飞机等直接继承Airplane即可,对于鸟也是类似的,不同种类的鸟直接继承Bird类即可。从这里可以看出,继承是一个 "是不是"的关系,而 接口 实现则

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java interface的定义变量_【Java关键字-Interface】为什么Interface中的变量只能是 public static final... 的相关文章

  • linux下的npm安装

    NPM Node Package Manager 即node包管理器 是用Javascript编写 最初由Isaac Z Schlueter开发 它会随着node js一起安装 用户可以通过npm把自己设计的模块分发到registry上 也
  • AD设置覆铜的过孔连接方式

    参考链接 https wenku baidu com view 15666e13f18583d049645956 过孔和焊盘有三种连接状态 noconnect 不连接 reliefconnect 十字形连接 directconnect 直接
  • VS2019 C++ SQL Server 数据库连接

    总体来说有VS有两种配置SQL Server的方式 一种是ADO 另一种是ODBC 这两种方式的查询我都有问题 查询到了结果数据不是乱码就是显示在list control上时值变了 我也不知道为什么 ADO 1 什么是ADO 以下ADO概念
  • IDEA简介及使用

    1 Intellij IDEA简介 Eclipse IBM公司开发 1 1 Jetbrains公司介绍 IDEA是JetBrains公司的产品 这家公司总部位于捷克共和国的首都布拉格 开发人员以严谨著称的东欧程序员为主 该公司旗下还有许多其
  • 关于java中实现word转pdf

    1 java中实现word转pdf几种方式如下 1 使用jacob Java COM Bridge 操作offfice的方式 基于这种方式无论是水印还是格式都可以完美转换 但是这个方式都只是基于windos下 但有些项目是需要部署到linu
  • html 页面友情提示,设置网站404页面的正确做法

    核心提示 HTTP 404 错误意味着链接指向的网页不存在 即原始网页的URL失效 这种情况经常会发生 什么是404错误 HTTP 404 错误意味着链接指向的网页不存在 即原始网页的URL失效 这种情况经常会发生 很难避免 比如说 网页U
  • Java解析环保HJ212协议

    文章目录 什么是环保HJ212协议 自己封装了一个基于java的HJ212解析类 解析效果查看 常用的标准码说明 什么是环保HJ212协议 HJ212是由国家环保行业制定的数据传输标准协议 通常是通过TCP IP通讯方式进行数据传输的 数据
  • java如何文档生成目录

    对于现有文档 含标题 使用spire doc去生成目录 由于不是免费版 没有表格行数限制 但第一页开头有个版权声明 只需要用spire生成目录 然后用poi打开它删去第一行声明即可 spire依赖
  • sublime java插件_将SublimeText3打造成简易Java IDE

    简介与优点 使用该教程 你能使你的Sublime Text3可以作为一个精简版的JAVA IDE工具 既可以独立在cmd控制台运行也可以在Sublime自带的控制台运行 运行后不会有乱码 报错后可以在文本框中直接在对应位置显示 基于原有的j
  • Matplotlib绘图(二)

    目录 Matplotlib 二 绘制一元二次方程的曲线y x 2 绘制正弦曲线和余弦曲线 subplot函数 散点图 Matplotlib 二 绘制一元二次方程的曲线y x 2 Matplotlib有很多函数用于绘制各种曲线 其中plot函
  • Openssl 1024bit RSA算法---公私钥获取和处理(一)

    1 简介 使用OpenSSL生成公私钥文件 然后再将文件中的信息读出的操作 由于要对设备升级 需要用到RSA算法对一部分验证信息进行加密 2 使用OpenSSL获取公私钥 我在window系统尝试安装OpenSSL 但是安装不上 我们可以使
  • 如何让Hyper-V使用CIFS/SMB存储

    如何让Hyper V使用CIFS SMB存储 在我们常见配置Hyper V存储的时候常常使用到的是本地的磁盘或者iSCSI的IP SAN 在使用IP SAN时是通过Iscsi连接器将磁盘挂在为本地的磁盘来使用的 但是在某些场合下没有使用IS
  • KVM——迁移KVM虚拟机

    一 KVM虚拟机迁移的方式 KVM平台中的KVM虚拟机迁移分为以下两种 1 冷迁移 静态迁移 我们存放虚拟机磁盘的目录都是挂在的一个nfs文件系统的磁盘 进行冷迁移时 只要在目标主机上挂载这个nfs文件系统 就可以看到要迁移的那个虚拟机的磁
  • Nuxt2+echarts5报错Unexpected token export?

    当在Nuxt js中使用ECharts 5时出现 Unexpected token export 错误通常是由于Nuxt js默认使用的是CommonJS模块系统 而ECharts 5使用ES模块语法所致 为了解决这个问题 需要对ES模块语
  • esp32-S3专题一:初识esp32

    初识esp32 S3 初识esp32 使用esp32 s3这款芯片开发接近一年了 分享一下开发中的一些经验和项目中的亮点 希望后人能从中借鉴到一些经验 一 优势和缺点 使用的是esp32 s3这款芯片 硬件上搭配300k的RAM的代码运行内
  • BIO、NIO、AIO 有什么区别?

    BIO NIO AIO 有什么区别 BIO 线程发起IO请求 不管内核是否准备好IO操作 从发起请求起 线程一直阻塞 直到操作完成 NIO 线程发起IO请求 立即返回 内核在做好IO操作的准备之后 通过调用注册的回调函数通知线程做IO操作
  • www.wljx.net/forum.php,齐博CMS:主页被黑,不知漏洞在哪?

    用的是PHP168 5 0和PHPWind Forums v6 3 2的高深度整合版本 今天早上发现主页被换了 好在能进后台 能ftp 换回自己的主页 仔细检查 在 cache 文件夹多了一个yf php文件 里面代码如下 请帮忙看看 ad
  • 理解GAN对抗神经网络的损失函数和训练过程

    GAN最不好理解的就是Loss函数的定义和训练过程 这里用一段代码来辅助理解 就能明白到底是怎么回事 其实GAN的损失函数并没有特殊之处 就是常用的binary crossentropy 关键在于训练过程中存在两个神经网络和两个损失函数 n
  • C++的6个缺省函数

    一 在C 中默认产生6个类成员函数 即缺省函数 它们分别是 1 缺省构造函数 2 缺省拷贝构造函数 3 缺省析构函数 4 缺省赋值运算符 5 缺省取址运算符 6 缺省取地址运算符 二 const对于空类 编译器不会生成任何的成员函数 只会生

随机推荐

  • Git将本地项目推送到远程仓库

    第一步 我们需要在自己电脑中创建一个空白文件夹 这个功能就是创建一个本地的版本库 第二步 进入test文件夹 在根部执行Git Bash Here 第三步 通过命令git init把这个文件夹变成Git可管理的仓库 这时你会发现TEST里面
  • react 16新特性介绍

    目录 React v16 0 2017 年 9 月 render 支持返回数组和字符串 错误边界 componentDidCatch Fiber React v16 2 2017 年 11 月 Fragment React v16 3 20
  • VMware NSX 4.0安装、配置和升级实战

    本文通过一个Vmware NSX 4的安装配置实例 扼要说明了一个典型的NSX系统配置 升级过程需要注意的正确步骤 并列出了作者在学习过程中踩过的坑 为同行绕过提供借鉴 1 系统软硬件环境说明 本安装实例 使用了3台Dell PowerEd
  • 【k8s基础篇】k8s scheme1 之内外部版本

    参考 K8s源码分析 3 Resource Version 内外部版本 1 简介 众所周知 在 kubernetes 中所有的 resource 都是基于 group 分组的 例如 apps group 中定义了我们熟悉并常用的 deplo
  • 综合实验(续)

    AdvancedInheritance 描述 不同的动物既有共性也有个性 鸟类会飞 鱼会游泳 请设计类的层次结构进行表示 并通过以下测试 int main Animal animal string type color bool Ostei
  • PuTTY 中文教程 作者:柴锋 2006年11月

    http chaifeng com blog 2007 06 putty 200611 html
  • Regionserver频繁挂掉故障处理实践

    近期腾讯云的一家大客户频繁出现HBase regionserver 挂掉 影响业务正常使用 通过调整堆栈大小 gc优化 超时时间等都无法解决该问题 经过细致并综合分析hbase regionserver hbase master以及 zoo
  • vue项目打包和部署?

    vue项目打包和部署 1 执行打包命令 npm run build 打包过程 看到上图则代表已打包完成 此时项目中会生成dist目录 dist目录中有static目录和index html 2 打包完成后 此时直接用浏览器打开index h
  • 每日一题:Alice的德州扑克

    Alice的德州扑克 题目 Daimayuan Online Judge 从最大的牌开始判断 如果满足直接输出 return 0 否则就接着判断 一层一层往下判断 AC代码 include
  • win10添加环境变量后没用_今天告诉你Win10系统配置环境变量未生效的完全解决教程...

    有网友用win10系统的时候遇到过Win10系统配置环境变量未生效的问题 不知道大家是不是也遇到过 想必我们大家以后也可能会遇到Win10系统配置环境变量未生效的情况 那能不能解决呢 肯定时可以解决Win10系统配置环境变量未生效的问题 小
  • DDOS攻击

    一 DOS VS DDOS Dos是拒绝服务攻击 而DDOS Distribution Denial of service 是分布式拒绝服务攻击 Dos与DDOS都是攻击目标服务器 网络服务的一种手段 区别 DOS是利用自己的计算机攻击目标
  • 华为android9手机短信不提醒设置,华为手机微信不提醒怎么办 华为收不到微信提示信息多种解决方法...

    到底是哪里出了问题呢 捣鼓了半天 宝宝终于发现了 原来微信收不到消息竟是因为设置有误 有同遭遇的亲们看这里吧 快快get新技能吧 华为收不到微信提示信息多种解决方法 请确认以下事项 确认已开启通知功能 a 开启微信应用内部的通知功能 我 g
  • Spring——动态代理

    动态代理 理解 基于反射机制 掌握程度 1 什么是动态代理 使用jdk的反射机制 创建对象的能力 创建的是代理类的对象 而不用你创建类文件 不用谢java文件 动态 在程序执行时 调用JDK提供的方法才能创建代理类的对象 jdk动态代理 必
  • 如果你是以下几类VR程序员,别浪费青春在 Vulkan 上了

    如果你是以下几类VR程序员 别浪费青春在 Vulkan 上了 编码之妙 2016 08 28 09 01 如果你属于以下几类人 那么别浪费时间在 Vulkan 上了 国内名牌大学的大学生 Vulkan 性价比极低 比精通 C 的性价比还低
  • 区块链加密算法简述

    1 简述 加密简单而言就是通过一种算法将明文信息转换成密文信息 信息的的接收方能够通过密钥对密文信息进行解密获得明文信息的过程 根据加解密的密钥是否相同 算法可以分为对称加密 非对称加密和对称加密和非对称加密的结合 2 对称加密 对称加密顾
  • 2.9-2.12段寄存器和cs:ip

    段寄存器有四类 cs ds ss es 其中 cs是代码寄存器 它指向的代码段是一组地址连续 起始地址为16的倍数的内存单元 这个代码段可以存储长度为N N lt 64KB 的一组代码 而与之相关联的是IP 指令指针寄存器 步骤如下 1 c
  • 如何使用postman做接口测试

    常用的接口测试工具主要有以下几种 Postman 简单方便的接口调试工具 便于分享和协作 具有接口调试 接口集管理 环境配置 参数化 断言 批量执行 录制接口 Mock Server 接口文档 接口监控等功能 JMeter 开源接口测试及压
  • Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED参数详解

    Intent FLAG ACTIVITY RESET TASK IF NEEDED 参数详解 If set and this activity is either being started in a new task or bringin
  • C# 读一个文件转成json

  • java interface的定义变量_【Java关键字-Interface】为什么Interface中的变量只能是 public static final...

    三个关键字在接口中的存在原因 public 接口可以被其他接口继承 也可以被类实现 类与接口 接口与接口可能会形成多层级关系 采用public可以满足变量的访问范围 static 如果变量不是static的 那么接口必须实例化才可以访问自己