본문 바로가기

언어/JAVA

(4)
[JAVA] ✔ 객체와 클래스 객체와 클래스 객체의 정의 new 연산자에 의해 heap 메모리에 생성된 것을 말한다. 클래스의 등장배경 변수 → 배열 → 구조체로 점차 여러 개의 자료형을 여러개의 데이터로 넣는 것으로 발전했다. 구조체 안에 기능을 넣는 형식을 쓰다보니 외부에서 쉽게 접근할 수 있어 구조체안에 기능을 함께 넣어 외부에서 오는 데이터 접근을 private 로 제한하는 캡슐화를 하게되었다. 캡슐화의 정의 추상화를 통해 정리된 구조체와 기능을 하나로 묶어 관리하는 기법으로 외부에서 데이터의 직접 접근을 막고 대신 데이터를 처리하는 함수들을 클래스 내부에 작성하는 방법 private 로 하는 방식인데 만약 public 으로 사용하면 에러는 나지 않지만 캠슐화의 원칙의 위배되는 것이다. 멤버 함수는 클래스 밖에서 접근할 수 있..
연산자 연산자 종류 및 우선 순위 1 최우선 연산자 직접 접근 연산자 () . [] 2 단항 연산자 + - ! (자료형) ++ -- ~ 3 이항 연산자 산술 연산자 * / % 4 + - 5 쉬프트 연산자 >> >> 6 비교 연산자 > = >>= 16 비트논리대입 &= ^= != 17 나열 연산자 증감연산자 (++, --) - 전위 연산자 (++a) 자신의 연산을 우선 실행 후 다음 연산 - 후위 연산자 (a++) 자신이 속해 있는 연산을 먼저 실행 후 종료 후 자신 연산 실행 int a = 10; int b = 1; int c = a-- + b; // c=11 a=9 int d = ++b + 1;// d=3 b=2 int result = a - b + c * d // 9-2+11*3=40 논리부정 연산자 ..
INTERRUPT 자바에서 스레드가 작업을 실행하고 있을 때 강제로 멈추도로고 하는 방법은 없다. Thread.stop() 또는 Thread.suspend() 는 문제가 많은 기능으로 사용 불가 따라서 대신 인터럽트라는 방법을 사용하여 특정 스레드에게 작업을 멈춰달라고 요청하는 방법으로 해야한다. 작업이난 서비스를 실행하는 부분의 코드를 작성할 때 멈춰달라는 요청을 받으면 진행 중이던 작업을 모두 정리한 다음 종료하도록 만들어야 한다. 실행 중이던 일을 중단 할 때 정상적인 상태에서 마무리 하려면 작업을 진행하던 스레드가 직접 마무리를 하는 것이 가장 좋은 방법이다. 메소드 설명 interrupt() 해당하는 스레드에 인터럽트를 거는 역할을 함 isinterrupted() 해당하는 스레드에 인터럽트가 걸려있는지 확인해주는..
변수(Variable) 변수란? 메모리 공간 (RAM)에 값을 기록하기 위한 장소 또는 공간이라고 말한다. 기본 자료형 논리 boolean 1byte 숫자 (정수) byte 1byte(실제로는 1bit) short 2byte int 4byte long 8byte 숫자(실수) float 4byte double 8byte 문자 char 2byte 문자열 String 변수의 명명 규칙 대소문자 구분되며 길이 제한은 없다 예약어를 사용하면 안된다. 숫자로 시작하면 안된다 특수문자는 _,$ 만을 허용한다. 여러 단어 이름은 단어의 첫글자를 대분자로 한다. (프로그래머의 약속!) 변수의 초기화 변수를 사용하기 전에 처음으로 값을 저장하는 것으로 지역변수는 반드시 초기화 해야한다. 초기화 방법 1) 선언 후 초기화 int age; age ..