Java34 [Java] 25. 직렬화 1. 직렬화(serialization) - 인스턴스 내용을 연속 스트림으로 만드는것. - 스트림으로 만들어야 파일에 쓸수도 있고 네트워크로 전송할 수도있음. 생성자 설명 ObjectInputStream(InputStream in) InputStream을 생성자의 매개변수로 받아 ObjectInputStream생성 ObjectOutputStream(OutputStream out) OutputStream을 생성자의 매개변수로 받아 ObjectOutputStream생성 package stream.serialization; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.i.. 2021. 1. 3. [Java] 24. 자바 입출력 1. 스트림 - 자바의 모든 입출력은 스트림(stream)을 통해 이루어짐. - 네트워크에서 유래된 용어 - 자료 흐름이 물의 흐름과 같다는 의미에서 사용됨. - 자바는 입출력 장치와 무관하고 일관성 있게 프로그램을 구현할 수 있도록 가상 통로인 스트림을 제공. - 자료를 읽어 들이려는 소스(source)와 자료를 쓰려는 대상(target)에 따라 각각 다른 스트림 클래스 제공 (1) 입력스트림과 출력스트림 - 스트림은 단방향으로 자료가 이동하기 때문에 입력, 출력 동시에 사용 불가. - 어떤 스트림이 있다고 하면 그 스트림은 입력 스트림 이거나 출력 스트림임. - 입력 스트림 : InputStream, Reader로 끝나는 이름의 클래스. - 출력 스트림 : OutputStream, Writer로 끝나.. 2021. 1. 2. [Java] 23. 예외 클래스 1. 오류 - 프로그램 코드 작성 중 실수로 발생하는 컴파일 오류(compile error) - 실행중인 프로그램이 의도하지 않은 동작을 하거나 프로그램이 중지되는 실행오류(runtime error) - 버그(bug) : 실행오류 중 프로그램을 잘못 구현하여 의도한 바와 다르게 실행되어 생기는 오류 - 로그(log) : 소프트웨어 실행 중에 발생하는 여러 상황을 기록한 내용. 주로 파일에 기록(로그 파일) 2. 오류와 예외 - 실행오류 (1) 시스템 오류(error) : 자바 가상머신에서 발생. 사용가능한 동적 메모리가 없는경우, 스택메모리의 오버플로가 발생한 경우. 프로그램에서 제어할 수 없음. (2) 예외(exception) : 프로그램에서 제어 가능. 예를 들어, 파일을 읽어 사용하려는데 파일이 없.. 2021. 1. 1. [Java] 22. 스트림 1. 스트림(stream) - 여러 자료의 처리에 대한 기능을 구현해 놓은 클래스 - 배열, 컬렉션 등의 자료를 일관성 있게 처리할 수 있음. - 자료의 대상관 관계없이 동일한 연산 수행함. - 한번 생성하고 사용한 스트림은 재사용할 수 없음. - 스트림의 연산은 기존 자료를 변경하지 않음. int[] arr = {1, 2, 3, 4, 5}; for(int i = 0; i System.out.println(n)); 2. 스트림 연산 - 중간 연산, 최종 연산 두가지가 있음. 3. 중간연산 - 자료를 거르거나 변.. 2021. 1. 1. [Java] 21. 람다식 1. 함수형 프로그래밍(Functional Programming : FP) - 함수의 구현과 호출만으로 프로그램을 만들수 있는 프로그래밍 방식. - 자바8 부터 지원. - 람다식(Lambda expression)이라고 함. 2. 람다식 - 함수 이름이 없는 익명함수를 만드는것. - 메서드의 이름과 반환형 타입을 없애고 -> 기호를 사용하여 구현. (매개변수) -> {구현부;} int add(int x, int y) { return x + y; } (int x, int y) -> {return x + y;} - 매개변수가 하나인 경우에는 괄호도 생략 가능. str -> {System.out.println(str);} - 중괄호 안의 구현 부분이 한문장인 경우 중괄호 생략가능. (return 문은 중괄호 생.. 2021. 1. 1. [Java] 20. 내부클래스 1. 내부클래스(inner class) class ABC{//외부 클래스 class In{//인스턴스 내부 클래스 static class SIn{//정적 내부 클래스 ... } } public void abc{ class Local{//지역 내부 클래스 } } } - 클래스 내부에 선언한 클래스 - 선언하는 위치나 예약어에 따라 크게 네가지 유형으로 나뉨. - 내부클래스 : ABC클래스 내부에 선언한 클래스, 중첩된 클래스 - 인스턴스내부클래스, 정적(static)내부클래스, 지역(local)내부클래스, 익명(anonymous)내부클래스 2. 인스턴스 내부 클래스(instance inner class) - 멤버 변수처럼 클래스 내부에 정의하는 인스턴스 내부 클래스. - 외부 클래스 내부에서만 생성하여 사.. 2021. 1. 1. 이전 1 2 3 4 5 6 다음