2013-03-24 2 views
1

여기에는 두 개의 클래스가 있으며, 내 Player 클래스에는 Scoresheet 클래스에서 총 클래스를 가져 오려고합니다. 나는 그것을하는 방법을 모른다.특정 클래스에서 다른 클래스의 메서드를 사용하는 방법은 무엇입니까?

public class ScoreSheet { 

public int getOnes(ArrayList<Integer> die) 
{ 
    for (int i = 0; i < die.size(); i++) 
    { 
     if (die.get(i) == 1) 
     { 
      ones++; 
     } 
    } 
    return ones; 
} 


public class Player { 

private int ones = 0; 
private int twos = 0; 
private int threes = 0; 
private int fours = 0; 
private int fives = 0; 
private int sixes = 0; 
private int threeOfKind = 0; 
private int fourOfKind = 0; 
private int fullHouse = 0; 
private int smallStraight = 0; 
private int largeStraight = 0; 
private int yahtzee = 0; 
private int chance = 0; 



public void checkScores(ArrayList<Integer> die) 
{ 
    ones = Player -> ScoreSheet.getOnes(<Integer> die); // this is wrong, need to know 
                 // how to get total      
} 

답변

1

플레이어 클래스에는 현재 ScoreSheet 개체로 초기화되는 ScoreSheet 변수가 필요합니다. 변수는 생성자 매개 변수 또는 setScoreSheet(ScoreSheet scoreSheet) 설정 메소드를 통해 올바른 객체로 설정할 수 있습니다. 그런 다음 플레이어는 필요한 경우 ScoreSheet 변수에서 getOnes(...) 메서드 또는 다른 ScoreSheet 메서드를 호출 할 수 있습니다.

+1

* "플레이어 등급 현재 ScoreSheet 객체로 초기화 된 ScoreSheet 변수"* - 구문 분석하지 않습니다 ... –

+0

@StephenC : 키워드가 삭제되어 이제 다시 추가되었습니다. 감사. –

+0

죄송합니다. 나는 그것을 알아야했다 :/도와 줘서 고마워! – Castellanos

관련 문제