본문 바로가기
반응형

전체 글82

MySQL 설치 가이드 Windows용 다운로드 ✅ MySQL 설치 가이드 (Windows용, Community Edition 기준)📍 시작 페이지메뉴명: MySQL :: MySQL Downloads링크: https://dev.mysql.com/download1️⃣ MySQL Community (GPL) Downloads »무료로 공개된 MySQL 커뮤니티 에디션 다운로드 메뉴화면에서 찾을 수 있는 주요 메뉴 항목:MySQL Community ServerMySQL ClusterMySQL RouterMySQL ShellMySQL Workbench👉 MySQL Installer for Windows ← 선택2️⃣ MySQL Installer for Windows윈도우에서 MySQL 설치를 돕는 통합 설치 도구링크: https://dev.mysql.co.. 2025. 6. 11.
equals()와 ==의 차이는 값 비교 vs 참조 비교 📌 1️⃣ data.get(i) == x비교하는 것:두 객체의 메모리 주소 (참조값, 레퍼런스) 를 비교함.즉, 두 객체가 "물리적으로 같은 객체인가?" 를 비교함.예시:Point2 a = new Point2(1, 2);Point2 b = new Point2(1, 2);System.out.println(a == b); // false (주소 다름)a와 b는 값이 같아도 서로 다른 객체 → 주소 다름 → == 결과는 false.📌 2️⃣ data.get(i).equals(x)비교하는 것:두 객체가 가지고 있는 값의 내용이 같은가? 를 비교함.즉, ix, iy가 같은지 비교하도록 Point2 클래스에서 equals()를 오버라이딩 했기 때문에 동작함.예시:Point2 a = new Point2(1, 2.. 2025. 6. 9.
스택 Stack 접시 쌓기 LIFO 큐 Queue 줄 서기 FIFO 자바 자료구조 알고리즘 📌 스택 (Stack) — "접시 쌓기"비유우리가 식당에서 접시를 쌓아두는 모습을 생각해보자.새 접시는 항상 위에 올려.꺼낼 때는 위에서부터 꺼내.이걸 LIFO (Last In, First Out, 마지막에 들어간 것이 먼저 나온다) 라고 해.예시 상황웹 브라우저의 "뒤로가기"프로그램의 함수 호출 (Call Stack)기본 동작동작설명push()데이터를 위에 올린다 (넣기)pop()위에 있는 데이터를 꺼낸다 (빼기)peek()가장 위의 데이터가 뭔지 확인 📌 스택 (Stack) — 접시 쌓기 (LIFO) [ Top ] ┌───────┐ ← 마지막 넣은 것 (먼저 나온다: pop) │ 데이터3 │ ├───────┤ │ 데이터2 │ ├───────┤ │ 데이터1 │ ← 처음 넣은.. 2025. 6. 9.
Comparator 람다식 sid 기준 정렬 설명 Comparator 람다식으로 sid 기준 정렬Comparator sidComparator = (a, b) -> a.sid.compareTo(b.sid);① ComparatorComparator 인터페이스를 구현하는 객체를 만든다.Student2 타입을 비교하는 Comparator 라는 뜻이다.즉:"나는 Student2 객체 2개를 받아서 이 둘을 비교할 수 있는 비교기를 만들겠다."② 변수 선언: sidComparator만든 Comparator를 담아둘 변수 이름이다.나중에 이걸 Arrays.sort() 등에 전달해서 정렬에 사용한다.③ (a, b) -> ...람다식 시작 부분 → 두 매개변수를 받는다.요소의미a첫 번째 비교 대상 Student2 객체b두 번째 비교 대상 Student2 객체 → 이 a.. 2025. 6. 3.
JSP 입문 개발환경 세팅 JDK 설치 Eclipse 워크스페이스 설정 1️⃣ 개발환경 구성항목내용웹서버Apache Tomcat다운로드https://tomcat.apache.org/download-10.cgi다운로드 버전10.1.41 (64-bit Windows zip)설치방법압축 해제 (설치 없이 사용 가능)설치경로 예시C:\DevelopTools\apache-tomcat-10.1.412️⃣ Java JDK 설치항목내용JDK 버전OpenJDK 사용 가능설치 경로예시: C:\DevelopTools\OpenJDK-XX설치 방법복사만 하면 끝 (간단 설치)3️⃣ Eclipse 워크스페이스 설정항목내용워크스페이스 경로E:\workspace_jsp프로젝트 유형Dynamic Web Project서버 연결Apache Tomcat 연결 📌 워크스페이스 전환 후 새로 생성1️⃣ 먼저 워.. 2025. 5. 30.
ArrayList 확장 for문 인덱스 for문 예외처리 Exception Handling Throwable NullPointerException 사용자 정의 예외 자바프로그래밍 ✅ 자바 10장: 컬렉션 API와 반복문1. 확장 for문 (향상된 for문)for (타입 변수명 : 배열/컬렉션) { 실행문; }모든 요소 순차 탐색용읽기 전용 → 요소 변경은 불가2. 인덱스 for문for (int i = 0; i 인덱스 접근 필요할 때 사용요소 수정 가능3. ArrayList 실습 예시ArrayList list = new ArrayList(); list.add("서울"); list.add("북경"); ...list.get(i) : 인덱스로 요소 꺼내기list.size() : 리스트 크기 확인✅ 자바 11장: 예외(Exception) 처리1. 예외 종류예외원인 예시ArrayIndexOutOfBoundsException배열 인덱스 범위 초과ArithmeticException0으로 나눔N.. 2025. 5. 29.
자바프로그래밍 MathClass WrapperClass StringTokenizer ArraysClass PatternClass binarySearch parseInt split equals 기본API활용 📌 1. 자바 메모리 구조 이해메모리영역설명Code상수, 메서드 등 프로그램 코드 저장Stack지역변수 저장 (메서드 내 변수)Heapnew로 생성된 객체 저장Data외부 라이브러리 (ex: C/C++) 📌 2. Object 클래스 – hashCode() / toString()✅ hashCode()객체의 고유 식별 번호(정수값) 생성객체마다 다르며, 자바 내부적으로 주소 기반 해싱사용 목적:컬렉션 비교블록체인/암호화 원리와 유사정보 추적 및 동등성 판단System.out.println(obj1.hashCode());✅ toString()객체 출력 시 자동 호출되는 메서드기본값은 클래스명@해시코드원하는 정보 출력 시 오버라이딩 필수 System.out.println(obj1); // 자동으로 obj1... 2025. 5. 29.
자바프로그래밍 다형성 toString 인터페이스 내부클래스 자바 ObjectClass equalsMethod ✅ 08장 다형성과 내부 클래스📌 1. 클래스의 다형성 – 가장 중요한 개념“부모 타입의 변수로 자식 객체를 담아 사용할 수 있다”Employee emp = new Salesman(); // OK Employee emp = new Director(); // OK✔️ 핵심 포인트:다형성은 **"한 가지 타입으로 여러 객체를 표현"**할 수 있는 것**공통된 부모 클래스(또는 인터페이스)**를 이용해 다양한 자식 객체를 하나의 변수로 제어✔️ 결과:유지보수 용이, 확장성 ↑메서드 재정의(오버라이딩)를 통해 각각의 객체가 자신의 방식대로 동작📌 2. Object 클래스와 toString() / equals()toString()public String toString() { return getClass().. 2025. 5. 25.
상속과 인터페이스 자바프로그래밍 클래스 생성자 setter 상속 toString 오버라이드 super() @override 🌱 자바 상속과 인터페이스 – 기초 개념 요약✅ 1. 클래스(Class)와 생성자(Constructor)클래스는 설계도, 객체는 그로 만든 실제 물건이에요.클래스 이름은 항상 대문자로 시작합니다. public class Employee { public Employee() { super(); // 부모 클래스의 생성자를 가장 먼저 호출해야 함 System.out.println("Employee 생성자 실행"); } }super()는 부모 클래스(Person)의 생성자를 호출합니다.→ 상속받은 클래스는 부모의 초기화를 먼저 해야 함.✅ 2. setter 메서드란?**값을 설정(set)**할 때 사용합니다. 보통 private 변수에 접근할 때 사용합니다. publ.. 2025. 5. 24.
제네릭 클래스 메서드 자바프로그래밍 ✅ 1. 제네릭이란? (뜻)제네릭(Generic)은 클래스나 메서드에서 사용할 데이터 타입을 외부에서 지정할 수 있도록 만든 문법입니다.즉, **“타입을 변수처럼 사용하는 기능”**입니다.⸻✅ 2. 제네릭이 왜 필요한가요?필요 이유 설명📦 재사용성 하나의 클래스/메서드로 다양한 타입 처리 가능🔒 타입 안정성 컴파일 시점에 타입 오류 잡기 가능✂️ 형변환 제거 Object → 원하는 타입 강제 형변환 없이 사용 가능⸻✅ 3. 제네릭 사용 예시📌 3-1. 제네릭 클래스 사용 (ArrayList 등)ArrayList list = new ArrayList();list.add("안녕");// list.add(123); // ❌ 오류: 정수는 String이 아님📌 3-2. 사용자 정의 클래스에 제네릭 사용c.. 2025. 5. 24.
자바프로그래밍 객체지향 구현 클래스선언 설계도 필드 생성자 toString main메서드 getter setter ✅ 자바 객체지향 구현 📌 1. 클래스 선언 – 설계도public class Armor { // 🔹 필드(멤버 변수) String name; int power; // 🔹 생성자 (Constructor) public Armor(String name, int power) { this.name = name; this.power = power; } // 🔹 toString() 오버라이드 – 객체 정보 출력용 @Override public String toString() { return "Armor{name='" + name + "', power=" + power + "}"; }}요소설명필드클래스 안에 선언되는.. 2025. 5. 22.
자바스크립트 객체와 DOM 이벤트로 구현한 온도 단위 변환기 ✅ 자바스크립트 DOM 객체 기반 학습 정리📌 1. DOM(Document Object Model) 요소 접근document.getElementById()document.querySelector()document.querySelectorAll()→ HTML 요소를 자바스크립트 객체로 참조해서 동작 제어 가능const txt1 = document.querySelector("input"); const lab1 = document.querySelector('[for=txt1]');📌 2. 객체 중심의 함수 설계 (선택 상태 변화 통합 처리)const selChange = (s1, s2, l1, l2, t1, t2) => { s2.value = (s1.value === "℃") ? "℉" : "℃";.. 2025. 5. 22.
반응형