본문 바로가기

Java

(44)
[Java] Stream기본 -스트림 특징 스트림(Stream) 이란 스트림은 데이터 처리연산을 지원하기 위해 소스(source)에서 추출된 연속된 요소(sequence of elements)이다. 스트림의 특징 파이프라이닝(pipelining) 스트림은 연속된 연산처리 작업에 성능을 발휘한다. 원하는 데이터를 추출하고, 정렬하고, 매핑하는 일련의 작업을 한번에 처리하는데 적합하다. 목적에 따라 여러 파이프를 연결할 수 있듯이 스트림을 사용하면 필요에 따라 스트림 연산을 구성할 수 있다. 내부반복(internal iteration) 반복자(Iterator)를 사용하면 외부반복이다. 외부반복은 명시적으로 작업을 지시하는 방법이다. 내부반복에 대해서는 아래에 설명한다. 컬렉션과 스트림의 차이 java 컬렉션에는 List, Set, Map 등이 있다...
[Java] 인터페이스 안에 필드, 메서드, 클래스 선언하기 Interface 안에 무엇을 선언할 수 있는지 확인해본다. 참고로 JDK 11 버전으로 작성한 코드이다. 인터페이스 안에는 아래 내용을 선언할 수 있다. 변수 메서드 enum class 1. 변수 인터페이스에 선언된 변수는 static 키워드, public 접근제어자에 관계없이 static final로 역할한다 1) 변수 //변수 선언 public int int1 = 0; int int2 = 1; 2) static 변수 //static 변수 public static String str1 = "test"; static String str2 = "test"; 3) final 변수(상수) //final 변수 선언 final String final1 = "test"; static final String fin..
[Java] 네트워킹 - UDP UDP 네트워킹 UDP 특징 user datagram protocol → 사용자 데이터그램 방식 연결되었는지 확인하지 않고 데이터를 전송함 데이터를 전송했지만 실제로 수신했는지는 모름 데이터가 수신자한테 갈 수도 있고, 가다가 유실될 수도 있음 빠른 전송, 실시간 전송 가능 전송된 데이터 순서가 엉킬 수 있음 ex) (던진다는 말 없음, 몇번째 공인지도 알려주지 않고) 공 던지기 (공 받았는지 확인 안함) Java UDP 네트워킹 서버와 클라이언트의 데이터 통신은 DatagramSocket 과 DatagramPacket 객체를 사용한다 TCP 와는 다르게 DatagramSocket 은 송수신 둘다 가능하다 클래스 역할 java.net.DatagramSocket 데이터를 주고받을 수 있는 소켓 객체를 생성..
[Java] 네트워킹 - TCP TCP 네트워킹 TCP 특징 transmission control protocol → 전송 제어 방식 클라이언트와 서버가 연결을 확인한 상태에서 데이터를 전송함 고정된 통신선로(일종의 전용도로)를 확보해둠 데이터를 순차적으로 보냄 정확하고 안정적인 방식 시간이 오래걸림. 특히 연결하는 단계에서 시간이 가장 많이 소요됨 ex) 공 던질거야, 들었지? (응답확인) 이거 몇번째 공니까 잘 받아라!! 잘 받았지? (응답확인) Java TCP 네트워킹 서버와 클라이언트의 데이터 통신은 ServerSocket 과 Socket 객체를 사용한다. 클래스 역할 java.net.ServerSocket -통신연결 요청을 대기하다가 연결요청이 들어오면 연결을 수락 -데이터 수신(받기) -보통 서버에서 사용하는 클래스 java..