본문 바로가기

전체 글

(211)
Java_객체 지향 언어 클래스 (class) 클래스란 객체를 정의하는 설계도이다. → 객체의 상태(속성)은 클래스의 멤버 변수로 선언한다. 객체 (Object) 객체란 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것을 말한다. (상태와 기능) 객체 지향적 프로그래밍 설계란 ? 상태(변수)와 행위(메서드)를 정의하여 만들고 다른 객체들과 협력하거나 상호작용하게 코드를 설계하는 것이다. ex) 학생 클래스 HTML 삽입 미리보기할 수 없는 소스 ex) 회원 클래스 HTML 삽입 미리보기할 수 없는 소스 ex) 버스 클래스 HTML 삽입 미리보기할 수 없는 소스 클래스 사용시 규칙 클래스는 대문자로 시작하는 것이 좋다. public 클래스는 하나만 존재할 수 있고 파일..
Java_반복문 for 문과 while 문 반복문이란 ? 프로그램 내에서 똑같은 명령을 일정 횟수만큼 반복하여 수행하도록 제어하는 명령문이다. for 문 for(초기화식; 조건식; 증감식) { 수행문; } HTML 삽입 미리보기할 수 없는 소스 → for문을 이용하여 1부터 10까지 더한 결과를 출력하는 예제이다. 합계를 담아둘 sum을 선언하고 for문 안에서 i가 1씩 증가하며 반복문을 수행하는 동안 sum에 1부터 10까지 합쳐진 값을 출력하도록 하였다. for문의 수행 순서 → ① 초기화식에서 변수가 선언되면 ② 조건식이 실행된다. ③ 조건식이 참이면 수행문을 실행하고 ④ 증감식으로 이동하고 ② 다시 조건식으로 이동하여 조건식이 거짓이 되면 for문을 빠져나간다. for문에서 초기화식은 처음 단 한 번만 수행되지 이후엔 조건식 > 수행문 ..
Java_조건문 if 문 조건문이란 주어진 조건에 따라 참과 거짓을 판단하는 문장이다. if 문 문법 if(조건식) { 수행문; //조건식이 '참'인 경우에 수행 } if-else 문 문법 if(조건식) { 수행문1; //조건식이 '참'인 경우 수행 } else { 수행문2; //조건식이 '참'이 아닌 경우 수행 } HTML 삽입 미리보기할 수 없는 소스 → if문이 단독으로 있으면 출력이 될 수도 있고 안 될 수도 있다. if else문은 둘 중 하나는 무조건 실행한다. if-else if-else 문 if(조건식1) { 수행문1; //조건식1이 '참'인 경우 수행하고 전체 조건문을 빠져나감. } else if(조건식2) { 수행문2; //조건식2이 '참'인 경우 수행하고 전체 조건문을 빠져나감. } else if(조건식3) ..
Java_연산자 단항과 연산자 항 (operand) : 연산에 사용되는 값 연산자 (operator) : 항을 이용하여 연산하는 기호 → 연산자 우선순위 가장 낮은 순위 : = 가장 높은 순위 : () [] . HTML 삽입 미리보기할 수 없는 소스 → System.out.println()을 이용하여 앞에 '-'를 붙이면 실제 값이 변경된 것이 아니다. 값을 변경하려면 대입 연산자를 이용해 num = -num;과 같이 코드를 작성해야 한다. 산술 연산자 사칙 연산자 연산자 기능 + 두 항을 더한다. - 앞에 있는 항에서 뒤에 있는 항을 뺀다. * 두 항을 곱한다. / 앞에 있는 항에서 뒤에 있는 항을 나누어 몫을 구한다. % 앞에 있는 항에서 뒤에 있는 항을 나누어 나머지를 구한다. 복합 대입 연산자 대입 연산자와 다른..
상수와 형 변환 상수(constant) 선언 : 상수란 변하지 않는 수이다. final 예약어를 사용하여 선언을 한다. 상수를 사용하면 변하지 않는 값을 반복하여 사용할 때 의미있는 문자로 인식하기 쉽고 혹, 변하더라도 선언한 부분만 변경하면 되므로 여러 부분을 수정할 필요가 없다. HTML 삽입 미리보기할 수 없는 소스 → 상수는 선언 후에 단 한 번만 초기화 할 수 있다. 리터럴 (literal) : 프로그래밍에서는 상수를 '값을 한번 저장하면 변경할 수 없는 공간'으로 정의한다. 이와 구분하기 위해 상수를 다른 이름으로 불러야 해서 상수 대신 리터럴이라는 용어를 사용한다. 리터럴은 우리가 기존에 알고 있던 '상수'의 다른 이름일 뿐이다. 형 변환 (type conversion) : 형변환에는 자동 형변환과 강제 형..
Java_자료형(데이터 타입) - 변수의 종류는 크게 2가지 기본 데이터 타입 (primitive data type) 참조 데이터 타입 (Reference Type) 정수형 문자형 실수형 논리형 1바이트 byte - - boolean 2바이트 short char - - 4바이트 int - float - 8바이트 long - double - 기본 데이터 타입 정수형 (byte, short, int, long) HTML 삽입 미리보기할 수 없는 소스 → Long 데이터 타입을 다룰 때 R value 쪽에는 접미사 'L'이나 'l'을 사용해야 한다. Char type HTML 삽입 미리보기할 수 없는 소스 double type HTML 삽입 미리보기할 수 없는 소스 → Long타입 뒤에 접미사 'L'을 붙이듯이 Float에도 접미사 'F'..
Java_컴파일 시점 VS 런타임 시점 컴파일 시점(compile time)이란 ? : 우리가 작성한 코드를 컴파일이란 과정을 통해 기계가 읽을 수 있는 형태로 변환되는 과정을 컴파일 타임이라고 한다. 즉, 개발자가 작성한 코드를 컴퓨터가 이해할 수 있는 코드로 변경된 시점을 말한다. 컴파일 시점에 에러가 생기는 걸 컴파일 에러라고 하는데, → 컴파일 에러란 ? 컴파일 중 발생되는 에러를 의미한다. 대표적으로 syntax 에러가 해당되는데, syntax 에러란 우리가 사용하는 언어 문법에 맞지 않는 코딩을 했을 경우 발생하는 에러를 의미한다. 예로들면 변수를 선언했지만 그 변수의 데이터 타입을 명시하지 않았을 때, 즉 문법을 틀렸을 때 SyntaxError가 발생한다. 런타임 시점(run time)이란 ? : compile time 이후 프로..
Java_쓰레드(Thread) - 프로세스(Process) 와 쓰레드(Thread) 프로세스(Process)란? : 프로세스는 CPU에 의해 메모리에 올려져 실행중인 프로그램을 말하고, 자신만의 메모리 공간을 포함한 독립적인 실행 환경을 가지고 있다. 자바 JVM(Java Virtual Machine)은 주로 하나의 프로세스로 실행되며, 동시에 여러 작업을 수행하기 위해서 멀티 쓰레드를 지원하고 있다. 쓰레드(Thread)란? : 프로세스 안에서 실질적으로 작업을 실행하는 단위를 말하며, 자바에서는 JVM(Java Virtual Machine)에 의해 관리된다. 프로세스에는 적어도 한개 이상의 쓰레드가 있고, Main 쓰레드 하나로 시작하여 쓰레드를 추가 생성하면 멀티 쓰레드가 된다. - 멀티쓰레딩의 장단점 장점 CPU의 사용률을 향..