전체 글33 [JavaScript] 데이터 타입, let / var, hoisting // 1. Use strict // added in ES5 // use this for Vanilla Javascript. 'use strict'; // 2. Variable, rw(read/write) // Mutable 타입 // variable은 memory에 값을 읽고 쓰는 것이 가능함 // let (added in ES6) (자바스크립트에서 변수를 선언할 수 있는 단 하나의 키워드) let globalName = 'global name'; // 전역 변수 { let name = 'hello'; console.log(name); name = 'hi'; // let은 재할당이 가능하기 때문에 'hi'를 저장해도 잘 출력됨 console.log(name); console.log(globalName);.. 2021. 8. 5. [JAVA] 입출력(I/O) - 1 File 객체 만들기 연습 1. new File(String 파일 또는 경로) - 디렉토리와 디렉토리 사이 또는 디렉토리와 파일 사이의 구분 문자는 '\'를 사용하거나 '/'를 사용할 수 있다. - 윈도우 환경에서는 경로의 대소문자 구분을 하지 않아도 된다. 2. new File(File parent, String child) - 'parent' 디렉토리 안에 있는 'child' 파일을 갖는다. 3. new File(String parent, String child) - 'parent' 디렉토리 안에 있는 'child' 파일을 갖는다. public class FileTest01 { public static void main(String[] args) { // 1. new File(String 파일 또는 .. 2021. 8. 4. [JAVA] 스레드의 동기화 - 2 스레드의 동기화 - wait(), notify(), notifyAll() - 동기화의 효율을 높이기 위해 wait(), notify()를 사용한다. - Object 클래스에 정의되어 있으며, 동기화 블록 내에서만 사용할 수 있다. 1. wait() 객체의 lock을 풀고 해당 객체의 스레드를 waiting pool에 넣는다. 2. notify() waiting pool에서 대기중인 스레드 중의 하나를 깨운다. 3. notifyAll() waiting pool에서 대기중인 모든 스레드를 깨운다. 🌳 실습 public class ThreadTest20 { public static void main(String[] args) { WorkObject workObj = new WorkObject(); Thread.. 2021. 8. 4. [JAVA] 스레드의 동기화 - 1 스레드의 동기화 한 번에 하나의 스레드만 객체에 접근할 수 있도록 객체에 lock을 걸어서 데이터의 일관성을 유지하는 것 1. 메서드에 lock을 걸고자 할 때 public synchronized void calcSum() { } 2. 특정한 객체에 lock을 걸고자 할 때 synchronized(객체의 참조변수) { } 🌳 실습 public class ThreadTest16 { public static void main(String[] args) { ShareObject sObj = new ShareObject(); // 각각의 스레드가 하는 일은 각 객체의 add() 메소드를 10번 씩 호출하는 것이다. TestThread th1 = new TestThread("test1", sObj); TestTh.. 2021. 8. 3. 이전 1 2 3 4 5 6 7 8 9 다음