인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

이제 시작이야님의 프로필 이미지
이제 시작이야

작성한 질문수

그림으로 배우는 자바, 파트2: 객체지향!

객체 조합 및 클래스 변수

클래스가 다른데 메소드를 어떻게 가져오는건가요?

작성

·

167

0

팀클래스에서 플레이서 클래스에 있는 totalPoint메소드를 사용하던데 클래스가 다른데 어떻게 사용하는건가요?

답변 1

1

홍팍님의 프로필 이미지
홍팍
지식공유자

질문과 관련된 코드를
함께 보여주십셩

class Team {

// 필드

String nation; // 나라

Player[] players; // 선수들

// 생성자

Team (String str, Player[] arr) {

nation = str;

players = arr;

}

// 메소드

void printTeamPoints() {

int sum = 0;

for (int i = 0; i < players.length; i++) {

sum += players[i].totalPoints();

}

System.out.printf("%s -> %d points\n", nation, sum);

}

}

// 선수 클래스

class Player {

// 필드

String name; // 이름

int[] points; // 득점 현황

// 생성자

Player (String str, int[] arr) {

name = str;

points = arr;

}

// 메소드

int totalPoints() {

int sum = 0;

for (int i = 0; i < points.length; i++) {

sum += points[i];

}

return sum;

}

굵게 표시한 부분에서 플레이어클래스에 있는 메소드를 팀클래스에서 어떻게 사용하는 건지 궁금합니당

홍팍님의 프로필 이미지
홍팍
지식공유자

Team 클래스에는
players라는 필드가 존재합니다.
players는 Player 객체의 배열이죠.

따라서 Team 클래스는
players 필드를 통해
연결된 선수들의 메소드를 호출할 수 있습니다.

이제 시작이야님의 프로필 이미지
이제 시작이야

작성한 질문수

질문하기