본문 바로가기

Java

(54)
jar to exe (launch4j) 보호되어 있는 글입니다.
String to int , int to String String to int String from = "123"; int num = Integer.parseInt(from); int to String int num = 123; String str = Integer.toString(num);
length, length() , size() 구분 1. length - arrays(int[], double[], String[]) - length는 배열의 길이를 알고자 할때 사용된다. 2. length() - String related Object(String, StringBuilder etc) - length()는 문자열의 길이를 알고자 할때 사용된다. 3. size() - Collection Object(ArrayList, Set etc) - size()는 컬렉션프레임워크 타입의 길이를 알고자 할때 사용된다.
Java Datastructure import java.util.*; stack Stack sta = new Stack(); sta.push(1); sta.push(2); while(!sta.isEmpty()) { //peek() 맨 위 객체 반환 //pop() 맨 위 삭제하면서 반환 System.out.println(sta.pop()); } Queue que = new LinkedList(); que.offer(1); que.offer(2); que.offer(3); while(!que.isEmpty()) { //poll() 삭제하면서 반환 //peek() 가장 처음 반환 System.out.println(que.poll()); } ArrayList ArrayList list = new ArrayList(); list.add(1); /..
Synchronized 키워드 synchronized 메서드 하면 현재 이 메서드가 속해 있는 객체에 lock을 검. class Bank{ public synchronized void save(int s) { } } 이런식으로 Bank클래스의 메소드에 synchronized 해주면 Bank가 lock이 걸리므로 하나의 스레드가 Bank를 전부 진행 한 후에 다음 스레드가 Bank 접근 할 수 있어짐. -> shared data는 Bank 이므로
Thread Thread-하나의 프로세스 내의 작업의 단위 Thread 만들기 위해서 extends Thread 해야 하는데 다른 객체를 상속받고 있다면 implements Runnable 해서 인터페이스 구현 Thread 는 run이라는 함수를 구현해야함. 그 안에 하고자 하는 작업을 지시 Thread실행 방법은 thread 객체 만들고 그 객체를 start()함수로 실행시킴 메인 함수에 두 개의 thread를 만들었다면 총 thread는 메인포함 3개 따라서 메인은 두개의 thread를 띄우고 종료된 후에 각 thread는 run에 접근하여 실행함 두 개의 thread는 순서가 지정되지 않았으므로 임계영역에 대해 마구잡이 접근임. class mythread extends Thread{ public void run..
데코레이터 패턴 보호되어 있는 글입니다.
RandomAcessFile RandomAccessFile c의 fopen같은 느낌 읽고쓰기 전부 가능 RandomAccessFile rf = new RandomAccessFile(“rf.txt”,”rw”); rf.writeInt(1); System.out.println(rf.getFilePointer()); 하면 Int 4바이트 이므로 4위치로 이동되었음. rf.writeDouble(3.14); rf.writeUTF(“안녕”); rf.seek(0); 파일 포인터가 가장 끝으로 이동되어 있으므로 읽기 위에서 첫위치로 지정. int i = rf.readInt(); double d = rf.readDouble(); String s = rf.readUTF(); 각각 변수에 들어옴