PL/Java

About Java 2

Garonguri 2022. 2. 18. 15:15
728x90

< Error >

*        OutOfMemoryError, stack overflowError

-        프로그램이  정상적으로 종료됨.

-        디버깅 필요

 

< Exception >

(자신보다 큰 범주에 있는 예외가 미리 처리되어 있다면, 작은 예외는 처리 할 필요가 없다.)

 

1.     Checked Exception

*        SQLException, IOException > FilNotFoundException

-        대처 코드(try~catch 또는 throws)가 없으면 컴파일이 진행되지 않음.

-        반드시 대처 코드 필요

 

 

2.     Unchecked Exception

*        RuntimeException > ArithmeticException

-        대처 코드 없어도 컴파일은 진행 가능.

-        언젠가 한 곳에서 try~catch 처리 필요

 

예외 발생 없이 항상 실행되어야 한다면 finally 구문 사용. (중간에 return을 만나도 실행됨)

 

 


< Singleton Pattern >

- setter는 필요X

- 객체를 생성하지 않고 외부에서 접근 가능해야 한다. -> getter, 변수에 static 추가

- 내부에서 생성자의 접근 제한자는 private

 


< polymorphism >

 

1. overloading in method

* 같음 - 메서드 이름

* 다름 -  파라미터 개수, 파라미터 순서, 파라미터 타입

* 상관 없음 - 리턴 타입

 

2. overriding  in class -> 조상 클래스 메서드를 자식 클래스에서 수정

* 같음 - 메서드 이름, 파라미터 개수, 파라미터 타입, 파라미터 순서, 리턴 타입

* 다름 - 부모 보다 넓거나 같은 접근 제한자, 조상보다 작은 예외

 

instanceof를 통해 객체가 특정 class type의 개체인지 boolean으로 return

728x90