Java中修饰符的作用

2023-11-04

1:访问控制修饰符

   作用:用于控制被修饰变量,方法,类的可见范围;

   public的访问级别是最高的,其次是protected,默认和private;

   成员变量和成员方法有四个访问级别:公开,受保护,默认,私有;

   存在继承关系时,父类不可以private,子类无法被继承;

   顶层类是公开或者默认级别,该类不能被protected和private修饰;

   局部变量不能被访问控制修饰符修饰;

 总结:在不同包下能够访问的权限修饰符只有:public与protected,但是protected必须要有继承的关系才能访问

2:abstract修饰符

  • 抽象类不能被实例化;
  • 抽象类中可以没有抽象方法,但是包含类抽象方法的类一定被abstract修饰了;
  • 如果子类没有实现父类中的所有抽象方法,那么子类也要定义为抽象类;
  • 抽象类不能被定义为private,final,static类型;
  • 非抽象类继承抽象类的时候,必须实现抽象类中的所有抽象方法;

 

3:final修饰符

  • final 变量必须被显示初始化,只能赋值一次;
  • final修饰基本类型变量的时候,该变量不能被重新赋值;
  • final修饰引用类型变量的时候,该变量不能重新指向其他对象;
  • final修饰的方法为最终的方法,该方法不能被重写;
  • final修饰的类为超类,不能被继承;

 4:static修饰符

  • static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态的static代码块;
  • 被static修饰的成员变量和成员方法独立于该类的任何对象;
  • 只要这个类被加载,就会给static修饰的变量分配空间,也被称为类变量;

注意事项:
abstract 与 private
abstract 与 final
abstract 与 static  在一起无意义,会报错。

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

Java中修饰符的作用 的相关文章

  • 编译时在代码中替换Java静态最终值?

    在java中 假设我有以下内容 fileA java class A public static final int SIZE 100 然后在另一个文件中我使用这个值 fileB java import A class b Object t
  • 重温经典的 C++ 静态初始化顺序惨败

    我最近遇到了一个奇怪的情况 让我们考虑下面的类 放在header h ifndef HEADER H define HEADER H include
  • __callStatic():从静态上下文实例化对象?

    我对 PHP 中的 静态 和 动态 函数和对象如何协同工作感到困惑 特别是在 callStatic 方面 callStatic 的工作原理 您可以有一个普通的班级 MyClass 在班级内您可以 放置一个名为 callStatic 的静态函
  • 如何在静态方法中获取会话变量的值?

    我正在使用带有 jQ uery 的 ASP NET 页面方法 如何在 C 中的静态方法中获取会话变量的值 protected void Page Load object sender EventArgs e Session UserName
  • Sails js 路由静态 html

    我想在我的 sails js 应用程序中完全分离客户端和服务器端 如果我删除 路由 它将自动从 assets 文件夹中提供一个名为index html的文件 我想从资产文件夹中提供另一个文件 我该怎么做 如果你看看 sails 使用的中间件
  • 使用静态指针的动态内存分配

    有人可以向我解释一下为什么下面的代码会这样工作吗 这里我已经初始化了outd作为文件中的静态指针code2 c 然后我动态地为其分配内存malloc 从单独文件中的主函数中一次又一次地调用它code1 c 它看起来整个数组以静态方式运行 因
  • ES6 静态方法引用 self? [复制]

    这个问题在这里已经有答案了 我有两节课 存储库和用户存储库 我想在 Repository 中定义一个静态方法 该方法在运行时调用 UserRepository 中的静态函数 有什么干净的方法可以做到这一点吗 class Repository
  • java银行程序帐户ID不上去?

    每次创建银行帐户时 帐户 ID 都应增加 1 但每次我尝试提取 Id 时 我只会得到帐户 ID 为 0 任何建议 因为我完全按照我学习的书中的方式进行操作而且它仍然没有更新 帐户构造函数 public class BankAccount p
  • 有没有办法重置特定类的所有静态属性?

    您可能知道 静态属性使测试变得困难 有没有办法将特定类的所有静态属性重置回其初始状态 理想情况下 这不需要为每个类定制代码 但可以通过继承以通用方式使用 或者完全从类外部使用 请不要回复 不要使用静态属性 之类的内容 谢谢 假设您正在使用
  • Java加减法与金钱

    我正在尝试对美元和美分进行加法和减法 但在超过 100 美分和低于 0 美分时遇到困难 我的代码可以很好地添加任何内容 直到我需要将 100 美分转换为 1 美元 我无法将我的话转化为代码 但我知道需要做什么才能将美分转换成美元 仅供参考
  • 最终类中的静态函数是否隐式最终?

    我的问题基本上与this https stackoverflow com q 8766476 3882565一 但这是否也适用于static功能 我想了解 编译器是否处理所有static函数在一个final类为final 是否添加final
  • 关于 Swift 中重写类属性的困惑

    我已阅读 Swift 文档并在这里搜索 但我仍然不确定如何实现类层次结构 其中每个子类为继承的静态属性设置自定义值 那是 基类定义了一个静态属性 所有实例共享相同的值 子类覆盖静态属性 所有实例共享相同的值 这与基类不同 财产可以储存吗 另
  • 将 java 方法参数设置为最终参数

    那有什么区别final在下面的代码之间进行 将参数声明为有什么好处final public String changeTimezone Timestamp stamp Timezone fTz Timezone toTz return pu
  • 是否可以在编译时/运行时生成标记字符串的全局列表?

    因此 我正在努力将我的 C 应用程序翻译成多种语言 我目前正在使用的是这样的 define TR x lookupTranslatedString currentLocale x wcout lt lt TR L This phrase i
  • 非静态类中的静态方法有什么意义?

    我无法理解以下代码的潜在错误 class myClass public void print string mess Console WriteLine mess class myOtherClass public static void
  • 如何使用 PowerMock 模拟返回 void 的静态方法?

    我的项目中有一些静态 util 方法 其中一些只是传递或抛出异常 有很多关于如何模拟返回类型不是 void 的静态方法的示例 但是我如何模拟一个将 void 返回为 的静态方法 doNothing 非空版本使用以下代码行 PrepareFo
  • iphone sqlite 静态链接?

    有人静态链接 sqlite 而不是使用动态链接 吗 我遇到的问题是 越狱手机的用户没有与普通 iPhone 所采用的 sqlite 版本相同的版本 因此导致崩溃 我假设在我的应用程序中静态链接已知版本的 sqlite 就是答案 我需要全文支
  • 如何让一段代码只执行一次?

    我有一个应用程序 其中有多种功能 每个函数都可以根据用户输入多次调用 但是 我只需要在函数中执行一小段代码一次 最初是在应用程序启动时执行 当稍后再次调用同一函数时 不得执行这段特定的代码 代码在VC 请告诉我处理这个问题最有效的方法 使用
  • PHP 继承以及静态方法和属性

    PHP 中的静态属性和方法不能被继承吗 一些例子会有所帮助 不 那不是真的 静态方法和属性 http www php net manual en language oop5 static php将会得到遗传 http www php net
  • 将函数的参数声明为final:为什么以及何时需要它?

    在浏览 android 教程 与多线程 循环器和处理程序相关 时 我遇到了这个 public synchronized void enqueueDownload final DownloadTask task 我的问题是 何时以及为什么需要

