final_immutable Final 과 Immutable 비교 final은 키워드이고, Immutable은 패턴이다. final이면 Immutable인가? 아니다. final 변수의 참조주소는 변경될 수 없다. immutable 객체내부의 정보는 객체가 생성될 때 주어진 것이며, 객체가 살아 있는 동안 그대로 보존된다. String class를 immutable class라고 한다. String 객체는 한번 선언되면 그 값이 변경되지 않기 때문이다. Example String name = "Bactoria"; name = "Junoh"; "Bactoria"가 "Junoh"로 변경된것 아니냐고 할 수 있겠지만, 아래처럼 새 객체가 만들어질 뿐이다. 변경은 없다. final은 참조를 변경하지 못한다. f..
asd StringBuffer -> StringBuilder buffer -> builder 로 변경하는 코드는 아래와 같습니다. public static void main(String[] args){ //buffer 생성StringBuffer buffer = new StringBuffer(); buffer.append("Add in Buffer"); //builder 생성 StringBuilder builder = new StringBuilder(); builder.append(buffer); //builder 출력 System.out.println(builder.toString());} //결과 : Add in Buffer How ?StringBuffer와 StringBuilder는 클래스가 다른데 ..
Thread 만드는법은 2가지1. Thread 클래스 상속2. Runnable 인터페이스 구현 지금 소켓통신에 쓸 방법이 2번이라서 2번을 살펴본다. t.start(); public class ServerThread implements Runnable { Server s; Socket socket; public ServerThread(Server s){ this.Server = s; } public synchronized void run(){ try{ socket = s.getSocket(); } }catch(Exception e){ System.out.println("비정상 종료"); } } public Socket getSocket(){ // Thread에 Server의 socket 전달 위함. re..
import java.util.Arrays;import java.util.List; public class asd { public static void main(final String[] args) {// TODO Auto-generated method stubfinal List list = Arrays.asList(1,2,3,4,5,6);for(final Integer i : list) {// i = 1 ;