2013-03-16 5 views
1

이것은 아마도 어리석은 질문이지만 이해하려고하는 것입니다. Person 클래스와 Account 클래스의 두 클래스가 있습니다. 계정 클래스에는 계정 잔액을 설정하고, 잔액을 인출하고, 잔액을 반환하는 3 가지 방법이 있습니다. 새로운 사람과 새 계정에 대해 새 개체를 만든 경우 어떻게 함께 묶어야합니까? 함께하면 나는 계좌 잔액을 얻으려고 할 때 내가 어떻게 알 수 있는가? 나는 누군가 균형을 위해서가 아니라 특정 사람을 위해 그것을 얻고 있는가? (여러 개의 계정 및 개인 오브젝트가 있다고 가정).일부 자바 개념을 이해하려고 시도했습니다

+0

'Account' 개체의 * 속성 *은 무엇입니까? –

답변

4

당신은 Person 객체로 객체 (그것을 ArrayAccount의 S 있도록하지 않을까요 실수)를 Account를 배치하여 그들을 함께 연결합니다. 다음 Person 사용하여 해당 계정에 액세스 :

class Person 
{ 
    String name; 
    String id; 
    ... 
    List<Account> ownedAccounts = new ArrayList<Account>(); 
} 
+0

그리고 사람이 여러 계정을 소유하고 있다면? – Aubin

+0

나는 그 반대가 더 적합하다고 생각한다. 계정 개체는 사람 –

+0

을 참조해야하며 가입 한 계정의 결혼 한 사람은? – Aubin

0

나 Person 클래스에 계정 객체 참조를하는 것입니다에 의미가 방법을.

class Person { Account account; } 

다음으로 person 클래스에 checkAccount 메소드를 추가 할 수 있습니다. 당신은 사람 개체가 어디

void checkBalance(){ return account.getBalance(); } 

은 그럼 당신은

person.checkBalance(); 

계정은 그 사람의 당신이 Person 객체의 생성자에서 계정 개체를 전달해야합니다 있는지 확인하기 위해 호출 할 수 있습니다.

Person(Account account){ this.account = account } 

또는 설정 도구가있을 수 있습니다. 시스템의 모든 사람이 계정을 가지고 있어야만 생성자에서 전달하는 것이 더 좋습니다.

ArrayList<Account> accounts; 

하거나 계정 클래스에서 일부 필드를 추가 할 수 있습니다 (한 사람 만이 소유자가 될 수 있다면, 그렇지 않으면 당신은 또한 몇 가지 목록이 필요합니다 또는 설정) :

+1

그리고 사람이 여러 계정을 소유하고 있다면? – Aubin

+0

질문에 그 내용이 나와 있지 않습니다. 그러나 목록 을 사용하고 addAccount() 메소드를 사용하면 의미가 있습니다. – eytanfb

1

당신은 예를 들어 Person 클래스에 필드를 추가 할 수 있습니다

Person person; 
관련 문제