본문 바로가기

Java6

'스레드 기초' Java #11 Muti tasking두 가지 이상의 작업을 동시에 처리하는 것 운영체제는 멀티 태스킹을 할 수 있도록 CPU 및 메모리 자원을 프로세스마다 적절히 할당 Multi thread하나의 프로세스가 두 가지 이상의 작업을 처리할 수 있도록 해줌 스레드가 하나라도 동작하고 있으면 프로세스는 종료되지 않음 하나의 스레드는 하나의 코드 실행 흐름 *스레드가 두 개이면 두 개의 코드 실행 흐름이 발생함 Multi process는 운영체제에서 할당받은 자신의 메모리를 가지고 실행됨으로 서로 독립적 Multi thread는 하나의 프로세스 내부에 생성되고 하나의 스레드 예외가 발생하면 프로세스 종료 스레드 필요성ANR, 시간이 많이 걸리는 작업을 수행하는 경우 ANR 방지 Network, 데이터를 가져오는 등의 오래걸리.. 2017. 4. 10.
'전위(++i) 후위(i++) 증감연산자' 필수상식 전위 증감 연산자(++i, --i)기존에 선언한 변수에 값을 증가 또는 감소시킨 후 반환i = i + 1;return i;코드: int i = 1; int j = ++i;결과: i = 2, j = 2 후위 증감 연산자(i++, i--)새로운 임시 변수에 값을 대입한 뒤에 증가 또는 감소시킨 후 반환const int temp = i;i = i + 1;return temp;코드: int i = 1; int j = i++;결과: i = 2, j = 1 컴파일러에 의한 최적화를 하지 않은 경우 전위 증감 연산자를 사용하면 성능이 좋아질 수 있음*연산자 오버로딩으로 증감 연산자를 만든 경우 후위 증감연산자는 클래스를 복사해야함따라서 후위, 전위 둘다 사용해도 되는 경우( for문 'o', while문 'x' )에.. 2016. 12. 23.
'List VS Map' 기본 사용법 정리 List (ArrayList기준) 객체의 수에 따라 자동크기 조절 아이템을 벡터의 어느 곳에나 추가 가능 메소드 종류 add(삽입 값), 맨 뒤에 요소 삽입 add(위치, 삽입 값), 특정 위치에 요소 삽입 get(위치), 지정된 위치의 요소 반환 set(위치, 삽입 값), 특정 위치의 값을 삽입 값으로 교체 remove(위치), 지정된 위치의 요소 제거 remove(삽입 값), 지정된 요소의 값 제거(중복 값 있는 경우 맨 앞의 하나만 제거) clear(), 모든 요소 제거 indexOf(삽입 값), 지정된 요소의 위치 값 반환(중복 값 있는 경우 맨 앞의 하나만 반환) isEmpty(), 비어있는지 확인 toArray(), 모든 요소를 배열로 반환 Map(HashMap기준) HashTable과 달리 .. 2016. 12. 6.
'Object-Oriented' 패턴 기초 객체지향의 4가지 특징상속성(Inheritance) / 캡슐화(Encapsulation) / 다형성(polymorphism) / 추상화(Abstraction)*추상화를 위하여 두 가지 특징이 존재장점, 재사용성 / 확장성 / 이식성 / 유지보수의 편리성 메소드 중복 정의(overloading)오버해서 로딩한다, 비슷한 업무지만 다른 양식을 주면서 일을 더 시킴 메소드 재정의(overriding)부모 위에 태운다, 부모를 새로 정의부모로부터 자식이 태어났지만 자식의 모든 것을 부모가 컨트롤 할 수 없다 추상화를 사용하는 이유'갑', '을', '병' 이 존재할 때 '갑'이 인터페이스를 정의하면'을'은 인터페이스에 따라서 메소드를 구현'병'은 '을'이 어떻게 구현했는지 상관 없이 '갑'이 정의해둔 인터페이스로.. 2016. 11. 28.