프로그래밍 언어/자바(JAVA) 8

[Java] Class 클래스 클래스에 관하여 (Feat 리플렉션)

https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html Class (Java Platform SE 8 ) Determines if the specified Class object represents a primitive type. There are nine predefined Class objects to represent the eight primitive types and void. These are created by the Java Virtual Machine, and have the same names as the primitive types tha docs.oracle.com Class에 접근하는 방법 ? 모든 클래스는 로딩 후 Clas..

http 프로토콜 소켓을 이용한 직접 구현(웹브라우저 구현 원리)

public static void main(String[] args) throws Exception { // 소켓 및 입출력 스트림 준비 Socket socket = new Socket("www.kocw.net", 80); BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())); PrintStream out = new PrintStream(socket.getOutputStream()); // 요청라인 out.println("GET / HTTP/1.1"); // 헤더정보 out.println("Host: www.kocw.net"); out.println("User-Agent: Mozilla/5.0 (Maci..

자바 컴파일러가 공짜로 해주는 거

1. 디폴트 생성자가 없으면 디폴트 생성자 만들어 줌 class A{ public A(){} //공짜로 만들어줌 } 2. 상속 시 super() 를 공짜로 넣어줌. class SuperCLS { public SuperCLS () { System.out.println("I'm Super Class"); } } class SubCLS extends SuperCLS { public SubCLS (){ super(); } public SubCLS () { System.out.println("I'm Sub Class"); } } class SuperSubCon { public static void main(String[] args) { new SubCLS (); } } 3. 클래스에서 Object 클래스를 공짜로..

자바 함수 만드는 법

//함수 = 메소드 = funciton =기능 같은말 //함수는 ()를 보고 알수 있다 //함수는 만드는 법과, 사용 하는 법 두가지를 알아야 한다. //함수 정의 = 만드는 법 //함수 호출 = 써먹는거 //함수만드는 법 //9형제 or void( 리턴타입) //함수명 - 개발자가 지어주는거 - 첫글자는 소문자(변수명과 같이) //함수명 다음에 반드시 괄호가 옴, 괄호안에 아무것도 없거나, 또는 변수 선언이 온다. void hiEveryone(int age) { System.out.println("좋은 아침입니다."); System.out.println("제 나이는 " + age + "세 입니다."); }

Java - JDK 설치 및 이클립스 설치

1.먼저 Util 폴더를 만든다. - 프로그램 파일등을 다운로드 받을 폴더를 하나 만들어 놓음 2.자바 11버전을 다운 받는다. https://jdk.java.net/archive/ Archived OpenJDK GA Releases Archived OpenJDK General-Availability Releases This page is an archive of previously released builds of the JDK licensed under the GNU General Public License, version 2, with Classpath Exception. WARNING: These older versions of the JDK are provided to he jdk.java.ne..

자바 스트림(Stream)

대량의 데이터를 가공해서 축소하는 것을 일반적으로 리덕션이라고 합니다. 데이의 합계, 평균값, 카운팅, 최대값, 최소값 등이 대표적인 리덕션의 결과물이라고 볼 수 있습니다. 그러나 컬렉션의 요소를 리덕션의 결과물로 바로 집계할 수 없을 경우에는 집계하기 좋도록 필터링, 매핑, 정렬, 그룹핑 등의 중간 처리가 필요합니다. 스트림은 크게 세가지 단계에 걸쳐서 동작한다. 스트림 생성: 스트림 인스턴스 생성. 스트림 중개 연산(스트림 변환, 가공): 필터링(filtering) 및 맵핑(mapping) 등 원하는 결과를 만들어가는 중간 작업. 스트림 최종 연산(스트림 사용, 결과): 최종적으로 결과를 만들어내는 작업 배열 스트림 배열 스트림은 Arrays.stream()메소드를 활용하여 생성이 가능하다. Stri..

자바에서의 Callback 구현(Event Listener 원리)

자바에서의 Callback 구현은 인터페이스를 활용한 주입으로 구현 할수가 있음 public interface MyListener { void myListener(); } public class Callback { private MyListener listener; public Callback(MyListener myListener) { this.listener = myListener; } //이벤트가 발생하면 알려준다. void start() { listener.myListener(); } } public class TestMain implements MyListener{ @Override public void myListener() { System.out.println("이벤트 발생"); } publ..