1. 변수 단 하나의 값을 저장할 수 있는 메모리 공간을 의미 변수 공간에 기록된 값은 고정되어 있지 않고, 다른 값이 기록되면 자동으로 덮어 씌워질 수 있음 메모리 공간은 정보처리의 기초 단위인 1Byte로 구성 메모리 공간은 각각이 구분될 수
1. 연산자 1. 연산자와 피연산자 구별 연산자 : 연산을 수행하는 기호 ex) *, + 피연산자 : 연산자의 연산 수행 대상 ex) 9, 3, x 모든 연산자는 연산결과를 반환 2. 연산자의 종류 3. 연산자 우선순위 산술 > 비교 > 논리 > 대입 단항
1. IF > **if (조건식) { ㅤㅤㅤㅤ조건식의 결과가 참일 때 실행하고자 하는 문장; }** ex) 1. if - else > **if (조건식) { ㅤㅤㅤ조건식의 결과가 참일 때 실행하고자 하는 문장; } else { ㅤㅤㅤ조건식의 결과가 거짓일 때 실행
1. 배열 배열은 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것 2. 배열의 선언과 생성 1. 배열의 선언 배열을 다루기 위한 참조변수의 선언 2. 선언 방법 타입[] 변수이름; int[] age; String[] name; 타입 변수이름[

ㅤ

ㅤ

ㅤ
조건문 1. 조건문 구조 조건 수식 부분이 참(true) 혹은 거짓(false)에 따라 명령문이 실행될지 결정된다. 2. if문 예시 > 초록불이면 건너세요! 문자열을 출력하도록 만든다.
일정한 형태의 작업을 반복적으로 수행해야 할 때 반복문이 필요하다.for문의 구조for 반복문에서는 반복작업을 시작하기 전에 종결 조건을 확인한다.종결 조건이 참일 경우 반복을 수행하고 거짓이면 반복을 끝낸다.break 문은 반복을 벗어나야할 때 사용한다.ex) 3번째
비슷한 주제의 데이터들을 하나의 그룹으로 묶어서 표현하는 방법모든 자료형의 종류로 배열을 만들 수 있다.배열에 들어갈 수 있는 데어트의 개수를 의미한다.배열을 만들 때 한 번 크기를 정하면 변경할 수 없다.(정적배열)배열이름.lengthnew 키워드를 사용해 배열을 선
✅ 클래스 없이 기본적인 연산을 수행할 수 있는 계산기 만들기
✅ 클래스를 적용해 기본적인 연산을 수행할 수 있는 계산기 만들기
메서드(method) 여러 개의 작은 명령문을 한곳에 모아 사용하는 단위이다. ㅤ 메서드가 필요한 이유 메서드가 없다면? 모든 일련의 작업들을 한 줄 한 줄로 표현해줘야 한다. 코드를 수정해야할 때 해당 코드를 일일이 찾아 수정해야하는 문제
클래스 객체를 만들 때 필요한 설계도이다. 클래스의 첫 글자는 대문자이다. 객체 주변에서 볼 수 있는 컴퓨터, 계산기, 자동차 같은 사물들이 객체이다. 어떤 개념이나 논리 같은 것들도 객체가 될 수 있으며 덧셈, 뺄셈 등 눈에 보이지 않는 것들도 무형의
JVM 메모리 구조 Method Area 프로그램 시작 시 정보가 저장된다. 클래스 정보(.class 파일)가 올라가는 곳이다. 클래스의 메서드 정보, static 변수 등이 저장된다. 모든 객체가 공유하는 공용 공간 Stack Area
래퍼클래스(Wrapper Class) 기본 자료형을 객체로 감싸는 클래스이다. 참조형 변수에 객체가 담기면 해당 변수를 참조형변수라고 한다. 객체 데이터는 Heap 영역에 저장되어 있기 때문에 참조형 변수는 데이터가 저장된 메모리 주소를 가리킨다. ->
Static static 키워드는 모든 객체가 함께 사용하는 변수나 메서드를 만들 때 사용된다. 객체를 만들지 않아도 클래스 이름만으로 바로 사용할 수 있다. static 변수와 메서드는 한 번만 생성되고 메서드영역에 저장된다. Static 활용 static
클래스가 따라야할 최소한의 공통 규칙을 정의하는 역할을 한다.개발자마다 서로 다른 방식으로 메서드를 만든다면 일관성이 깨질 수 있다.\-> 인터페이스를 사용하면 일관성을 유지하면서 클래스가 고유한 특색을 확장할 수 있도록 도와준다.클래스에서 implements 키워드로
캡슐화 객체의 정보를 외부에서 직접 접근하지 못하게 보호하는 개념이다. 클래스 혹은 객체의 캡슐화는 접근제어자를 통해서 구현할 수 있다. 캡슐화가 필요한 이유 캡슐화를 통해 정보를 보호하고 필요한 경우에만 안전하게 접근할 수 있도록 한다. 접근제어자(Acces
상속 클래스간의 관계를 부모(상위), 자식(하위)로 바라보는 개념이다. 이 구조를 통해 상속에서 재사용성, 확장이 가능하다. extends 키워드를 사용해서 상속관계를 구현한다. 상속을 통해 코드 중복을 줄이고 유지보수성을 높일 수 있다. 재사용성 ✅ 상속의
불필요한 정보를 제거하고 본질적인 특징만 남기는 것을 의미한다.객체지향 프로그래밍에서는 추상화의 계층적 특징을 활용해서 유지보수성이 좋은 프로그램을 만들 수 있다.ex) 고양이 -> 동물 -> 생명체하나의 타입으로 여러 객체를 다룰 수 있는 것이다.추상 계층이라는 특징

프로그램 실행 중 예상하지 못한 상황이 발생하는 것을 의미한다. \-> 대표적인 산술 예외 : 10 / 0(0으로 나누기)의도적으로 예외를 발생시킬 때는 throw 키워드를 통해 발생시킨다.예외를 처리하지 않으면 프로그램이 중단될 수 있습니다.그래서 예외처리(try-c
Optional 객체는 null을 안전하게 다루게 해주는 객체이다.null프로그래밍에서 값이 없음 또는 참조하지 않음을 나타내는 키워드null을 직접 다루는 대신 Optional을 사용하면 NullPointerException을 방지할 수 있다.camp.getStude
✅ 기본적인 키오스크 프로그래밍
✅ 객체 지향 설계를 적용해 햄버거 메뉴를 클래스로 관리
✅ 객체 지향 설계를 적용해 순서 제어를 클래스로 관리
✅ 객체 지향 설계를 적용해 음식 메뉴와 주문 내역을 클래스 기반으로 관리하고 캡슐화 적용
✅ Enum, Lambda & Stream을 활용한 주문 및 장바구니 관리
✅ 장바구니 및 구매하기 기능 추가
Collections (Java Platform SE 8)자바 컬렉션 프레임워크는 이러한 자료구조들을 쉽게 사용할 수 있도록 인터페이스와 구현체(ArrayList, HashSet, HashMap 등)를 제공하는 집합이다.컬렉션을 통해 데이터 저장, 조회, 삭제, 정렬
제네릭은 클래스, 메서드 등에 사용되는 <T>타입 매개변수를 의미한다.타입을 미리 지정하지 않고 사용 시점에 유연하게 결정할 수 있는 문법이다.제네릭을 활용하면 코드 재사용성과 타입 안정성을 보장받을 수 있다.하지만 과도하게 사용하면 오히려 복잡해질 수 있으므로
이름이 없는 클래스를 익명 클래스라고 한다.별도의 클래스 파일을 만들지 않고 코드 내에서 일회성으로 저의해 사용하기 때문에 이름이 없다고 부른다.인터페이스, 클래스(일반, 추상)의 구현과 상속을 활용해 익명 클래스를 구현할 수 있다. \-> 람다에서는 인터페이스를 사용
데이터를 효율적으로 처리할 수 있는 흐름이다.선언형 스타일로 가독성이 굉장히 뛰어나다.데이터 준비 -> 중간 연산 -> 최종 연산 순으로 처리된다.컬렉션과 함께 자주 활용된다.각 요소를 10배로 변환 후 출력하는 예시로 알아봅시다.arrayList 의 각 요소를 10배
프로그램 내에서 독립적으로 실행되는 하나의 작업 단위이다.싱글 쓰레드 는 한 번에 하나의 작업만 처리하지만 멀티쓰레드는 여러 작업을 동시에 처리할 수 있다.멀티 쓰레드를 활용하면 여러 작업을 병렬로 수행할 수 있어 처리 성능을 향상시킬 수 있다.한 명의 일꾼이 작업을
✅ x만큼 간격이 있는 n개의 숫자
🧩 문제 설명 > 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. ⚠️ 제한 조건 > n은 10,000,000,000이하인 자연수입니다. 📄 입출력 예 | x | ret