当前位置: 首页 > 知识库问答 >
问题:

使用更高的可见性重写方法是好的实践吗?

娄振
2023-03-14

回答这个问题:如何使用paintcomponent()初始化GUI,然后根据鼠标添加GUI,我已经说明了以下内容:

您没有正确地重写PaintComponent()。这是受保护的方法,不是公共的。如果在此方法上添加@override注释,那么编译器将会抱怨。

但@Peeskillet明智地指出了这一点:

Netbeans完全没有抱怨的图像:

共有1个答案

计寒
2023-03-14

在Java教程中,控制对类成员的访问:

如果其他程序员使用您的类,您希望确保不会发生因误用而产生的错误。访问级别可以帮助您做到这一点。

  • 使用对特定成员有意义的最严格的访问级别。使用private除非您有充分理由不使用。
  • 除常量外,避免使用公共字段。(本教程中的许多示例使用公共字段。这可能有助于简明地说明一些
    要点,但不建议用于生产代码。)公共字段倾向于将您链接到特定的实现,并限制您更改代码的灵活性。
 类似资料:
  • 是否可以(仅仅)使用Byte-Buddy更改某些方法的可见性?我有一个带有私有静态方法的用户类,我需要将一些调用委托给这些方法,但由于它们是私有的,所以当前失败了。因此,我想知道是否可以通过添加公共修饰符来转换上述方法来重新定义user类。 对于记录,在目标Java方法上调用setAccessible(true)方法作为not effect,因为Byte Buddy仍然失败,出现以下异常: 我发现

  • 所以,我用AES算法加密文档列表。我使用PBKDF2从用户密码中确定密钥。我有几个关于存储数据和IV/salt问题: 如何存储文档: null null null

  • 我有一小段代码。我想用更好的方式写它,用更少的嵌套支票。我怎样才能实现呢? 有没有什么简洁的方法可以让我用Java 8重写上面的代码呢?

  • 问题内容: 默认情况下,接口中的所有方法是否都具有“公共可见性”模式? 问题答案: 接口中的所有方法默认为。 请参阅Java语言规范6.6.1,其中规定 接口的所有成员都是隐式的。

  • 问题内容: 哪种资本化方法更好? 矿: 要么 公用语言-StringUtils.capitalize: 我认为我更好,但我宁愿问。 问题答案: 表现是平等的。 您的代码复制了char []调用和。 关于Apache代码和。apache代码有一个额外的字符串实例,该实例具有基本char [1,length]内容。但这在创建实例String时不会被复制。

  • Kubernetes 从 1.5 开始,通过 kops 或者 kube-up.sh 部署的集群会自动部署一个高可用的系统,包括 etcd 集群模式 apiserver 负载均衡 controller manager、scheduler 和 cluster autoscaler 自动选主(有且仅有一个运行实例) 如下图所示 注意:以下步骤假设每台机器上 Kubelet 和 Docker 已配置并处于