
Garbage Collecting 객체를 생성하는 키워드는 new But, 생성된 객체를 메모리에서 해제시키는 키워드는 존재하지 X 자바 가상머신(JVM)이 알아서 메모리를 관리해 주는 것 객체가 더 이상 프로그램에서 사용되지 않으면 가비지 컬렉터가 스스로 판단해서 메모리를 해제하고 수거 package (패키지) 클래스 종류 - 2개 사용자 정의 클래스: 개발자가 직접 만들어 사용하는 클래스 그 외: JDK(Java Development Kit)안에 포함, 다른 개발자들이 미리 만들어 놓은 클래스들 서로 관계가 있는 클래스들을 패키지로 묶어서 관리 - 종류가 많고 비슷한 기능들을 분류시켜야 할 필요성이 있음 다른 패키지의 외부 클래스를 사용하고 싶은 경우 → import 키워드로 해당 클래 스의 전체 경..

객체와 클래스 클래스 aka.공장 대량 생산을 위해 객체를 만들기 위한 틀 변수: 객체의 속성 메서드: 객체의 기능 객체생성 명령 ClassName instanceName(생산이름,임의) = new Constructor( ); // 클래스 안의 코드 작성 public calss Pen { } // PenMain public class PenInstanceExample { public static void main(String[] args) { Pen redPen = new Pen(); //redPen은 생산이름 System.out.println(redPen); } } 예시 3개의 계산기 클래스 안에는... 메서드, 변수, 생성자 메서드 (method) 기능(연산, 기능 등)을 나타냄 변수 (Variabl..

