gpt4 book ai didi

java - 为什么 Oracle Java 提供的答案在寻址枚举集时使用私有(private)静态修饰符?

转载 作者:行者123 更新时间:2023-12-01 18:27:36 27 4
gpt4 key购买 nike

I am taking this Oracle Java training course并且不理解提供的解决方案。问题要求你使用Enum重写Card类和Deck类。

为什么解决方案使用“private final”修饰符引用等级和花色的枚举类?

使用“private Final”不是多余吗?

我刚刚

public class Card_using_Enum {
Rank rank;
Suit suit;

(我的等级和花色枚举存在于包内的此类之外。)

而不是

public class Card3 {
private final Rank rank;
private final Suit suit;

最佳答案

如果您检查类(class)上的代码,您会注意到(正如您粘贴的代码支持的那样)他们正在使用 private Final

使用private意味着只有类内的方法才能访问这些字段。这对访问值施加了最大限制 - a good thing .

使用final意味着一旦设置了值就永远不能更改。这使得对象 immutable这是一件好事,因为您可以对这种类型的对象做出许多假设。

关于java - 为什么 Oracle Java 提供的答案在寻址枚举集时使用私有(private)静态修饰符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25537932/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com