자바 31

자바 network을 사용한 채팅 프로그램

서버와 클라이언트 채팅프로그램을 만들기 전 알아 두어야 할 서버 - 클라이언트 의 관계 서버 – 사용자가 채팅 내용을 치면 결과를 다른 사용자 한테 전달해주는 전달자 클라이언트 – 사용자가 사용하는 환경 TCP/IP(Transmission Control Protocol) - 다른 컴퓨터와 통신을 하기 위한 통신 규약 컴퓨터 프로그램간 데이터를 안정적으로 전달할 수 있게 해줍니다. Socket - 컴퓨터 네트워크를 경유하는 프로세스 간 통신의 종착점입니다. 쉽게 생각하면 톨게이트로 생각하면 됩니다. 즉 채팅내용(데이터)는 클라이언트 -> 회선 -> 서버의 소켓에 도달 통신 절차 결과출력 서버 클라이언트 1. 클라이언트에서 connect 연결 요청 2. 대기중인 서버가 accept로 연결 수락 3. 클라이언..

자바 2024.05.01

멀티 스레드

멀티 스레드란?멀티 태스킹이란 두가지 작업을 동시에 처리하는 것을 뜻합니다.한 프로그램 안에서 멀티 태스킹을 동시에 하는 애플리케이션들도 있습니다. ex) 메신저 스레드는 프로그램의 실행흐름 입니다. 프로그램 내에 스레드가 2개라면 두 개의 코드 흐름이 생긴다는 뜻입니다. 스레드 사용방법 방법1 1. Runnable인터페이스를 상속받아 run() 추상메서드를 재정의 하고 2. Thread객체의 생성자의 매개값으로 전달합니다. 3. 그 다음 start()메서드를 통해 실행시킵니다 방법2 1. Thread클래스를 상속받아 run() 추상메서드를 재정의 하고 2. Thread객체의 생성자의 매개값으로 전달합니다. 3. 그 다음 start()메서드를 통해 실행시킵니다.두 개의 차이는 무엇인가요? - Runnab..

자바 2024.05.01

정규표현식

정규 표현식이란? 문자열이 정해진 패턴으로 구성되어 있는지 검증해야 할 때, 사용합니다. ex) 이메일, 전화번호 Pattern클래스, Matcher클래스Pattern클래스 -java.util패키지의 Pattern클래스의 matcher(), matchers() 메서드를 정규표현식 검증에 이용합니다static메서드 compile(패턴) – 정규표현엔진(정규식)을 만들어 냅니다 matcher(검증 데이터) : 데이터를 비교해서 Matcher클래스로 반환 matchers(패턴, 검증 데이터) : 패턴으로 비교하여 boolean형으로 반환String info = "30세/서울시 강남구/02-234-5678/010-234-5678"; String pattern = "\\d{2,3}-\\d{3,4}-\\d{3,4}..

자바 2024.05.01

익명객체와 람다식

익명 객체 란 인터페이스 타입으로 변수를 선언하고, 구현 객체를 초기값으로 대입하는 경우를 생각해보자. 인터페이스의 구현 클래스를 선언하고,  new 연산자를 이용해서 구현 객체를 생성한 후, 필드나 로컬 변수에 대입하는 것이 기본이다. 하지만, 구현 클래스가 매번 달라지거나, 한 번만 사용되는 경우, 굳이 구현 클래스를 생성하지 않고 익명 클래스로(이름 없는 클래스) 로 선언 할 수 있습니다. 람다식 이란 함수적 프로그래밍 Y = f(x); 형태의 함수로 구성된 프로그래밍 기법 함수를 매개 값으로 전달하고 결과를 받는 코드로 구성 함수적 프로그래밍이 객체 지향 프로그래밍 보다는 효율적인 경우. 1. 대용량 데이터의 처리시 2. 이벤트 지향 프로그램시 최근 프로그래밍 기법 객체지향프로그래밍 + 함수적 프..

자바 2024.05.01

API-IO(Input스트림-Output스트림)

스트림 이란?스트림은 데이터의 흐름(흐르는 통로)를 말합니다. - 데이터가 들어오면 입력 스트림 입니다 - 데이터가 나가면 출력 스트림 입니다 - 스트림 클래스는 크게 두 종류로 구분됩니다. (byte기반, 문자 기반) - 바이트 기반 스트림 – 그림, 문자 등 모든 종류의 데이터를 보낼 수 있습니다 - 문자 기반 스트림- 오직 문자만 보낼 수 있도록 특화되어 있습니다 스트림은 byte기반, 문자 기반으로 나뉜다  바이트 단위로 쓰는 OuputStreamOutputStream 클래스 - OutputStream은 바이트 기반 출력 스트림의 최상위 클래스로 추상 클래스입니다. OutputStream 주요 메서드 1. write(byte b): 출력 스트림으로 1바이트를 내보냄. 2. write(byte[] ..

자바 2024.05.01