sample code 의 8번째 줄 질문

yoo0125 Reply 6 years 20 weeks ago
8번째 줄만 왜 객체로 안 받고 Account 클래스를 그대로 하나요? 개념적으로 어떤 차이인지 잘 모르겠어서용..(사실 그거 못 맞춰서 만든 코드가 컴파일 에러가 떠요)
keacotle Reply 6 years 20 weeks ago
언급하신 Account.setAnnualInterestRate(sc.nextDouble());에서 그대로 받는다는 것은 개별 오브젝트가 아니라 클래스 전체에 영향을 주게 하기 위함입니다(그 외의 용도도 있습니다만). 만약 AnnualInterestRate가 모든 경우에 공통으로 쓰인다고 가정했을 때, 이것을 개별 오브젝트마다 따로 설정하게 만들면 해당 값을 변경하려면 모든 오브젝트를 추적해 일일히 변경해야 합니다. 하지만 클래스 전체가 공유하게 만들면 한 번만 변경하면 됩니다. 이걸 가능하게 하는 개념을 이용해보세요. 가령 static 같은 것이 있습니다.