예외 처리 미루기 Throws (미루다) 를 사용하여 예외처리 미루기 Try{} 블록으로 예외를 처리하지 않고 , 메소드 선언부에 throws 를 추가 한다. 예외가 발생한 메소드에서 예외처리를 하지 않고 이 메소드를 호출한 곳에서 예외 처리를 한다는 의미이다. Main() 에서 throws 를 사용하면 가상 머신에서 처리된다. 이 메소드를 호출하는곳에서 처리 package exception; import java.io.FileInputStream; import java.io.FileNotFoundException; public class ThrowsException { // 예외 처리 미루기 public Class loadClass(String fileName , String className) thr..
분류 전체보기
FileInputStream fis = new FileInputStream("a.txt"); // 파일 읽어오기 없을시 FileNotFoundException 예외처리 Class c = Class.forName(className); 클래스 동적 할당 읽어오기 ClassNotFoundException 예외처리 FileNotFoundException, ClassNotFoundException FileInputStream fis = null; try { fis = new FileInputStream("a.txt"); // 파일을 읽어들인다. // 파일이 없을수 있어서 FileNotFoundException 이 발생 } catch (FileNotFoundException e) { System.out.printl..
예외와 예외 처리 오류란 무엇인가 ? 컴파일 오류 : 프로그램 코드 작성 중 발생하는 (문법적 오류) 실행 오류 : 실행중인 프로그램이 의도하지 않은 동작을 하거나 (bug) 프로그램이 중지 되는 오류(runtime error) 자바는 예외처리를 통하여 프로그그램의 비정상 종료를 막고 log를 남길수 있다. 예외처리에서 중요한건 실행 오류가 있을수있는데 의도치 않게 원치않은 결과 또는 서비스가 죽게되는 경우 – 시스템을 죽지 않게 하는 방법이 중요 로그를 상세하게 남겨서 추후에 버그를 잡을수 있어야 한다. 오류(에러) : 가상머신에서 발생 프로그래머가 처리할수없음, 동적 메모리를 다 사용한 경우 Stack over flow 등 예외(Exception) : 프로그램에서 제어할수 있는 오류 읽으려는 파일이 ..
Reduce() 연산 정의된 연산이 아닌 프로그래머가 직접 지정하는 연산을 적용 최종 연산으로 스트림의 요소를 소모하며 연산 수행 배열의 모든 요소의 합을 구하는 reduce연산 기존의 연산이 아닌 내가 연산을 구현 Arrays.stream(arr).reduce(0,(a,b) -> a+b)); 0은 초기값 문자일시 “” 배열에서는 Arrays 로 스트림을 생성한다. 스트림에 배열 객체를 넣고 reduce() 메소드를 실행 처음값은 초기값을 넣고 그다음 매개변수 2개를 넣는다 연산을 정의한다. package stream; import java.util.Arrays; public class IntArrayTest { public static void main(String[] args) { int [] arr..
스트림(Stream) – 연산기능 자료의 대상과 관계없이 동일한 연산을 수행할 수 있는 기능(자료의 추상화) 배열 ,컬렉션에 동일한 연산이 수행되어 일관성 있는 처리 가능 한번 생성하고 사용한 스트림은 재사용할 수 없다. 스트림 연산은 기존 자료를 변경하지 않는다. 중간 연산과 최종 연산으로 구분된다. 최종 연산이 수행되어야 모든 연산이 적용되는 지연 연산 Stream 객체를 생성하고 배열에 대해서 연산을 할 때 그 배열을 직접 건들이지 않고 다른 메모리에서 연산이 이루어진다 모든 Integer 를 합치다던가 원래자료를 건들이지 않고 다른메모리에서 이루어진다. 중간연산 : 조건으로 자료를 필터한다. 꺼내온다. 최종연산 : 그거에 결과를 출력 , 그합을 구한다던가 Stream 연산을 중간연산은 이어서 할수..
스트림(Stream) – 연산기능 자료의 대상과 관계없이 동일한 연산을 수행할 수 있는 기능(자료의 추상화) 배열 ,컬렉션에 동일한 연산이 수행되어 일관성 있는 처리 가능 한번 생성하고 사용한 스트림은 재사용할 수 없다. 스트림 연산은 기존 자료를 변경하지 않는다. 중간 연산과 최종 연산으로 구분된다. 최종 연산이 수행되어야 모든 연산이 적용되는 지연 연산 Stream 객체를 생성하고 배열에 대해서 연산을 할 때 그 배열을 직접 건들이지 않고 다른 메모리에서 연산이 이루어진다 모든 Integer 를 합치다던가 원래자료를 건들이지 않고 다른메모리에서 이루어진다. 중간연산 : 조건으로 자료를 필터한다. 꺼내온다. 최종연산 : 그거에 결과를 출력 , 그합을 구한다던가 Stream 연산을 중간연산은 이어서 할수..