일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 이스케이프 문자
- JSON
- list 컬렉션
- Algorithm
- stream
- 이것이 자바다
- buffer
- Serialization
- s
- 메모리구조
- coding test
- Graph
- Stack
- 윤성우의 열혈 자료구조
- C 언어 코딩 도장
- 윤성우 열혈자료구조
- insertion sort
- 알기쉬운 알고리즘
- R
- datastructure
- Selection Sorting
- C programming
- 혼자 공부하는 C언어
- Today
- Total
목록Programming Language (94)
Engineering Note
Reader 객체문자 데이터가 외부에서 Java 애플리케이션으로 들어오는 스트림(흐름)을 읽어오는 책임을 맞는 객체외부에서 들어오는 문자데이터를 자바 프로그램이 사용할 수 있도록 연속적으로 읽어오는 역할.abstract classReader 객체 자체는 Buffer기능이 없음. BufferedReader 객체inputStream으로 부터 텍스트를 읽는 역할extends ReaderReader 객체에 버퍼기능을 더해 입출력 성능을 향상 시킨 객체 InputStreamReaderbyte 입력 스트림을 문자 입력 스트림으로 변환하는 역할즉, "0101010...(byte)"를 "글자(String)"로 바꿔줌extends Reader [InputStream] (byte) |[InputStreamRea..
직렬화(Serialization)- Java Object(객체)를 Byte Stream(바이트 스트림)으로 변환하는 과정 직렬화는 하는 이유- Java Object는 JVM이 정한 규칙에 따라 메모리에 저장되어 있는데 이는 외부(OS, 네트워크)에서 해석할 수 없다. 외부와 데이터를 주고받기 위해서는 직렬화 규칙에 따라 연속적인 바이트 흐름(스트림)으로 변환하는 과정을 거쳐야 한다. - 직렬화한 바이트 스트림은 OS가 읽어서 파일로 저장하거나 네트워크로 내보낼 수 있다.

프로그램 에러, 오류- 프로그램이 실행 중 어떤 원인에 의해서 오작동 하거나 비정상적으로 종료 되는 경우 컴파일 에러- 컴파일시에 발생하는 에러 런타임 에러- 실행시에 발생하는 에러- 런타임 에러는 다시 에러(error)와 예와(exception)으로 구분한다. - 런타임 error: 프로그램 코드에 의해서 수습될 수 없는 심각한 오류. ex)메모리 부족, 스택오버플로우 - (런차임) exception: 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류. 프로그래머의 적절한 코드로 비정상적 종료를 막을 수 있다. 논리적 에러- 실행은 되지만, 의도와 다르게 동작하는 것.예외 클래스의 계층 구조- 자바는 실행 시 발생할 수 있는 오류를 미리 클래스로 정의했다.- 모든 예외는 Exception 클..
Java로 프로그램을 개발하려면 컴퓨터에 **JDK(Java Development Kit)**를 설치해야 한다. JDK는 JRE(Java Runtime Environment)와 javac(자바 컴파일러) 등 개발에 필요한 도구들이 포함된 개발 키트다.JRE는 JVM(Java Virtual Machine)과 자바 표준 라이브러리(프로그램 실행에 필요한 클래스 파일 등)로 구성되어, 자바 프로그램을 실행할 수 있는 환경을 제공한다.JDK를 설치하면 설치 디렉터리의 bin 폴더에 java 파일이 있는데, 이 파일이 JVM을 띄우는 실행파일(런처)이다. 같은 디렉토리에 javac 파일이 java 컴파일러다. 예를 들어, MyClass.java라는 자바 소스파일을 만든 후,javac MyClass.java 이렇게..
에러(Error)- 컴퓨터 하드웨어 오동작 또는 구장으로 인해 애플리케이션, 응용프로그램 실행 오류가 발생하는 것. 예외(Exception)- 에러 이외에 프로그램 자체에서 발생하는 오류- 사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인해 발생하는 프로그램 오류예외의 종류- compile exception, checked exception, 컴파일 예외 : 프로그램 컴파일 시 발생하는 예외- runtime exception, uncheckec exception, 런타일 예외 : 실행 도중 발생하는 예외- RuntimeException 상속 여부로도 구분 할 수 있음. 예외 클래스- Java는 예외를 클래스로 관리함.- 모든 예외 클래스는 java.lang.Exception 클래스를 상속 받음...

List 컬렉션은 객체를 인덱스로 관리한다.List 컬렉션에서 공통적으로 사용가능한 List 인터페이스 메서드 ArrayList- ArrayList에 객체를 추가하면 내부 배열에 객체가 저장. 일반 배열과 차이점은 제한 없이 객체를 추가할 수 있다. LinkedList- ArrayList와 사용 방법은 동일하지만 내부 구조는 완전히 다르다. ArrayList는 내부 배열에 객체를 저장하지만, LinkedList는 인접 객체를 체인처럼 연결해서 관리한다. ArryaList, LinkedList 차이- LinkedList는 자료를 체인 처럼 관리하기 때문에 특정 위치에서 객체를 삽입하거나 삭제하면 바로 앞뒤 링크만 변경하면 되므로 빈번한 객체 삭제와 삽입에서 ArrayList보다 높은 성능을 보여준다...
컬렉션 프레임워크: Java언어에서 자주 사용되는 자료구조에 대해서 객체들을 효율적으로 추가, 삭제 검색할 수 있도록 모아놓은 인터페이스 총칭 주요 인터페이스: List, Set, Map 특별히 List와 Set은 객체를 추가, 삭제, 검색하는 방법에 있어서 공통점이 있기 때문에 공통된 메서드만 따로 모아 Collection 인터페이스로 정의해두고 이것을 상속하고 있다.Map은 키와 값을 하나의 쌍으로 관리하는 자료구조라 List 및 Set과 사용방법이 다르다. 인터페이스 별 컬렉션 특징인터페이스 분류특징구현 클래스CollectionList- 순서를 유지하고 저장- 중복 저장 기능ArrayList, Vector,LinkedListSet- 순서를 유지하지 않고 저장- 중복 저장 안됨HashSet, Tre..
문자열 타입의 숫자를 진짜 숫자로 변환해야 할 때가 있는데 그때 사용하는 메서드가 Interger 클래스에 있는 parseInt()이다. 메서드 선언부 다음과 같다. "321"처럼 문자열 타입으로 된 숫자를 파라미터로 전달하면 int 형태의 321로 반환을 해준다.public static int parseInt(String s) throws NumberFormatException 어떤 진법으로 변경할 건지도 설정할 수 있는 오버로딩된 형태의 메서드도 있다. 아래처럼 두 번째 파라미터로 변경하고 싶은 진법에 해당하는 숫자를 전달하면 된다.public static int parseInt(String s, int radix) ..