1
오버로드 된 생성자가있는 클래스가 있습니다. 생성자에 따라 예외가 발생할 수 있습니다 (startSize
또는 growFactor
이 너무 작 으면). 다른 생성자에서는 기본값이 사용되며 이러한 예외는 발생하지 않습니다.오버로드 된 Java 생성자에서 특정 예외가 표시되지 않습니다.
아래와 같이 간단한 생성자에서 경고를 어떻게 든 표시하지 않을 수 있습니까? 오버로드 된 생성자 호출은 첫 번째 호출이어야하므로 try-catch 블록에이를 묶을 수 없습니다.
private static final int DEFAULT_STARTSIZE = 50;
private static final int DEFAULT_SCALEFACTOR = 2;
public LinkedArrayList()
{
this(LinkedArrayList.DEFAULT_STARTSIZE, LinkedArrayList.DEFAULT_SCALEFACTOR);
}
public LinkedArrayList(T... startCollection)
{
this(LinkedArrayList.DEFAULT_STARTSIZE, LinkedArrayList.DEFAULT_SCALEFACTOR, startCollection);
}
public LinkedArrayList(int startSize) throws InitialSizeTooSmallException
{
this(startSize, LinkedArrayList.DEFAULT_SCALEFACTOR);
}
public LinkedArrayList(int startSize, T... startCollection) throws InitialSizeTooSmallException
{
this(startSize, LinkedArrayList.DEFAULT_SCALEFACTOR, startCollection);
}
public LinkedArrayList(int startSize, int growFactor) throws InitialSizeTooSmallException, InitialGrowFactorTooSmallException
{
if (startSize < 1)
throw new InitialSizeTooSmallException();
if (growFactor < 1)
throw new InitialGrowFactorTooSmallException();
this.data = new DLNodeList<T>(startSize, growFactor);
}
public LinkedArrayList(int startSize, int growFactor, T... startCollection) throws InitialSizeTooSmallException, InitialGrowFactorTooSmallException
{
this(startSize, growFactor);
for (T item : startCollection)
this.add(item);
}