목록java of educational by contents (51)
yoni
1. Server - 수집되는 온도를 파일로 출력하는 프로그램을 제작하세요. - 수집되는 온도의 범위는 -5도 ~ 5도 - 온도 수집은 3초에 한번씩 전송 되도록 합니다. Thread 이용 Thread.sleep(3000); // 3초간 실행 중지 - bw.write(String.valueOf(temp)): 전송시 문자열로 변경하여 전송합니다. - bw.newLine(): Enter를 전송하여 readLine() 메소드를 작동하게합니다. [실행 화면] 접속자를 기다리는 중입니다.[접속 IP] 172.16.7.250-4-1-1001-22-5데이터 수집을 종료합니다.새로운 위치에서 데이터를 수신 준비합니다. ▷ network.CollectServer.java java network.CollectServer ..
1. 서버 ▷ network.ChatServer.java------------------------------------------------------------------------------------- package network; import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.ServerSocket;import java.net.Socket;import java.util.Scanner; /* java network.ChatServer */pub..
[01] SYNCHRONIZED 동기화 처리 예제 - User: 사용자 정보, 포인트 저장 데이터 클래스 - Act: User 데이터 게임 활동(포인트증가, 포인트 감소) - Play: Thread를 상속받은 클래스로 게임중인 상황을 구현 - Thread5: 게임 시작 클래스 - public synchronized void increase(){... 메소드에서 'synchronized' 키워드를 제외하고 실행하면 포인트가 일정하게 증가되지 않습니다. 하지만 'synchronized' 키워드를 선언하면 JVM 스레드 스케쥴러에의해 일정하게 포인트가 증가되도록 처리됩니다. ▷ Thread5.java--------------------------------------------------------------..
[01] Thread 1. 스레드 개론 1) CPU 관점에서의 스레드의 필요성 - 네트워크 속도보다 중앙처리장치(CPU)의 속도가 빠름으로 여러명의 접속자가 시간을 미세하게 나누어, 고성능 CPU를 나누어 쓰는 기능을 제공한다. 예) 하이퍼 스레딩: 물리적 코아 2개를 SW적인 방법으로 4개로 작동하여 CPU를 쉬는 시간 없이 좀더 많이 최대한 사용하려는 기술 I3: 2 Core, Hyper Threading (최소 스펙) I5: 2 Core, Hyper Threading + Turbo Booster (권장) I7: 4 Core, Hyper Threading + Turbo Booster - 네트워크 기반의 경우 스레드를 이용하면 CPU 시간을 아주 작게 분리하여 여러개의 프로세서가 있는 것처럼 작동시키는..
[01] 네트워크 개론 - 산악 지역등의 데이터 수집 108/서울/86m/○/0/0/0/24.8/291.1/WNW/5.9/326.3/NNW 3.4/27/1006.8/서울특별시 종로구 태양열 전원 공급: Arduino 센서 데이터 수집 -> Network API -> Bluetooth로 데이터 수집 -> 3G, LTE(Data 통신)로 전송 -> 위성 -> TCP/IP 통신 -> 네트워크 서버로 데이터 저장 -> DBMS 서버에 저장 -+-> JSP/Spring/MyBATIS등으로 구현 -> Web Server에서 서비스 +-> 빅데이터 분석 +-> 머신 러닝 예측 1. IP and Port의 이해 - TCP/IP 프로토콜은 IP와 PORT 정보를 이용하여 사용됩니다. - 프로토콜은 인간의 언어 처럼 2대..
[01] 접근 한정자(Access Modifier, 제한자, 수정자) - 다른 클래스에서 현재 클래스의 필드(변수)와 메소드(함수)의 접근 가능 여부를 선언하는 기법, 일반적으로 변수(필드)는 private, 메소드는 public 을 선언합니다. - 2개 이상의 클래스에서의 관계입니다. 1) 클래스간에 멤버 변수(필드)나 멤버 메소드(함수)에 접근하는 것을 제한할 수 있습니다. 2) 클래스간에 간섭을 막을 수 있음으로 콤포넌트의 독립성(캡슐화)을 강화할 수 있습니다. . 간섭: A class를 변경하면 B class등 다른 클래스에서 심하게 에러가 발생하는 현상 . 필드 사용에 제한을 가할 수 있음. 3) 자바의 객체 지향 문법을 구현하는 중요한 기술을 제공합니다. 4) 접근 제한자의 상세화(상속, 패키..
이거 수업 안들음 나중에복습할것[01] 추상 메소드, 추상 클래스(Abstract Class), @Override 에노테이션 1) 추상 메소드 - 기능이 다양하게 구현되거나 시간의 흐름에따라 변경이될 가능성이 있는 메소드 - 기능을 구현하지 않고 메소드 Stub만 구현한 메소드. '{, }' 생략 예) public abstract void fall(); - 메소드가 기능이 결정이 되었으나 구현을 하지 않은 경우로 추후 어떤 형태로든 구현할 예정인 메소드 - 실제 구현은 나중에 함으로 기능을 설계하는 것에 중심을 둠. 2) 추상 클래스 - 일반 메소드와 추상 메소드가 같이 혼합되어 있는 class 입니다. - 추상 클래스안의 추상메소드는 하위(자식, extends) 클래스에서 구현을해야 합니다. 구현을 하..
[01] Static field(변수), Static method(함수) - 일반적인 클래스는 new를 이용하여 메모리를 할당해서 사용하나, static 요소들은 클래스의 코드가 JVM에 인식될때(호출될때) new 없이 자동으로 메모리가 할당됨. - new를 이용하여 객체를 만들지 않고 변수나 메소드의 사용이 가능합니다. - 보통 간단한 값의 처리시 주로 이용합니다. - static 변수는 자동으로 할당된 메모리를 다른 객체와 계속 공유합니다. - class 변수 또는 class 메소드라고 함. 예) int pay = Integer.parseInt(args[0]); // 문자열을 정수로 변환 double ija = Double.parseDouble(scan.nextLine()); flaot per = F..