개발공간/Java 7

❓DAO와 DTO

❓DAO와 DTO DAO(Dat Access Object)와 DTO(Data Transfer Object)는 데이터베이스와 자바 클래스 간에 데이터를 전달하거나 저장하기 위해 사용되는 패턴 DTO(Data Transfer Object) - DTO는 데이터를 저장하거나 전달하기 위해 사용되는 객체 - 데이터를 저장하기 위해 클래스를 사용할 때, 멤버 변수를 직접적으로 사용하는 것은 권장 X - DTO는 멤버변수로 데이터를 저장하고, 생성자와 getter/setter 메서드를 제공하여 데이터에 접근하고 수정할 수 있도록 함 - DTO는 일반적으로 로직을 가지고 있지 않고, 순수한 데이터 객체로 사용됨 DAO(Data Access Object) - DAO는 데이터베이스에 접근하기 위한 객체 - DAO는 데이터..

개발공간/Java 2023.04.16

💭 Stack & Queue (스택 & 큐)

🙄 스택과 큐란 뭘까? 스택 LIFO(Last In First Out) 구조 : 맨 마지막에 추가한 데이터가 가장 먼저 꺼내지는 구조 이 구조를 사용해 역순 문자열을 만들거나 수식의 후위 표기법 변환 등의 작업에 사용할 수 있음 스택에서 데이터를 추가할 때는 push()를 사용하고, 꺼낼때는 pop()을 사용 스택의 예시로는 시스템 스택이 있음 시스템 스택은 함수 호출과 복귀 순서를 스택의 구조를 응용해 관리 큐 FIFO(First In First Out) 구조 : 큐는 스택과 반대로 가장 먼저 추가한 데이터가 가장 먼저 꺼내지는 구조 우선순위가 같은 작업 예약이나 선입 선출이 필요한 대기열 등에서 사용될 수 있음 선형 큐(Linear Queue)는 배열을 이용하여 구현되며, 새로운 데이터를 추가하면 r..

개발공간/Java 2023.04.16

[codeup] 원하는 문자가 입력될 때까지 반복 출력하기

💻 원하는 문자가 입력될 때까지 반복 출력하기 영문 소문자 'q'가 입력될 때까지 입력한 문자를 계속 출력하는 프로그램을 작성해보기 import java.util.Scanner; public class Main { public static void main(String args[]) { Scanner sc = new Scanner(System.in); while(true){ //while문 사용, 무한루프 char a = sc.next().charAt(0); // sc에서 문자열을 입력받은 후, 첫 번째 문자를 추출하여 char형 변수 a에 할당 if(a=='q'){ System.out.println(a); //변수 a가 'q'인지를 검사하여, // 'q'라면 System.out.println(a) 구문..

개발공간/Java 2023.04.08

[ codeup] 정수(1 ~ 100) 1개를 입력받아 1부터 그 수까지 짝수의 합을 구하기

💻 정수(1 ~ 100) 1개를 입력받아 1부터 그 수까지 짝수의 합을 구해보자 import java.util.Scanner; public class Main { public static void main(String args[]) { Scanner scanner = new Scanner(System.in); //Scanner 객체를 생성 int a = scanner.nextInt(); //입력받은 값을 정수형 변수 a에 저장 int sum = 0; //합을 저장하기 위한 변수 sum을 0으로 초기화 for(int i = 2; i

개발공간/Java 2023.04.08

💡싱글톤이 뭔데?

❓ 싱글톤이 대체 뭘까? 오직 하나의 객체만 생성하고, 그 객체를 모든 곳에서 공유하여 사용하는 디자인 패턴 쉽게 말하면? 하나의 클래스에서 만들어진 객체는 프로그램 전체에서 공유해서 사용할 수 있음 이 패턴을 사용하면, 여러 개의 객체를 생성하지 않고 하나의 객체를 공유해서 사용함으로써 자원 낭비를 줄이고, 객체 간의 일관성을 유지할 수 있음. 예를 들어, 데이터베이스 연결 객체나 로그 기록 객체 등은 여러 곳에서 동시에 접근하면 문제가 발생할 수 있기 때문에, 이런 경우 싱글톤을 사용! 예를 들면, 스마트폰을 사용하는데 스마트폰이라는 객체는 딱 하나만 있어야 함 왜냐? 스마트폰 객체를 만들어서 사용할 때마다 새로 만들게 되면 메모리 낭비가 심하기 때문! 이때 싱글톤 패턴을 사용하면 스마트폰 객체를 단..

개발공간/Java 2023.04.06

💡오버라이딩(Overriding)과 오버로딩(Overloading)

🔎 오버로딩이 뭔데? 같은 이름의 메소드를 여러 개 정의하는 것 이 때 매개변수의 개수나 타입이 다르면 구분해서 사용할 수 있음 예를 들어, 사람의 이름을 출력하는 메소드를 정의할 때, 이름만 받는 메소드와 이름과 나이를 함께 받는 메소드를 모두 정의할 수 있음 public class Example { public void printName(String name) { System.out.println("이름: " + name); } public void printName(String name, int age) { System.out.println("이름: " + name + ", 나이: " + age); } } 🔎 오버라이딩이 뭔데? 오버라이딩은 상속 관계에서 부모 클래스의 메소드를 자식 클래스에서 재정..

개발공간/Java 2023.04.06

[JAVA] 🚌 버스 도착 정보 출력하기

package chap_01; /* 실행 결과 구로03번 버스 약 3분 후 도착 남은 거리 1.5km */ public class _Quiz_01 { public static void main(String[] args) { // 버스 번호(1234, 구로03번) String busNo ="구로03"; // 남은 시간(3분, 5분) int minute = 3; // 남은 거리(1.5km, 0.9km) double distance = 1.2; // 결과 출력 System.out.println(busNo + "번 버스"); System.out.println("약 "+ minute + "분 후 도착"); System.out.println("남은 거리 " + distance + "km"); } }

개발공간/Java 2023.04.03