객체 배열 (Array of Objects) 배열을 매개변수로 받는 메서드 배열이 들어가는거지 숫자나 문자, 문자형이 들어가는게 아님 호출시 배열을 호출하는 것!!! package dayo4; import java.util.Arrays; public class MethodEx04 { public static void main(String[] args) { int[] arr = {1, 2, 3, 4, 5}; // int형으로 된 배열 있음 method01(arr); // 변수명 or 생성구문 } // end main //정수 배열을 매개변수로 받는 메서드 static void method01(int[] a) { //a를 이용해서 배열밖의 사용 가능 System.out.println( Arrays.toStr..

메서드 (method) 반복적으로 수행되는 여러 문장을 메서드로 작성 반복되는 코드 블록에 이름을 붙여 놓은 것 장정: 코드의 중복을 줄임 / 관리 용이 / 재사용 가능 / 간결해서 이해하기 쉬워짐 하나의 메서드는 한 가지 기능만 수행하도록 작성 메서드의 이름 뒤에는 반드시 소괄호 ( ) return은 반드시 1개 메서드는 메서드 내부에 생성할 수 X - 절차지향인 C언어, 파이썬은 위 / 자바는 위, 아래 상관없음 (class 내부에만 있으면 됨) 좌측의 중복되는 코드 2개 ↓ 우측의 메서드 1개로 만듦 선언 방법 (암기 필수) (매개 변수1, 매개 변수2 ...) { // 메서드 호출시 수행될 코드; } // 예시 int add (int a, int b) { int..

String 클래스 - 원래 char[ ] = { A, A, A } -> 인덱스 0, 1, length-1 다른 인덱스들은 왼쪽으로 옮겨서 문자열처럼 보이게 함 String은 생성자를 사용해서 객체를 만들 필요 없이 기초 데이터를 사용할 때처럼 바로 초기화해서 사용 가능 String 클래스의 주요 메서드 charAt() 특정 인덱스의 글자를 리턴. 한 글자 자르기 char형 반환인데 + 사용하여 String에 붙일 수 있음 indexOf() 특정 문자열의 시작 인덱스 값을 반환 찾는 문자의 위치를 반환 (앞에서부터) 찾는 문자가 없다면 -1 을 리턴 lastIndexOf() 찾는 문자의 위치를 반환 (뒤에서부터) length() 문자열의 길이 replace() 특정 문자열을 변경 str.replace (..

array array 삽입, 수정, 삭제 연습 array insert (삽입) + 문자열로 출력 str ArrayInsert - 입력받은 문자열 순서대로 저장 1. 문자열 배열 선언, 생성 String [ ]arr = new String[100]; 2. 무한반복 안에서 문자열 입력 받음 => scanner 사용 변수 menu 입력받음 3. if 조건문 = 멈춰라 문자열 비교 - 변수.equals( "내용" ) break; 4. menu 입력 받으면 배열에 저장 = 배열 초기화 arr[ count ] = menu; 인덱스 변수 count 생성 -> 저장 -> 1씩 증가 문자열 str 출력 방법 [ 일, 이, 삼, 사 오 ] 1. 문자열 str 생성 = [ 2. for 반복문 str 옆에 배열값 + , 쉼표..

탈출문 실행 순서를 지정된 곳으로 이동시키는 문장 반복문 또는 블록구조에서 빠져 나올 때 사용 break, continue, return문이 있음 break 반복문 내의 어떤 곳이든 위치 가장 가까운 반복문 1개(if문 제외) 를 빠져나옴, 조건과 같이 쓰임 중첩 반복문의 경우 내부 반복문에서 break가 사용되었을 경우: break문이 속한 내부 반복문만 빠져나옴 바깥쪽 반복문까지 종료시키려면 바깥쪽 반복문에 이름(label) 을 붙이고, "break 이름;"을 사용 BreakEx01 - break의 위치 1. while 반복문 int = 1 ~ 10까지 반복임 2. i가 1이면 1출력, 2이면 2출력 반복 3. i가 5이면 빠져나감 -> 출력 X break의 위치가 출력 전에 빠져나오기 때문에 1, ..

for & for ~ for Quiz 출력은 가로, 혹은 세로로만 가능함 Quiz15 - 구구단 출력 (가로) 1. 가로로 출력하면 단은 바뀌고, 1은 고정 -> 밖 for: 1 = i, 안 for: 단 = j 밖: for(int i = 1; i 1x1=1 2x1=2 3x1=3 1x2=2 2x2=4 3x2=6 안for x 밖for = 안*밖 4. 1~3단, 4~6단, 7~9단 나눠서 출력 Quiz15 - 구구단 출력 (세로) - 복습 1. 세로로 봤을때는 밖 for인 단이 1, 4, 7로 늘어남 for(int i = 1; i 1x1=1 print( i + "x" + j + "=" + i*j + "\t") => 2x1=2 print( i + "x" + j + "=" + i*j + "\t") => 3x1=3..

while + array arr = {1, 2, 3, 4, 5} index = 0,1, 2, 3, 4 0 = 그 다음 몫 출력, 남은 돈 저장 -> 반복 Quiz11 - 배열의 크기만큼 입력받은 수 저장 1. 배열의 길이 결정 => scanner 사용 2. 길이에 맞는 배열 생성 int [ ] arr = new int [size] 3. 반복할 조건식 만들기 ..

반복문 (while, do~while, for) while 조건식을 만족하는 동안 반복문을 실행 참: 실행문을 반복, 거짓: while문을 빠져나옴 if문과 마찬가지로 조건식은 반드시 boolean타입 조건식 안에 true를 넣으면 무한루프가 발생 -> 탈출구문 필수 사용방법 int a = 1 while ( 조건문(참,거짓 ) { a++ or ++a } 순서 (+필수로 있어야 하는 식) 1. 제어변수 ( 시작 회전수를 결정하세요 변수 ) 2. 평범식 ( ex) a scanner 사용, num값 생성 2. 출력 => 구구단: num + 단 while 3. 반복문은 int a = 1부터 9까지 (1~9단) 4. 구구단 결과값 = int x = num * a 5. 구구단 출력 printf( "형식", 값, 값..

랜덤 생성 랜덤값은 실수이므로 정수로 나타낼 때 범위를 지정해야 함. 0 이상 1.0 미만 (int)( Math.random() ); => 0 0 0+1 a라는 변수에 빈 상자가 5개 생성, 인덱스=순서를 갖음 (0부터 시작~, 마지막 상자는 항상 크기-1) 3. 초기화 (값을 넣어줌) 배열 이름[인덱스 값] = 값 ex) a[0] = 10, a[4] = 13 a의 0번째에 10 저장, a의 4번째에 13 저장 배열 명령문 ( 암기 ) 배열의 모습을 문자열과 확인하는 명령문 = 잘 만들어졌나? System.out.println( Arrays.toString(arr) ); 길이를 확인 = 배열에 저장할 수 있는 전체 항목수 System.out.println( arr.length ); 생성 + 선언 byte..

변수 사용범위 { 변수가 선언된 { }(중괄호) 안에서만 사용가능 } - 범위 확인 중요 public class Name { Public static void main(String[ ] args) { } } 변수, 데이터 타입 정수형 bit : 0 또는 1 저장, 8bit = 1byte -> 1,024byte = 1kbyte 정수의 2진수 표현 방법은 "부호와 2의 보수" 표현방법을 사용 10진수뿐만 아니라 2진수, 8진수, 16진수 등의 형태도 표현 가능 (0b, 0, 0x 붙이면 됨) 2진수 - 0b 8진수 - 0 16진수 - 0x byte (1) : -128 ~ 127 = -2^7 ~ 2^7 -1, byte의 일곱자리 중에 맨 앞자리가 0이면 +, 1이면 -를 나타냄 (추가 내용 필요) short ..