본문 바로가기

728x90

BackEnd/Java

[java] 메모리 구조 ◎ 메모리 구조 ▷ 코드 영역 : 메모리의 코드(code) 영역은 실행할 프로그램의 코드가 저장되는 영역으로 텍스트 영역이라고 합니다. ▶ CPU는 코드 영역에 저장된 명령어를 하나씩 가져가서 처리하게 됩니다. ▷ 데이터 영역 : 메모리의 데이터(data) 영역은 프로그램의 전역 변수와 정적(static) 변수가 저장되는 영역입니다. ▶ 데이터 영역은 프로그램 시작과 함께 할당되며, 프로그램이 종료되면 소멸합니다. ▷ 스택영역 : 메모리의 스택(stack) 영역은 함수의 호출과 관계되는 지역변수와 매개변수가 저장되는 영역입니다. ▶ 스택영역은 함수의 호출과 함께 할당되며, 함수의 호출이 완료되면 소멸합니다. ▶ 스택 영역은 푸시(push) 동작으로 데이터를 저장하고, 팝(pop) 동작으로 데이터를 인출합.. 더보기
[java] 이것이 자바다 ch4 조건문과 반복문 1. 코드 실행되는 흐름 제어하기 ▷ 실행 흐름 : main() 메소드의 시작 중괄호( { )에서 끝 중괄호( } )까지 위부터 아래로 실행되는 흐름 ▷ 흐름 제어문 : 실행 흐름을 개발자가 원하는 방향으로 바꿀 수 있도록 해주는 것 ▷ 루핑 : 반복문이 실행 완료된 경우 제어문 처음으로 다시 되돌아가 반복 실행되는 것 NO 조건문 반복문 1 if문, switch문 for문, while문, do-while문 ◎ 순서도(순차구조, 선택구조) 2. if문 ▷ If문 : 조건식의 결과에 따라 블록 실행 여부가 결정합니다. ▷ 조건식에는 true 또는 false 값을 산출할 수 있는 연산식이나 boolean 변수가 올 수 있습니다. ▷ 조건식이 true면 블록을 실행하고 false면 블록을 실행하지 않습니다. .. 더보기
[java] 이것이 자바다 ch2 변수 확인 문제 풀이 1. 변수에 대해 잘못 설명한 것은 무엇입니까? (1) 변수는 하나의 값만 저장할 수 있다. (2) 변수는 선언 시에 사용한 타입의 값만 저장할 수 있다. (3) 변수는 변수가 선언된 중괄호 {} 안에서만 사용 가능하다. (4) 변수는 초기값이 저장되지 않는 상태에서 읽을 수 있다. 정답 : (4) 변수는 초기값이 저장되지 않으면 읽을 수 없습니다. 2. 변수 이름으로 사용할 수 없는 것을 모두 선택하세요. (1) modelName (2) class (3) 6hour (4) $value (5) _age (6) #name (7) int 정답 : (2), (3), (6), (7) 특수문자는 '$', '_' 만 사용 가능합니다. 예약어는 변수 이름으로 사용할 수 없습니다. 3. 다음 표의 빈 칸에 자바의 기본.. 더보기
[java] 이것이 자바다 ch2 자동 타입 변환 및 변수 범위 ◎ 자동 타입 변환 ▷ 데이터 타입을 다른 타입으로 변환하는 것 ▷ 값의 허용 범위가 작은 타입이 허용 범위가 큰 타입으로 대입될 때 발생 ▷ 정수 타입이 실수 타입으로 대입되면 무조건 자동 타입 변환 됩니다. ▷ 예외 : char 타입보다 허용 범위가 작은 byte 타입은 char 타입으로 자동 변환될 수 없습니다. byte < short, char < int < long < float < double 정수 / 실수 ◎ 자동 타입 변환 예제 public class TypeChangExample2 { public static void main(String[] args) { byte byteValue = 10; int intValue = byteValue; //자동 타입 변환 long longValue =.. 더보기
[java] 이것이 자바다 ch2 변수와 타입 자바에 관련된 내용은 이전에 한 번 정리했지만 수업 진도를 따라서 다시 복습겸 정리해보겠습니다! 1. 변수 선언 ◎ 변수란? 하나의 값을 저장할 수 있는 메모리 번지에 붙여진 이름 ▷ 자바는 하나의 변수에 다양한 타입(정수형, 실수형 등)의 값을 저장할 수 없습니다. ◎ 변수를 사용하려면 변수 선언이 필요합니다. 어떤 타입의 데이터를 저장할지, 변수 이름이 무엇인지 결정하는 것 ▷ 변수에 최초로 값이 대입될 때 메모리에 할당되고 해당 메모리 값이 저장됩니다. NO 타입 이름 설명 1 int age; 정수 값을 저장하는 변수 선언 2 double value; 실수 값을 저장하는 변수 선언 ◎ 정수형 변수 종류 ▷ 변수 선언시 타입에 따라 저장할 수 있는 값의 종류와 허용 범위가 달라집니다. ▷ 정수 타입은.. 더보기
[java] 자바의 정석 ch6 연습문제 풀이 6-1) 다음과 같은 멤버변수를 갖는 SutdaCard클래스를 정의하시오. 타입 변수명 설명 int num 카드의 숫자. (1~10 사이의 정수) boolean isKwang 광(光)이면 true, 아니면 false // 풀이: class SutdaCard{ int num; boolean isKwang; } 6-2) 문제 6-1에서 정의한 SutdaCard클래스에 두 개의 생성자와 info()를 추가해서 실행결과와 같은 결과를 얻도록 하시오. class Exercise06_02 { public static void main(String args[]) { SutdaCard card1 = new SutdaCard(3, false); SutdaCard card2 = new SutdaCard(); System... 더보기
[java] 자바의 정석 ch5 연습문제 풀이 5-1) 다음은 배열을 선언하거나 초기화한 것이다. 잘못된 것을 고르고 그 이유를 설명하시오. a. int[] arr[]; b. int[] arr = {1,2,3,}; c. int[] arr = new int[5]; d. int[] arr = new int[5]{1,2,3,4,5}; e. int arr[5]; f. int[] arr[] = new int[3][]; 풀이) d, e d : 두 번째 대괄호 안에 배열의 크기를 지정할 수 없습니다. 이미 괄호 안의 데이터 개수에 따라 방 개수가 정해졌기 때문입니다. e : 배열을 선언할 때는 배열의 크기를 지정할 수 없습니다. 5-2) 다음과 같은 배열이 있을 때, arr[3].length의 값은 얼마인가? int[][] arr = { {5, 5, 5, 5, .. 더보기
[java] 자바의 정석 ch4 연습문제 풀이 4-1) 다음의 문장들을 조건식으로 표현하라. ▷ int형 변수 x가 10보다 크고 20보다 작을 때 true인 조건식 int x = 15; if(x > 10 && x < 20){ System.out.println(true);} ▷ char형 변수 ch가 공백이나 탭이 아닐 때 true인 조건식 char ch = 'a'; if(ch != ' ' && ch != '\t' ) { System.out.println(true); } ▷ char형 변수 ch가 ‘x' 또는 ’X'일 때 true인 조건식 char ch = 'x'; if(ch == 'x' || ch == 'X' ) { System.out.println(true); } ▷ char형 변수 ch가 숫자(‘0’~‘9’)일 때 true인 조건식 ch = '.. 더보기

728x90