BigInteger Class 1. BigInteger - 일반 자료형으로 표현할 수 있는 정수보다 더 큰 값을 표현하고자 할 때 사용 ※ BigInteger에는 수를 문자열에 써서 전달해야 함 // Example package sample; import java.math.*; // BigInteger public class Main { public static void main(String[] args) { // System.out.println(Long.MAX_VALUE); : Long의 최대 숫자 // System.out.println(Long.MIN_VALUE); : Long의 최소 숫자 // long num1 = 9223372036854775808L; Long의 범위를 벗어남 // BigInte..
Ⅰ. 제네릭 1. 제네릭 - 미리 정해둘 수 없는 참조 타입을 비워두는 기법 → 즉, 어디에 어떤 타입이 쓰일지 모를 때, 그 타입의 자리를 비워둠 - 제네릭을 이용하면 타입이 정해지지 않은 클래스와 인터페이스를 만들 수 있음 2. 제네릭 선언 방법 - 기호를 사용 ( 안에 T를 기입) ※ T : 타입 매개변수 (비워두고 싶은 부분 표시) ※ 매개변수화 타입 : 제네릭에 인자를 넣어서 완성된 타입 3. 타입 매개변수의 일반적인 이름 규칙 - 대문자로 알파벳 하나만 쓰기 4. 제네릭 관련 예제1 // Example1 (제네릭이 필요한 이유) package sample; class Apple { // toString() : 오브젝트클래스로부터 상속되는 오버라이딩 메소드 // :객체를 선언하고 그..
Ⅴ. Thread 동기화 1. 동기화(synchronized) // Example package sample; // 순차적인 동작을 처리할 때, 싱크가 맞지 않는 부분을 고쳐보자 // → synchronized 키워드 적용 class Counter { private int count = 0; // 메소드 간의 동기화가 이루어짐. // 따라서 다른 메소드의 동작 시, 침범하지 않고 기다림 public void increment() {synchronized(this) {count++;}} public void decrement() {synchronized(this) {count--;}} public int getCount() {return count;} } public class Main { static C..
Ⅳ. Thread의 속성 ※ 스레드명을 지정하지 않는 경우 thread-0, thread-1과 같이 번호를 1씩 증가시키면서 이름 자동 부여 // Example1 package sample; // 둘 이상의 스레드를 생성한 연습문제 // 어떤 것이 먼저 처리될까? class Even implements Runnable { public void run() { try { for(int i = 0; i < 20; i++) { if(i % 2 == 0) { System.out.println(i + " "); } } } catch(Exception e) { e.printStackTrace();// 스택 메모리 추적 내용을 출력 } } } class Odd implements Runnable { public voi..
Ⅲ. Thread의 생성 및 실행방법 1. Thread 생성방법 및 실행방법 - 생성방법1 : Thread class를 상속받아 run() 메소드 재정의 - 생성방법2 : Runnable interface 구현 (추상메소드(run()) 구현) → Thread 생성자로 Runnable 객체 전달 - 실행방법 : Thread 객체내의 start() 메소드 호출 // Example1 package sample; // Runnable 인터페이스를 상속해 클래스를 만들면, 멀티 스레드 동작 가능 class Task1 implements Runnable {// Runnable는 인터페이스 public void run() {// run() : 실행한다 // 여기에 스레드가 처리할 작업을 넣어주면 됨 } } // Th..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.