Programming/Java 21

자바의 배열(Array)

📦 자바의 배열(Array)🧊 배열이란?배열(Array)은같은 자료형의 값 여러 개를 저장할 수 있는 연속된 공간이에요.🥚 계란판 → 고정된 칸 수, 각 칸에 1개씩! 마치 계란판처럼 정해진 칸에 하나씩 데이터를 담을 수 있는 구조가 바로 배열이에요! 그리고 중요한 건, 칸의 개수는 처음 만들 때만 정할 수 있고, 나중엔 바꿀 수 없어요!🔢 배열을 왜 쓰나요?🙅‍♀️ 배열 없이 변수를 쓰면?int score1 = 90;int score2 = 85;int score3 = 100;점수가 100명이라면… 변수 100개 선언해야 할까요?! 😱✅ 배열을 쓰면!int[] scores = new int[100];한 줄로 점수 100개 저장 가능! 🙌✨ 배열 선언과 생성자료형[] 배열이름 = new 자료..

Programming/Java 2025.04.22

접근 제어자

🔐 자바 접근 제어자자바를 공부하다 보면 public, private, protected... 이런 키워드들이 계속 나오는데정확히 어디까지 접근이 되는 건지 헷갈릴 때가 있습니다. 잊지 않게 오늘 한번 정리해 보겠습니다 ✨🤷 접근 제어자란?접근 제어자는 클래스나 클래스 멤버(필드, 메서드 등)에 "누가 접근할 수 있는가?" 를 정해주는 키워드입니다.🤔 쉽게 생각해보자면,건물 출입증 같은 개념입니다.등급에 따라 들어갈 수 있는 구역이 달라지는 것처럼, 접근 제어자도 등급에 따라 접근 가능한 범위가 달라집니다.🛡️ 접근 제어자의 종류접근 제어자접근 가능 범위private같은 클래스 내부 에서만 접근 가능(default)같은 패키지 에서 접근 가능 (별도 키워드 없이 선언된 경우)protected같은 ..

Programming/Java 2025.04.17

자바 중첩 클래스란?

🎁 자바 중첩 클래스 완전 정복"클래스 안에 또 클래스가 있어요?"네, 맞습니다! 자바에서는 클래스 안에 또 다른 클래스를 선언할 수 있습니다.이런 걸 중첩 클래스(Nested Class) 라고 불러요!🧩 중첩 클래스의 분류중첩 클래스는 크게 두 가지로 나뉩니다.구분설명Static 중첩 클래스static 키워드로 선언된 클래스. 외부 클래스의 인스턴스 없이 사용 가능Inner Class외부 클래스의 인스턴스와 함께 사용되는 클래스그리고 Inner Class 안에는 아래와 같은 세 가지 종류가 있습니다.Inner Class 종류설명일반 내부 클래스외부 클래스 안에 직접 정의된 클래스로컬 클래스 (Local Class)메서드 내부에 정의된 클래스익명 클래스 (Anonymous Class)이름 없이 즉석에..

Programming/Java 2025.04.14

슈퍼클래스 & 서브클래스 (상속)

🧬 슈퍼클래스 & 서브클래스 (상속)자바 OOP를 공부하다 보면 꼭 마주치는 개념입니다.헷갈릴 때마다 꺼내볼 수 있게 한번 정리해 보겠습니다 ✨🤷 슈퍼클래스 & 서브클래스란?객체지향 프로그래밍에서는 클래스 간에 상속(Inheritance) 관계를 맺을 수 있습니다.용어의미👴 슈퍼클래스 (Superclass)부모 클래스 — 기능을 물려주는 클래스👶 서브클래스 (Subclass)자식 클래스 — 기능을 물려받는 클래스슈퍼클래스는 base class, parent class,서브클래스는 derived class, child class 라고도 불러요.🤔 쉽게 생각해보자면,부모의 특징을 자식이 물려받는 것처럼, 슈퍼클래스의 필드와 메서드를 서브클래스가 그대로 사용할 수 있습니다.여기에 서브클래스만의 기능을..

Programming/Java 2025.04.13

자바의 `this` & `super`

