목차
질문내용
해결 방법
Java 목록의 모든 개체에 대해 고유한 이름을 제공해야 합니까?

목록의 모든 개체에 대해 고유한 이름을 제공해야 합니까?

Feb 08, 2024 pm 09:30 PM

프로그래밍에서 우리는 목록의 개체에 고유한 이름을 제공해야 하는 상황에 자주 직면합니다. 하지만 각 객체에 고유한 이름을 부여하는 것이 정말로 필요한가요? PHP 편집자 Strawberry는 대답이 절대적이지 않다고 말합니다. 어떤 경우에는 개체에 고유한 이름을 지정하면 특히 개체를 참조하거나 구별해야 하는 경우 코드를 더 잘 구성하고 관리할 수 있습니다. 그러나 다른 경우에는 개체에 고유한 이름이 필요하지 않으며 다른 방법으로 식별하고 조작할 수 있습니다. 따라서 목록의 모든 개체에 대해 고유한 이름을 제공해야 하는지 여부는 특정 요구 사항과 디자인에 따라 달라집니다.

질문내용

저는 컴퓨터과학과 1학년이에요. 내 Java 수업 과제의 일부로. 카드 개체가 포함된 arraylist 데크 클래스를 만들어야 합니다.

다음은 제가 코딩한 카드 개체의 예입니다.

으아악

표준 데크에 개별 카드를 로드하는 방법을 이해합니다. 각 카드에 고유한 이름을 지정하는 방법을 알 수 없습니다. 예를 들어, 플레이어가 손에 들고 있는 카드를 볼 수 있도록 카드와 슈트를 화면에 어떻게 표시합니까? (플레이어의 손에 있는 카드 목록을 포함하는 클래스도 만들어야 합니다.)

카드 개체 목록을 생성하는 경우 해당 개체가 있는 슬롯을 참조하여 해당 메서드를 호출할 수 있나요? 어떻게 해야 하나요? 덱에서 손으로 옮기면 상황이 바뀌나요?

일반적으로 객체에 메서드를 사용할 때는 이름(예: 카드1)을 사용하여 객체를 생성합니다. 그런 다음 해당 카드 데이터를 사용하는 메서드를 호출하기 위해 슈트 값을 반환하려면 card1.getsuit() 이라고 말하면 됩니다. 그런데 목록에 많은 개체를 생성할 때 어떻게 해야 할지 모르겠습니다.

내 뇌가 일을 너무 복잡하게 만든 것 같지만 어쨌든 자바의 다양한 각도를 더 잘 이해하는 것이 더 낫다고 생각해서 이런 질문을 하는 것을 좋아합니다. 도움을 주실 수 있는 분에게 감사드립니다!

참고: 저는 이제 막 두 번째 학기의 Java 수업을 시작했기 때문에 아마도 우리가 배운 가장 먼 것은 상속과 같습니다. 우리는 열거형, 상수 목록 또는 더 복잡한 것에 대해 예상하거나 알면 안 됩니다. 우리가 javafx를 많이 할 것이라고 들었습니다.

해결 방법

아니요, 다른 이름을 가진 별도의 개체를 만드는 대신 목록에 개체 참조를 저장할 수 있습니다.

으아악

이 방법을 사용하면 다른 이름을 지정하지 않고도 목록에 많은 개체를 추가할 수 있습니다.

human을 클래스로 생각하면 모든 사람이 해당 클래스의 인스턴스입니다. 모든 인간은 고유한 이름을 가져야 합니까? 얼마나 많은 "Joes" 또는 "Ellens"를 알고 있나요? 사람은 이름을 하나만 가질 수 있나요, 아니면 여러 개를 가질 수 있나요? (엄마가 전화하는데... 친구들이 전화해요...)

이름은 포인터가 객체를 참조할 수 있는 것처럼 사람을 참조하는 데 사용됩니다.

하지만 참고하세요: Java가 객체에 대한 참조를 찾지 못하고 객체가 존재하지 않는 경우(즉, 실행 중인 스레드가 없는 경우) 객체는 가비지 수집되어 폐기됩니다.

위 내용은 목록의 모든 개체에 대해 고유한 이름을 제공해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)