본문 바로가기

분류 전체보기

(77)
Object class의 메서드 Object class의 메서드 설명 protected Object clone() 객체의 복사본을 반환한다. public boolean equals( Object obj) 두 객체의 hashcode()가 같으면 true 다르면 false를 반환한다. protected void finalize() 객체가 소멸할 때 GC에 의해 자동으로 호출된다. public Class getClass() 객체 자신의 클래스 정보를 담고 잇는 Class인스턴스를 반환한다 public int hashCode() 객체의 해시코드를 반환한다. 해시코드란 객체의 주소를 통해 만들어진 중복이 없는 식별값이다. public String toString() 객체의 정보를 문자열로 반환한다. ( getclass().getclass() +..
Chained Exception Chained Exception (연결된 예외)는 한 예외가 다른 예외를 발생시키는 것이다. ExceptionA가 ExceptionB를 발생시키면 ExceptionA는 ExceptionB의 원인예외 라고 한다. Throwable initCasue (Throwable cause) : 파라미터를 원인 예외로 등록 Throwable getCause () : 원인 예외를 반환 Chained Exception을 사용하는 이유 중 첫 번째는 여러 예외들을 하나의 예외로 묶어서 다루기 위해서이다. 아래 코드는 ArrayIndexOutOFBoundsException이랑 ArithmeticException을 MyUncheckedException이라는 사용자 정의 Exception을 묶어서 처리를 하고 있다. 이렇게 묶어..
Exception re-throwing, try-catch문에서의 return 예외를 양쪽에서 처리해야 할 경우 일부분만 처리하고 다시 예외를 throw 해서 사용하는 곳으로 예외를 떠기는 방식을 예외 되던지기 Exception re-throwing이라고 한다. public class Test { public static void main(String[] args) { try { method(); } catch (Exception e) { System.out.println("main(String[]) 예외가 처리됨"); } } static void method() throws Exception { try { throw new Exception(); } catch (Exception e) { System.out.println("method() 예외가 처리됨"); throw e; //..
CPU의 구성 CPU의 구성요소 Register Set Control Unit ALU ALU alu는 연산을 수행하는 연산장치이다. alu는 control unit을 통해 제어신호를 받아들이고 해당 제어신호에 맞는 연산을 수행한다 레지스터는 연산을 수행한 뒤 연산결과를 레지스터에 담는데 이 때 연산결과가 레지스터의 크기보다 큰 경우를 오버플로우 라고 한다. 연산결과와 함께 플래그 값을 플래그레지스터에 기록한다. 플래그란 연산결과에 대한 메타데이터이다. 플러그 레지스터의 종류 Control Unit 명령어 레지스터로부터 명령어를 인출한다. 플래그 레지스터로부터 플래그값을 받는다. 제어신호를 받는다. 명령어를 해석한다. 명령어에 맞는 제어신호를 내보낸다. 클럭 신호를 받아들인다. 제어신호를 내보내는 시스템버스는 레지스터나..