본문 바로가기

Java

(6)
로아랑 서버구축을 위한 공부 6일차 이것이 자바다(책) Chap15.5 ~  기억에 남는 부분 메모 1. 검색 기능을 강화한 컬렉션 TreeSet, TreeMap이 컬렉션에 객체를 저장하면 부모노드 양 옆에 낮은건 왼쪽, 높은건 오른쪽 자식노드에 저장됨그냥 Set, 그냥 Map을 이용해도 되지만 이걸 이용하는건 검색 관련된 기능이 여기에만 있기 때문. 2. Comparable기본적으로 객체가 저장됨과 동시에 오름차순으로 정렬되는데 사용자 지정 객체라면 Comparable을 구현해 compareTo를 재정의 해서 비교를 할 수 있게 해줘야 함class Person implements Comparable { private int age; private String name; Person(int age, String name) ..
로아랑 서버구축을 위한 공부 5일차 이것이 자바다(책) Chap14.8 ~ Chap 15.4 기억에 남는 부분 메모1. 스레드 풀- 최대로 몇개의 스레드를 만들지 정해 무한정으로 스레드가 생성되는 것을 막는 기능- 작업큐에 남아있는 작업을 완료 하고 종료할때는 'shutdown()'- 현재 작업중인거 중단시키고 스레드 풀을 종료시킬 때는 'shutdownNow()'를 사용하고 미처리된 작업 목록이 리턴됨String[][] mails = new String[1000][3];for (int i = 0; i " + message); } });}executorService.shutdown();이렇게 하면 일단 처음에 메일 1000개 생성하고 스레드풀 5개까지 만들어서 아래 반복문에서 병렬적으로 메일 보내는 기능을 실행하는데프린트..
로아랑 서버구축을 위한 공부 4일차 이것이 자바다(책) Chap11 ~ Chap14의 7까지 기억에 남는 부분 메모1. 에러, 예외 처리try { Class.forName(null); System.out.println("존재");} catch (ClassNotFoundException e) { System.out.println(e.toString());} catch (NullPointerException e) { System.out.println(e.toString());} - try 구문을 통해 예외가 발생할 수 있는 코드를 실행- catch 구문을 통해 예외 발생시 실행할 코드를 작성- finally는 성공하든 실패하든 무조건 실행- 여러 예외가 발생할 수 있는 상황에서는 다중 캐치가 가능하며 가장 먼저 캐치된 예..
로아랑 서버구축을 위한 공부 3일차 이것이 자바다(책) Chap6 ~ Chap10 기억에 남는 부분 메모 1. 한 파일에 public class는 하나만 생성가능 2. 한 파일에 public class와 다른 class를 또 생성하면 다른 파일로 분류됨public class SportsCar { Tire leftTire = new Tire();}class Tire {}3. 클래스 생성자 변수 관련자바에서는 파라미터를 변경할 수 있다. 예를 들어public static void main(String[] args) { printMessage("안녕");}public static void printMessage(String message) { message = "변경된 메세지~"; System.out.println(mes..
로아랑 서버구축을 위한 공부 2일차 김영한의 자바 입문 섹션 3 ~ 끝이것이 자바다(책) Prat2 - Chapter 5(Enum) 기억에 남는 부분 메모 1. 문자열 더하기Swift도 String + String은 가능한데 Java에서 String + 숫자가 가능함int age = 500;System.out.println("내 나이는" + age + "살");-> String 타입에 다른 타입을 더하는 경우 그 대상은 문자열로 변경된다고 함 2. 증감 연산자(++, --)int a = 0;++a;System.out.println(++a);+1 해줄거라면 a = a + 1 해줄 필요 없이 ++a; 해주면 됨그러면 a 에 1을 더함 2 - 1 전위 증감 연산자위와 같이 앞에 ++를 붙이는 경우int a = 1;int b = 0;b = ++a..
로아랑 서버구축을 위한 공부 1일차 김영한의 자바 입문 섹션 0 ~ 섹션 2 기억에 남는 부분 메모 1. package는 폴더 같은거, package안에 파일 생성하면 맨 위에 package 패키지이름; 이렇게 생김2. Swift는 변수를 var a: Int = 10 이런식으로 생성하는 반면 java는 int a = 10; 이라고 선언3. 뭐 어떤 코드가 끝났으면 엔터 쳐서 다음 줄로 넘어가는게 아니라 끝났다는걸 알려주는 ;(세미콜론)을 작성해줘야 함4. public static void main(String[] args) {} 는 파일이 시작한다는 메서드이고 이 안에 코드를 작성(psvm이라고 자동완성 있음)5. 프린트는 System.out.println(); 으로 하고 이것도 sout이라고 자동완성 있음6. 정수, 실수 체계byte b..