본문 바로가기

Java31

Java Maven 의존성 추가하기 https://maeilcoding.tistory.com/108 Spring Boot : Spring Initializr로 프로젝트 생성하기Spring Boot란스프링 프레임워크의 복잡한 설정 과정을 간소화하고, 빠르게 애플리케이션을 개발할 수 있도록 도와주는 도구최소한의 설정만으로도 바로 실행 가능한 독립형(Spring Boot가 자체적으maeilcoding.tistory.com Spring Initializr 에서  의존성을 미리 추가하여 프로젝트를 시작 할 수 도 있지만필요한 의존성을 나중에 추가 할 수도 있습니다.  pom.xml 파일을 열고 태그 안에 새로운 의존성을 추가   https://mvnrepository.com/Maven Repository 사이트에서 원하는 의존성을 검색, 희망 버.. 2024. 12. 23.
Java Exception-try catch로 예외 상황 처리하기 Exception (예외)은 일반적으로 "에러"라고 불리는 프로그램 실행 중 발생하는 의도치 않은 문제를 의미자바에서는 오류를 Error와 Exception으로 구분한다. Error: 시스템이 종료되어야 할 정도로 심각한 문제를 나타냅니다. 예를 들어, 메모리 부족이나 스택 오버플로우와 같은 상황이 포함됩니다. 이러한 오류는 복구할 수 없으며, 프로그램이 비정상적으로 종료될 수 있습니다. Exception: 프로그램 실행 중 발생할 수 있는 예기치 않은 이상 상태를 나타냅니다. 예외는 발생하더라도 적절한 예외 처리를 통해 복구할 수 있습니다. 예를 들어, NullPointerException이나 ArrayIndexOutOfBoundsException 같은 런타임 예외가 있습니다. 자바에서는 try-cat.. 2024. 12. 17.
Java HashMap 예제 ArrayList를 다루는 OnlineStore 클래스는 controller 패키지에product 객체를 다루는 Product 클래스는 entity 패키지에 두고 코딩해보자.import controller.OnlineStore;import entity.Product;public class HashMapMain { public static void main(String[] args) { OnlineStore store = new OnlineStore(); // TODO: 최소 3개의 상품을 생성하고 store에 추가하세요. Product product1 = new Product("P001", "스마트폰", 899000.0); Product produc.. 2024. 12. 17.
Java 이름과 점수의 쌍(pair)으로 저장 하는 HashMap 학생 이름, 점수를 저장하려 한다.         //이순신, 95         //홍길동, 80         //김나나, 70 이름과 점수의 쌍(pair)으로 저장 하는 HashMap홍길동 몇점이야 라고 물으신다면? 80점이라고 바로 대답해드림 이 pair를 key-홍길동과 value-80라고 합니다. ArrayList와 HashMap의 차이ArrayList:구조: 동적 배열을 기반으로 하며, 요소를 순차적으로 저장합니다.중복 허용: 동일한 값을 여러 번 저장할 수 있습니다.순서 유지: 요소가 삽입된 순서를 유지합니다.HashMap:구조: 키-값 쌍으로 데이터를 저장합니다.하나의 키에 하나의 값만 저장중복 허용: 동일한 키를 사용할 수 없으며, 키는 유일해야 합니다.순서 미보장: 삽입 순서를 기억하.. 2024. 12. 17.
Java ArrayList 예제 ArrayList를 다루는 StudentManager 클래스는 controller 패키지에student 객체를 다루는 Student 클래스는 entity 패키지에 두고 코딩해보자. import controller.StudentManager;import entity.Student;public class ArrayMain { public static void main(String[] args) { StudentManager manager = new StudentManager(); // TODO: 최소 3명의 학생을 생성하고 manager에 추가하세요. // id 1, 홍길동, 30 Student s1=new Student(1,"홍길동", 30); .. 2024. 12. 17.
Java Array기본문법의 진화! 동적배열을 이용한 ArrayList Data Structure데이터를 조직하고 관리하는 방법을 의미여러 개의 데이터를 하나의 변수에 저장할 수 있는 구조를 제공- CRUD 가 가능해야한다. (신규데이터를 생성, 읽기, 갱신, 삭제 할 수 있어야한다.) but 기본 배열 Array문법은 생성 시 배열크기를 먼저 정해둬야하고 추후 크기변경이 불가하다 > 추가 생성에 제약이 있음! 따라서 자바에서는 개수제한없이 데이터를 마음대로 추가할 수 있는 ArrayList, HashMap를 사용한다.그 중 ArrayList에 대해 먼저 배워보자!  ArrayList:구조: 동적 배열(크기가 고정되지 않고, 필요에 따라 자동으로 크기를 조절할 수 있는 배열)을 기반으로 하며, 요소를 순차적으로 저장합니다.중복 허용: 동일한 값을 여러 번 저장할 수 있습니다.. 2024. 12. 17.
Java 다양한 문자열의 함수 문자열 생성하는  2가지 방법//문자열 생성하는 방법 2가지!//1 일반적으로 쓰는 문자열 리터널String str1="Hello";//2 String 생성자를 이용 (코드도 길고, 메모리관리에 적합하지 않아 1을 많이 쓴다)String str2=new String("Hello"); 번외! 문자열 리터널을 쓰는게 좋은이유String str1="Hello";String str2=new String("Hello");String str3="Hello";String str4=new String("Hello");똑같은 문자열을 저장한 4개의 객체어떤 차이가있을까? 문자열리터널은 String Constant Pool이라는 특별한 메모리 영역에 저장된다.  이 영역은 동일한 문자열 리터럴이 여러 번 사용될 때, 메모.. 2024. 12. 16.
Java interface와 extends 실습 예제 package entity;public interface Payable { // 상품 가격 반환 메서드 double getPrice(); // 결제 처리 메서드 void processPayment();} package entity;public class Product { // 기본 상품 클래스 protected String name; protected double price; // 디폴트 생성자 public Product() { } // 생성자: 상품 이름과 가격 초기화 public Product(String name, double price) { this.name = name; this.price = price; .. 2024. 12. 16.
Java의 꽃 상속 - Interface 상속 시리즈1) Extend, Overriding2) Abstract 3) Interface   대망의 상속 마지막 키워드 interface에 대해 알아봅시다. 자바클래스 생성시 인터페이스를 선택하여 만들수도 있고, class 대신 insterface라고 입력하여 사용할 수도 있다. package entity;public interface Card { 인터페이스는 클래스 키워드를 사용하지 않는다.= 인터페이스는 클래스가 아니다!   클래스와 인터페이스는 무슨 차이가 있지?인터페이스는 일반적인 변수가 올 수 없다. (상수 static는 가능!) 변수 불가  상수 가능! public static final int CLOVER = 1;  CLOVER의 값이 1로 정해졌기때문에 10으로 변경불가 final: J.. 2024. 12. 16.