随机推荐

  • Qt中的位置和尺寸

    在QT中我们常见的 点 线 尺寸 矩形 都被进行了封装 下边依次为大家介绍相关的类 目录 QPoint QLine QSize QRect QPoint QPoint是C 编程语言中Qt框架中的一个类 它表示2D坐标系中的一个点 它用于定义
  • python如何判断一个数是整数,浮点数,复数还是字符?

    遇到判断字符类型 上网搜索了一下 整理下来 1 判断字符串 python字符串常用的判断函数很多 有如下8种 1 str isalnum 所有字符都是数字或者字母 2 str isdecimal 所有字符都是十进制数字 3 str isdi
  • 字符串格式化:% 运算符

    1 课题导入 任务 用字符串拼接法原样输出 圆周率是3 1415926 声明变量pi 用于存储圆周率 pi 3 1415926 type函数查看变量pi 的数据类型 print type pi 用字符串拼接的方法输出 str函数将浮点数类型
  • 一个简单音乐播放器的java实现(一)

    写在前面 这几天正在读head first系列的书籍 现在正好读的是java 这本书讲的深入浅出 环环相扣 非常精彩 不妨安利给大家 顺便把我学习过程中的一些心得体会已经实例分享出来 1 一个最简单音乐播放器的需求 我们需要四样东西 1 播
  • 【AlexNet论文精读以及代码复现以及训练结果】

    AlexNet论文精读以及代码复现 三遍读一篇论文的方法 李沐 1 标题 gt 摘要 gt 结论 gt 关键的图表 2 从标题开始读到最后 太过于细节部分可以先放一下 搞清楚重要的图标的细节 3 第三遍要弄清楚每句话在干嘛 搞清楚细节 并且
  • 操作系统课程实践5_进程通信

    一 实验目的 1 初步了解Linux环境下进程创建和进程间通信的机制 2 掌握如何利用消息和共享内存进行通信的原理 3 利用POSIX API函数编写实例程序 4 实现父子进程间通过消息传递和共享内存方式进行通信 二 实验内容 编制两个程序
  • 独家专访LAION创始人:高中生与科学家同酬,Discord上一呼百应

    在LAION 大家都是无偿的 我们不像公司雇佣员工 所以我们不会付钱 一旦你开始付钱 就会有这样的讨论 高中生应该拿多少工资 谷歌的高级工程师应该拿多少工资 我已经有足够的钱过上好日子了 现在税后月收入4500欧元 2000欧元用来付房租
  • 华为商城官网下单工具

    华为mate60新机一经发布 就一机难求 研究华为商城手机下单代码 抓包分析 经过几天时间 下单搞定 先打开辅助登录工具 任意选定一款产品 登录商城 并点击立即下单到订单确认页 直到登录工具检测到登录信息 登录成功后 即可关闭辅助登录工具
  • Android:自动点击屏幕

    在开发的过程中会遇到自动测试功能 比如如何自动点击按钮进行测试 当然可以使用按键精灵等工具进行测试 不过如何在程序进程中测试呢 下面就介绍下adb shell的操作 通过shell进行点击等操作 1 模拟滑动 input swipe sta
  • FPGA project : usrt_rs232

    module uart rx parameter UART BPS d9600 CLK FREQ d50 000 000 input wire sys clk input wire sys rst n input wire rx outpu
  • 查看nginx安装位置

    您可以使用以下命令来查找nginx的安装位置 which nginx 该命令将输出nginx二进制文件的路径 默认情况下 nginx二进制文件通常位于 usr sbin nginx 您还可以使用以下命令来查找nginx配置文件的位置 ngi
  • redis五种数据类型对应的底层数据结构

    redis五种数据类型对应的底层数据结构 redis的五种数据类型 redis核心对象redisObject type数据类型 encoding编码类型 ptr指针 redis五种数据类型对应的底层数据结构 String字符串类型 SDS
  • linux命令行正确退出_从命令行正确执行所有操作

    UNIX 命令行是WYTIWYG界面 也就是说 您输入的就是您得到的 UNIX提供了数百个 甚至数千个 命令 您可以使用这些命令来操纵内核和用户空间中的各种可用资源 需要监控CPU使用率吗 尝试top或ps 是否需要删除所有以 bak结尾的
  • 基于个性化推荐技术的大数据课程推荐 个性化课程资料知识推荐系统

    基于个性化推荐技术的大数据课程推荐 个性化课程资料知识推荐系统 源码获取 https www bilibili com video BV1Ne4y1g7dC 基本任务 本次课题是基于个性化推荐技术的大数据课程个性化推荐系统 目的是给学生提供
  • windows中启动 java -jar 后台运行程序

    第一种需要一直开着dos界面 java jar jar文件路径 第二种无需一直开着dos界面 1 新建my service bat文件 内容如下 echo off START my service javaw jar science 0 0
  • 代理IP和Socks5代理:跨界电商与爬虫的智能引擎

    跨界电商 作为全球市场的一部分 对数据的需求越来越大 同时 随着互联网的发展 爬虫技术也在不断演进 成为了跨界电商的关键工具之一 然而 随之而来的是网站的反爬虫机制和网络安全风险 在这种情况下 代理IP和Socks5代理应运而生 为企业提供
  • 后台管理系统 一 登录模块

    目录 模板介绍 项目目录 环境变量 登录业务 完成静态组件 vuex js cookie 第三方库 书写api axios的二次封装 解决代理跨域问题 项目地址 https gitee com childe jia background s
  • ios7 UIAnimation

    视图1 UIView rootview01 UIView alloc init rootview01 tag 101 rootview01 frame CGRectMake 0 20 320 460 rootview01 backgroun
  • Maven + Eclipse + Android 环境搭建

    Android官方开发团队致力于为Ecilpse插件提供可靠的支持 而android maven plugin致力于将Maven Android和Eclipse串联在一起 m2e android是一个 Maven Integration f
  • Java中修饰符的作用

    1 访问控制修饰符 作用 用于控制被修饰变量 方法 类的可见范围 public的访问级别是最高的 其次是protected 默认和private 成员变量和成员方法有四个访问级别 公开 受保护 默认 私有 存在继承关系时 父类不可以priv