은행 계좌를 모델링하는 유형 계층 구조를 작성합니다.Java ArrayList <String> 추상 클래스 내부
원래 단지
public class Account
{
private ArrayList<String> transactions
public void logTransaction(String transactionData)
{
...
}
}
했다하지만 지금은 클래스 계층 구조로 확장 : 난 그냥 제대로 자식 방법과 배열 목록을 얻을 방법을 알아낼 수 없습니다
public abstract class Account
{
private ArrayList<String> transactions
private abstract void logTransaction(String transactionData);
}
public class ChequingAccount extends Account
{
public void logTransaction(String transactionData)
{
...
}
}
그러나 ? 지침은 부모 추상 클래스의 배열 목록을 남겨 두는 것이지만 이전 답변을 검색하는 것은 이것이 좋은 습관이 아니라고 말합니다.
내 지침이 모범 사례에 맞지 않습니까? 아니면 뭔가 빠졌습니까?
- 당신이 할 때 같은 것들을 당신의'transactions' 인스턴스 변수를 선언하는 등'ArrayList를'당신이 일반적으로 나쁜 관행으로 간주되는'List'의 특정 구현에 코딩되어있다. 기본 구현을 변경해야하는 경우이 클래스에 종속 된 모든 클래스가 아닌이 클래스가 변경되도록 인터페이스에 코드를 작성해야합니다. –