🌟 this 와 super 완전 정복이름도 비슷하고 헷갈리는 이 둘!하지만 알고 보면 각자의 역할이 분명한 핵심 키워드랍니다 😎지금부터 아주 쉽게, 차근차근 설명드릴게요 💡☝🏻 this 란?현재 객체 자신을 참조하는 키워드예요. 클래스 내부에서 쓰일 수 있는 숨겨진 참조 변수라고 생각하시면 됩니다.✅ 언제 사용할까요?지역변수와 멤버변수의 이름이 같을 때 구분하려고!자기 자신을 가리키는 참조가 필요할 때✏️ 예제public class Book { String title; public void setTitle(String title) { this.title = title; }}구분설명this.title멤버 변수 (클래스에 선언된 변수)title (오른쪽)매개변수 (메서드..

Programming/Java 2025.04.12

자바 생성자(Constructor)

📚 자바 생성자 (Constructor)자바를 공부하다 보면 클래스마다 꼭 등장하는 녀석이 있습니다!객체를 만들 때 자동으로 호출되는 메서드, 어디서 본 것 같지 않으신가요?이번 글에서 생성자에 대한 것을 전체적으로 정리해 보았습니다!!🧠 생성자란?자바에서 객체를 생성할 때 자동으로 호출되는 메서드입니다.객체가 어떤 값을 가지고 시작할지 정해주는 초기화 도구예요.일반 메서드처럼 생겼지만, 리턴 타입이 없고 이름은 클래스명과 동일해야 해요.객체가 만들어질 때 실행되는 특별한 메서드! 라고 기억하시면 됩니다.🛠 생성자의 2가지 규칙클래스 이름과 완전히 같아야 한다리턴 타입이 없어야 한다 (void도 금지!)⚠️ 컴파일러는 리턴 타입이 보이면 생성자가 아닌 일반 메서드로 인식합니다.🔨 생성자 종류🔹 ..

Programming/Java 2025.04.11

Java의 모든 연산자

✨ 자바 연산자 완전 정리 (Java Operators)자바(Java)에서 변수 선언과 초기화를 배웠다면, 이제는 변수를 어떻게 다루는지 아는 것이 중요하죠. 그 핵심이 바로 연산자(Operator) 입니다!🔧 연산자란?연산자란 특정 작업을 수행하는 기호 또는 기법으로, 하나 이상의 피연산자(operand)를 계산하여 결과를 반환합니다.🧠 연산자 우선순위 한눈에 보기우선순위연산자 종류예시1Postfixa++, a--2Unary++a, --a, +a, -a, ~, !3Multiplicative*, /, %4Additive+, -5Shift>, >>>6Relational, =, instanceof7Equality==, !=8Bitwise AND&9Bitwise XOR^10Bitwise OR|11Logic..

Programming/Java 2025.04.10

변수 (Variables)

🧠 Java 변수"변수는 데이터를 담는 그릇이다"자바에서는 변수를 어디에 선언하느냐에 따라 역할, 생명주기, 메모리 위치가 달라집니다.그 차이를 제대로 이해하는 게 중요하다고 생각해요!📌 변수(Variable)란?변수는 하나의 데이터를 저장할 수 있는 공간입니다.✅ 변수 이름 규칙문자 / _ / $로 시작 가능 (숫자 시작 ❌)길이 제한 없음대소문자 구분유니코드 문자 사용 가능 (한글도 가능)public class Variables { int a = 1; int _a = 1; int $a = 1; final int A = 1; int 한글가능 = 1;}🔍 변수의 종류자바 변수는 선언 위치에 따라 크게 3가지로 나뉩니다 😀🔹 인스턴스 변수 (Instance Variabl..

Programming/Java 2025.03.31

Java의 Expression vs Statement

🌟 Java의 Expression과 Statement값을 만드는 코드와 동작을 수행하는 코드, 어떻게 다를까요?자바 코드를 읽다 보면 어디까지가 값이고 어디부터가 실행인지 헷갈릴 때가 있습니다 😅Expression과 Statement를 구분하고 나니 코드가 훨씬 잘 읽혔습니다!Expression은 계산기에 숫자와 연산자를 입력하는 것,Statement는 버튼을 눌러 실행하는 것이라고 생각하면 됩니다.🔹 Expression (표현식)하나의 값으로 평가되는 코드 조각입니다.마치 수식처럼, 계산하면 결과값이 나오는 코드입니다.3 + 5는 계산하면 8이 되죠. 이처럼 평가하면 값이 나오는 것이 Expression입니다.예시int a = 5, b = 10;int c = a + b; // 'a + b'는 E..

Programming/Java 2025.03.28

Java 대입 연산자 '=' 기준 RHS, LHS

🎯 Java 대입 연산자 '=' 기준 RHS, LHS✅ 왼쪽 (LHS(Left-hand-side): 값을 저장하는 쪽)올 수 있는 것예시설명변수명int x = 10;기본 변수에 값 저장배열 요소arr[0] = 5;배열 특정 위치에 저장객체의 필드user.name = "Hera";객체의 속성에 값 저장참조 변수Person p = new Person();객체 주소 저장 (참조형 변수)❌ 올 수 없는 것 (컴파일 에러)잘못된 예시설명10 = x;리터럴은 저장할 수 없는 값 (고정값)(a + b) = 5;연산 결과는 메모리 공간이 아님getValue() = 3;메서드는 값을 반환할 뿐 저장 공간 아님✅ 오른쪽 (RHS(Right-hand-side): 값을 계산하거나 넘겨주는 쪽)올 수 있는 것예시설명리터럴in..

Programming/Java 2025.03.26