목록Java (117)
hyeonga_code
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oybPt/btsGjOLbpGZ/URj1VSNxNxHsmn5hAlKfj1/img.png)
2024.04.02 - I/O_Input/Output -- 프로그램의 내용을 파일에 읽거나 저장할 경우 -- 프로그램의 내용을 다른 서버나 디바이스로 보내는 경우 -- java.io ---- 바이트 기반의 데이터를 처리하기 위해 여러 종류의 Stream 클래스를 제공 ---- 바이트가 아닌 char 기반의 문자열로 되어 있는 파일은 Reader와 Writer 클래스로 처리 ---- 스트림_Stream ------ 끊기지 않고 연속적인 데이터 -- NIO_New I/O ---- 스트림이 아닌 버퍼와 채널 기반으로 데이터를 처리 -- File & Files 클래스 ---- 파일과 파일의 경로를 포함한다. ---- File 클래스는 정체가 불분명하고 심볼릭 링크와 같은 유닉스 계열의 파일에서 사용하는 몇몇 기..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bGIdDm/btsGkpYiYGp/UjMKqXBU5c2CRS89YgAVX1/img.png)
2024.04.02 - 스레드_Thread -- 하나의 프로세스 내에서 여러 스레드는 수행될 수 있으나 여러 프로세스가 하나의 스레드를 수행할 수는 없다. -- 경량 프로세스_Lightweight Process -- WAS_Web Application Server ---- 자바를 사용한 웹을 제공 ---- main()메소드에서 생성한 스레드가 수행되는 것 -- 스레드 생성 방법 1) Runnable 인터페이스 ---- 구현된 메소드 2) Thread 클래스(선호) ---- Runnable 인터페이스를 구현한 클래스 더보기 void run() // 스레드가 시작하면 수행 ---- 예제 package e.thread; public class RunnableSample implements Runnable { ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/L2yT6/btsGh3hr3Ns/CsZ7yc5WiEY4euTvyEe3t1/img.png)
2024.04.02 - 맵_Map -- 키-값으로 이루어져있다. -- 키 값은 중복이 불가능하다. (고유) -- 값은 중복될 수 있다. -- 메소드 더보기 V put(K key, V value) // 키를 갖는 값을 저장 void putAll(Map
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/kMKYm/btsGg0yxZwa/WI12b1DhvevFHblKOqbZjk/img.png)
2024.04.01 - 셋_Set -- 순서에 상관 없이 데이터가 존재하는지를 확인하기 위한 용도로 사용된다. -- 중복되는 것을 방지한다. -- 원하는 값이 포함되어 있는지를 확인한다. HashSet // 순서가 필요 없는 데이털를 해시테이블에 데이터 저장 // 성능이 가장 좋다 TreeSet // 저장된 데이터의 값에 따라 정렬되는 셋 // red-black 트리타입으로 값이 저장 LinkedHashSet // 연결된 목록 타입으로 구현된 해시 테이블에 데이터 저장 // 저장된 순서에 따라 값이 정렬 -- HashSet 더보기 java.lang.Object ㄴ java.util.AbstractCollection ㄴ java.util.AbstractSet ㄴ java.util.HashSet - Seri..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cVzjxx/btsGfKin8p9/hb2k0RRJRqzDADQwK9wSFK/img.png)
2024.04.01 - 컬렉션_Collection -- 목록성 데이터를 처리하는 자료 구조 ---- 자료구조_Data Structure ------ 하나의 데이터가 아닌 여러 데이터를 담는 것 -- 데이터를 담는 자료구조 ---- List : 순서가 있는 목록 ---- Set : 순서가 중요하지 않은 셋 ---- Queue : 먼저 들어온 것이 먼저 나가는 큐 ---- Map : 키-값으로 저장되는 맵 ------ Map을 제외한 나머지는 Collection 인터페이스를 구현 더보기 Collection ㄴ Set ㄴ HashSet ㄴ LinkedHashSet ㄴ TreeSet ㄴ List ㄴ ArrayList ㄴ LinkedList ㄱ ㄴ Queue ㄴ LinkedList ㄱ ㄴ PriorityQueue..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c2QHqJ/btsGevTQVQ3/NkpqAsEMv5vAMKHhWSpER0/img.png)
2024.04.01 -- 메소드 개발과 함께 JUnit 과 같은 테스트 코드를 작성하는 것이 좋다. - JUnit -- 메소드나 클래스 같은 작은 단위를 쉽게 테스트 할 수 있도록 도와주는 프레임워크 - 제네릭_Generic -- 타입 형변환에서 발생할 수 있는 문제점을 사전_컴파일 시 에 없애기 위해 사용된다. -- 명시적으로 타입을 지정할 때 사용 더보기 package base.generic; import java.io.Serializable; public class CastingGenericDTO implements Serializable { private T object; public void setObject(T obj) { this.object = obj; } public T getObject..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Mlxdb/btsGg0E6EXI/wcOQV7dA5W97KQHJ3cEEN1/img.png)
2024.04.01 java.lang -- import를 하지 않고도 사용할 수 있는 패키지 -- 언어 관련 기본 -- 문자열 -- 기본 자료형 및 숫자 -- 스레드 -- 예외 -- 런타임 -- 숫자를 처리하는 클래스 ---- 간단한 연산 시 기본 자료형을 사용한다. ---- 기본 자료형은 힙이 아닌 스택에 저장되어 관리된다. ---- 숫자를 객체로 처리해야 할 경우 Byte, Short, Integer, Long, Float, Double, Character, Boolean 을 사용한다. ---- Wrapper Class ------ Character, Boolean을 제외한 숫자를 처리하는 클래스 ------ Number 추상 클래스를 확장한다. ------ 참조 자료형처럼 보이지만 기본 자료형처럼 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/n3SF4/btsGbUYFvdy/tLCBpJ0BePsnOZ1dykcpP0/img.png)
2024.03.28 - 어노테이션_Annotation -- 클래스나 메소드를 선언할 때에 @를 사용하는 것 -- 메타데이터라고도 한다 -- 컴파일러에게 정보를 알려주는 기능 -- 컴파일 할 때, 설치 시 작업을 지정 -- 실행할 때 별도의 처리가 필요한 경우 사용한다. -- 어노테이션은 상속할 수 없다. -- 이미 지정되어 있는 어노테이션 ---- @Override ------ 해당 메소드가 부모 클래스의 메소드를 Override 했다는 것을 명시적으로 선언 ---- @Deprecated ------ 더이상 사용하지 않음을 명시하고 누군가 사용하는 경우 경고를 해준다. ---- @SupressWarnings("//속성값을 지정할 수 있다.") ------ 경고를 무시할 수 있도록 한다. -- 메타 어노테..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/qXijs/btsGbVJTsMS/i1l4WzDeJuODWHR2Af2TPk/img.png)
2024.03.28 - 중첩 클래스_Nested Class -- 클래스 안에 클래스를 선언한 것 -- 코드를 간단하게 표현하기 위함 -- 자바 기반의 UI 처리 시 사용자의 입력에 사용 -- 외부의 이벤트에 대한 처리를 하는 곳에서 사용 -- 종류 ---- Static Nested Class ---- 내부클래스_Inner Class ------ 로컬 내부 클래스_Local Inner Class ------ 익명 내부 클래스_Anonymous Inner Class Nested Class ㄴStatic nested class ㄴInner class ㄴLocal inner class ㄴAnonymous inner class -- Static Nested Class 가 필요한 이유 ---- 한 곳에서만 사용되는..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oZQxG/btsF8bH6YoU/SJzLvLpk7EC22KgFlhVksk/img.png)
2024.03.28 - String public final class String extends Object implements Serializable, Comparable, CharSequence 더보기 -- public : 누구나 사용할 수 있다. -- final : 클래스에 final이 선언되는 경우 더이상 확장할 수 없다. (자식 클래스를 생성할 수 없다) -- extends Object : 최상위 클래스를 확장한 클래스로 다른 클래스를 확장하지 않았다. -- implements : 이후 인터페이스에 선언된 메소드를 구현한 클래스다. ---- Serializable : 해당 객체를 파일로 저장하거나 다른 서버에 전송이 가능한 상태가 된다. ------ 구현할 메소드가 하나도 없다 ---- Comp..