public class SQLErrorException extends RuntimeException{
	private Exception origin;
   
public SQLErrorException(String message, Exception origin){
	super(message);
    this.origin = origin;
}

public Exception getOrigin(){
	return origin;
    }
}

RuntimeException

  • RuntimeException은 Java Virtual Machine의 정상적인 작동 중에 발생할 수 있는 예외의 슈퍼 클래스이다.
  • RuntimeException 및 해당 서브 클래스는 unchecked exception이다.

checked exception

  • 반드시 예외 처리 해야함 (try~catch)
  • 컴파일 단계에서 확인 가능
  • 예외 발생 시 트랜잭션 roll back 하지 않는다.
  • RuntimeException을 제외한 Exception의 하위 클래스

unchecked exception

  • 명시적 예외 처리를 강제하지 않는다.
  • 실행 단계에서 확인 가능
  • 예외 발생 시 트랜잭션 roll back 한다.
  • RuntimeException의 하위 클래스

 

 

가변인자

  • 가변인자는 ‘타입...변수명’과 같은 형식으로 선언
  • 가변인자 외에도 매개변수가 더 있다면, 가변인자를 매개변수 중에서 제일 마지막에 선언해야 한다. 그렇지 않으며 컴파일 에러가 발생. 가변인자인지 아닌지 구별할 방법이 없기 에 허용하지 않는다.

인자의 개수를 가변적으로 할수 있고, 사용했을 때 인자가 아예 없어도되고 배열도 인자가 될 수 있다.

StringBuilder

  • StringBuilder는 String과 다르게 번하기 쉬운 성질을 가지고 있다.
  • StringBulider는 String 과 문자열을 더할 때 새로운 객체를 생성하는 것이 아니라 기존의 데이터에 더하는 방식을 사용하기 때문에 속도도 빠르며 상대적으로 부하가 적다.

+ Recent posts