Java 最终抽象类

2024-02-12

我有一个非常简单的问题:

我想要一个 Java 类,它提供一个公共静态方法,该方法可以执行某些操作。这只是为了封装目的(将所有重要的内容都放在一个单独的类中)...

这个类既不应该被实例化,也不应该被扩展。这让我写道:

final abstract class MyClass {
   static void myMethod() {
      ...
   }
   ... // More private methods and fields...
}

(虽然我知道,这是禁止的)。

我还知道,我可以将此类设为最终类,并在将其设为私有的同时覆盖标准构造函数。

但这在我看来更像是一种“解决方法”,并且更有可能由最终抽象类来完成......

我讨厌解决方法。所以只是为了我自己的兴趣:还有其他更好的方法吗?


没有比使用更简单的了enum没有实例。

public enum MyLib {;

   public static void myHelperMethod() { }
}

该类是最终类,明确没有实例和私有构造函数。

这是由编译器检测到的,而不是作为运行时错误。 (与抛出异常不同)

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

Java 最终抽象类 的相关文章

  • 从文本文件中读取阿拉伯字符

    我完成了一个项目 在该项目中我读取了用记事本编写的文本文件 我的文本文件中的字符是阿拉伯语 文件编码类型是UTF 8 当在 Netbeans 7 0 1 中启动我的项目时 一切似乎都正常 但是当我将项目构建为 jar 文件时 字符以这种方式
  • 使类只能从特定类实例化

    假设我有 3 节课class1 class2 and class3 我怎样才能拥有它class1只能通过实例化class2 class1 object new class1 但不是 class3 或任何其他类 我认为它应该与修饰符一起使用
  • 如何作为应用程序发布到页面?

    所以 我有一个应用程序 Facebook 应用程序实体 并且我有一个页面 我想使用应用程序通过java代码 通过restfb或任何其他建议 发布到页面 看起来我错过了页面授予应用程序发布权限的阶段 不知道该怎么做 谢谢你们 乌里 您只能 作
  • 重写 getPreferredSize() 会破坏 LSP

    我总是在这个压倒一切的网站上看到建议getPreferredSize 而不是使用setPreferredSize 例如 如前面的线程所示 对于固定大小的组件 使用重写 getPreferredSize 而不是使用 setPreferredS
  • Java 卡布局。多张卡中的一个组件

    一个组件 例如JLabel 在多张卡中使用CardLayout 目前看来该组件仅出现在它添加到的最后一张卡上 如果有办法做到这一点 我应该吗 这是不好的做法吗 或者有其他选择吗 你是对的 它只出现在 添加到的最后一张卡 中 但这与CardL
  • JavaFX使节点覆盖父节点边框颜色

    我有一个如下所示的节点 仅使用 css 我希望标签覆盖其父边框颜色 因此标签下方的边框颜色部分变得不可见 我用来制作这个边框的CSS代码 fx border color black fx border width 3 fx border r
  • 在grails控制器中识别ajax请求或浏览器请求

    我正在开发一个使用大量ajax的grails应用程序 如果请求是ajax调用 那么它应该给出响应 这部分正在工作 但是如果我在浏览器中输入URL 它应该带我到主页 索引页面而不是请求的页面 下面是ajax调用的示例gsp代码
  • 纱线上的火花,连接到资源管理器 /0.0.0.0:8032

    我正在我的开发机器 Mac 上编写 Spark 程序 hadoop的版本是2 6 spark的版本是1 6 2 hadoop集群有3个节点 当然都在linux机器上 我在idea IDE中以spark独立模式运行spark程序 它运行成功
  • R 中使用 `UseMethod()` 与 `inherits()` 来确定对象的类

    如果我需要根据 R 对象的类以不同的方式处理它们 我可以使用if and else在单个函数内 foo lt function x if inherits x list Foo the list else if inherits x num
  • 拆分/标记化/扫描字符串并注意引号

    Java中是否有默认 简单的方法来分割字符串 但要注意引号或其他符号 例如 给定以下文本 There s a man that live next door in my neighborhood and he gets me down Ob
  • 在 Java 中创建 XML 文件的最佳方法是什么?

    我们目前使用 dom4j 来创建 XML 文件 不过 我猜现在有更好的东西了 如果我们使用的是 Java 1 6 或更高版本 那么在编写 XML 文件时最好使用什么类 运行速度最快 使用简单 我不需要构建一个 DOM 然后编写整个 DOM
  • 如何从字符串中解析一个大整数? [复制]

    这个问题在这里已经有答案了 我有一个这样的方法 Integer parseInt myInt 不是这个整数变得很长 我得到以下异常 java lang NumberFormatException For input string 40001
  • 如何以编程方式创建 CardView

    我正在开发一个 Android 应用程序Java Android Studio 我想在活动中创建CardView以编程方式 我想将以下属性设置为CardView layout width wrap content layout row 0
  • Android:ANT 构建失败,并显示 google-play-services-lib:“解析为没有项目的 project.properties 文件的路径”

    我正在尝试使用 ANT 构建我的应用程序 但在包含 google play services lib 库项目后 我惨遭失败 Step 1 我在 project properties 文件中设置了对库项目的引用 android library
  • java中使用多线程调用同一类的不同方法

    我有一个类 如下所示 具有三种方法 public class MyRunnable implements Runnable Override public void run what code need to write here to c
  • Collections.sort(list) 和 list.sort(Comparator) 之间的区别

    有什么理由让我应该选择Collections sort list 方法而不是简单地调用list sort 内部Collections sort只是调用sort的方法List无论如何 上课 令人惊讶的是几乎每个人都告诉我使用Collectio
  • spring data jpa复合键重复键记录插入导致更新

    我有一个具有复合键的实体 我试图通过使用 spring data jpa 存储库到 mysql 数据库来持久化它 如下所示 Embeddable public class MobileVerificationKey implements S
  • 如何使用自定义 JDK 构建 Jenkins 项目?

    我有一个常规的 Jenkins 实例 运行一些多分支管道 该实例在 JDK 11 上运行 因为 Jenkins 并不真正支持更高版本 没关系 但不好的是 我的所有管道似乎也都受到 Java 11 的限制 Jenkins 仅使用它自己也使用的
  • Java/MongoDB 按日期查询

    我将一个值作为 java util Date 存储在我的集合中 但是当我查询以获取两个特定日期之间的值时 我最终得到的值超出了范围 这是我的代码 插入 BasicDBObject object new BasicDBObject objec
  • Errors/BindingResult 参数应在模型属性、@RequestBody 或 @RequestPart 参数之后立即声明

    我通过剖析示例应用程序来自学 Spring 然后到处添加代码来测试我在剖析过程中开发的理论 在测试添加到 Spring 应用程序中的一些代码时 我收到以下错误消息 An Errors BindingResult argument is ex

