gpt4 book ai didi

java - 在 Java 上制作数据结构的最惯用方法

转载 作者:行者123 更新时间:2023-11-30 12:03:27 25 4
gpt4 key购买 nike

<分区>

我正在用 Java 创建一个 Card 类,我希望它尽可能地地道。我是否应该封装所有字段,使其成为私有(private)字段并提供以下 getter:

    public class Card implements Comparable<Card> {
private char suit;
private String name;
private int value;

public Card(char suit, String name, int value) {
this.suit = suit;
this.name = name;
this.value = value;
}

public char getSuit() {
return suit;
}

public String getName() {
return name;
}

public int getValue() {
return value;
}


public String toString() {
return name + " of " + suit;
}

@Override
public int compareTo(Card card) {
return Integer.compare(value, card.value);
}

}

或者因为任何字段都不会被修改,所以应该公开并最终确定所有字段:

    public class Card implements Comparable<Card> {
public final char suit;
public final String name;
public final int value;

public Card(char suit, String name, int value) {
this.suit = suit;
this.name = name;
this.value = value;
}

public String toString() {
return name + " of " + suit;
}

@Override
public int compareTo(Card card) {
return Integer.compare(value, card.value);
}

}

我正在阅读 Clean Code在 Data Structures vs OO classes 的章节中,我不知道在这种情况下我应该采取什么方法。提前致谢!

编辑:此类是我正在开发的 BlackJack 的一部分,我需要访问其他类中的字段。

编辑:这个问题搁置了,但是,这个问题应该发到哪里呢?我应该将它移至 Code Review 吗?我真的很想知道更多有经验的程序员对这个问题的看法,但我想把它贴在正确的网站上

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