JAVA 기초 48

JAVA 23-2

실시간 채팅 프로그램 구현하기 Server package ex3_chat; import java.net.ServerSocket; import java.net.Socket; import java.util.ArrayList; //둘 이상의 클라이언트가 접속하며 클라이언트간의 문자전달도 가능한 구조의 서버 구현! public class ChatServer extends Thread { ServerSocket ss; ArrayList list; // 복사본 클라이언트 담을 준비 public ChatServer() { try { list = new ArrayList(); // 리스트 생성 ss = new ServerSocket(3200); System.out.println("서버 시작!"); } catch (Ex..

JAVA 기초 2023.09.12

JAVA 23-1

Network 사용자들이 옆에있는 장비로 데이터를 주고받는 작업을 네트워킹이라 한다. 자바에선 ip주소를 다루기 위한 클래스로 InetAddress를 제공 URL (uniform resource location) 인터넷에 존재하는 여러 서버들이 제공하는 자원에 접근할 수 있는 주소 http 통신과 Socket 통신 http - 단방향 통신 / Client의 Request가 있을 때 마다 Server가 Response하여 해당 정보를 전송하고 바로 연결을 종료 Socket - 양방향 통신 / Server와 Client가 특정 Port로 연결되어 실시간으로 양뱡향 통신이 가능 실시간 방송, 채팅, 게임과 같이 즉각적으로 정보를 주고받는 경우에 사용 Socket 통신의 규칙 1. 먼저 기다리는 측을 Serve..

JAVA 기초 2023.09.12

JAVA 21-1

JText JLabel : 정보 또는 텍스트를 위한 레벨 생성. 문자열이나 아이콘을 사용하여 객체 생성 JTextField : 한 줄의 문자열을 입력할 수 있는 컴포넌트 JTextField의 주요 메서드 String getText() : 텍스트 필드에 입력된 문자열 반환 void setText(String text) : 지정된 문자열을 텍스트 필드에 작성 void setEditable(boolean) : 텍스트를 입력할 수 있는지 설정 boolean isEditable() : 텍스트를 입력할 수 있는지 반환 JTextArea : 여러줄의 문자열을 입력할 수 있는 컴포넌트 JTextArea 영역보다 많은 문자열을 입력해도 자동으로 스크롤이 생기지 않음 스크롤을 사용하기 위해선 JScrollPane클래스를 ..

JAVA 기초 2023.09.08

JAVA 20-2

JFrame 자바에서 구현되는 하나의 창 package ex1_frame; import javax.swing.JFrame; public class Ex1_Jframe { public static void main(String[] args) { JFrame f = new JFrame(); f.setTitle("첫번째 프레임"); //f.setLocation(30,30); // x,y 좌표 //f.setSize(400,400); // 너비, 높이 f.setBounds(30,30,400,400); // x,y,너비,높이 f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 종료 f.setVisible(true); // 보이게 만들어주기 } } JButton packag..

JAVA 기초 2023.09.07

JAVA 19-2

BufferedStream package ex6_bufferedStream; import java.io.BufferedInputStream; import java.io.FileInputStream; // 기반스트림 : 대상에 직접 자료를 읽고 쓰는 스트림 // 보조스트림 : 직접 읽고 쓰는 것이 아닌 기반 스트림에 추가로 사용할 수 있는 기능 // 보조스트림은 실제로 데이터를 주고받는것이 아니지만 기반스트림의 기능을 향상시키거나 새로운 기능을 제공해주고 // 다른 보조스트림과 중첩하여 사용이 가능 // 바이트기반 보조스트림 : BufferedInputStream, BufferedOutputStream // 문자기반 보조스트림 : BufferedReader, BufferedWriter public clas..

JAVA 기초 2023.09.06