随机推荐

  • Android Studio:快照依赖项未正确更新

    我正在使用 Android Studio 8 9 我有一个 build gradle 定义了以下依赖项 compile my program commons my program commons 0 0 2 SNAPSHOT jar 此依赖
  • 如何恢复 Normalize.css 的 input[type="search"] 的 webkit 外观

    我正在使用normalize css 它确实删除了搜索输入的图标 input type search webkit search cancel button input type search webkit search decoratio
  • 如何处置 System.Windows.Media.MediaPlayer

    问题很简单 可以概括为 我怎样才能让这个 while 循环退出 System Windows Media MediaPlayer player new System Windows Media MediaPlayer WeakReferen
  • 选择要上传的文件会导致移动 Safari 崩溃

    至少在我的 iPhone 6 Plus 上 当我使用
  • 为什么我无法在 Android Studio 中安装 lldb

    我想在JNI期间设置断点 但是当我编辑配置时 我无法安装lldb插件 任何人都可以帮助我吗 安卓工作室 2 1 1 LLDB 现在可以通过集成到 Android Studio 中的 SDK 管理器来使用 该管理器位于 Android Stu
  • 属性存在但 property_exists() 返回 false;

    嗯 我真的很困惑 当我检查属性是否存在时 它返回 false if property exists pais id false 但当我调试时它告诉我它就在那里 print r pais gt id 1 print r property ex
  • 如何在 Verilog 中综合 While 循环?

    我尝试设计一个 Booth 乘法器 它在所有编译器中运行良好 包括 Modelsim Verilogger Extreme Aldec Active Hdl 和 Xilinx Isim 我知道模拟和综合是两个不同的过程 而且只有少数Veri
  • 使用 SELECT 执行 INSERT 插入多条记录

    在下图中 DodgyOldTable 和 MainTable 之间存在 1 1 关系 表 Option 包含 OptionDesc 字段中带有 OptionVal1 OptionVal2 和 OptionVal3 的记录 我需要使用 Dod
  • PHP 中未终止的实体引用

    这是我的代码
  • 什么是名称查找机制?

    我想知道C 名称查找机制是什么 名称查找是识别名称含义的过程 名称查找有两个目的 消除代码解析的歧义 确定代码的确切含 义 例如 如果你有这个代码 T a 这取决于是否T是否是一个类型 如果是一个类型 它将是一个声明a 如果它不是类型 则将
  • 我必须在 Next.js 项目中使用express吗?

    我正在制作一个网站Next js Next js提供SSR and dynamic routing 我必须使用express 如果是这样 为什么我必须使用它 具有什么样的特点express有用但未提供的Next js I think nex
  • 提供满足esm、commonjs和bundlers的模块、主要和浏览器字段

    我有许多已发布的 npm 包 我已将它们升级为提供 commonjs 和 esm 构建 有些包可能同时适用于节点和浏览器 所有使用 webpack 或 rollup 编译的包 所有内容都用打字稿编写并转换为dist目录 我创建了一个comm
  • iOS 上的 html5 录音

    我正在尝试访问 iOS 上的麦克风以捕获用户输入
  • Azure SQL 中所有用户的列表

    如何列出可以连接到我的 sql server 数据库的所有用户 现在可以找到任何 sql 命令 我尝试了互联网上的一些链接 但没有一个有效 我尝试过的一些命令 SELECT FROM sys sql logins SELECT FROM s
  • 我应该如何配置 grunt-usemin 来使用相对路径

    我有一个由 yeoman generator 支持的 grunt 项目 我是基于generator webapp https github com yeoman generator webapp 如果有帮助 您可以在GitHub https
  • MVVM 和 StructureMap 的使用

    我的 MVVM 应用程序中有大量父级详细信息 ViewModel 像这样的事情 SchoolsViewModel SchoolViewModel LessonViewModel PupilsViewModel PupilViewModel
  • Bitset 作为函数的返回值

    我想要一个接口 其函数返回一个位集 class IMyInterface public virtual std bitset lt 100 gt GetBits 0 问题是我不想强制大小bitset 所以我想我必须使用boost dynam
  • Ruby 2.0 字节码导出/导入

    我一直在读关于红宝石 2 0 新功能 http www rubyinside com ruby 2 0 implementation work begins what is ruby 2 0 and whats new 5515 html
  • 使用 JavaScript 创建 Base64 编码图像

    由于图像是数据 我们可以将代码编写为 img src alt Red dot 现在我的观点是 我们可以使用 javascript 创建 base64 数据吗 有什么框架吗 我的实际要求是我有一个像 Cow 这样的字符串 我希望它作为图像 注
  • Java 最终抽象类

    我有一个非常简单的问题 我想要一个 Java 类 它提供一个公共静态方法 该方法可以执行某些操作 这只是为了封装目的 将所有重要的内容都放在一个单独的类中 这个类既不应该被实例化 也不应该被扩展 这让我写道 final abstract c