728x90
반응형
SMALL

서비스

전체 게시글 목록 조회

게시글은 완료

댓글이랑 http 예외처리하기

class 포켓몬 {
// 레드는 오박사님께 함께 여행을 할 포켓몬 1마리를 선물 받기로 했는데, 선택하려고 한다.
	static final int 피카츄 = 0;
	static final int 파이리 = 1;
	static final int 꼬북이 = 2;

 // 레드는 태초마을에서 어느 마을로 여행을 갈 것인가?
	static final int 상록시티 =0;
	static final int 회색시티 =1;
	static final int 블루시티 =2;

final int 포켓몬kind;
final int 마을;
}
class 포켓몬 {
// 레드는 오박사님께 함께 여행을 할 포켓몬 1마리를 선물 받기로 했는데, 선택하려고 한다.
	enum 포켓몬kind {피카츄, 파이리, 꼬북이} // 열거형 kind 정의 
// 피카츄, 파이리, 꼬북이 => 상수명
 // 레드는 태초마을에서 어느 마을로 여행을 갈 것인가?
	enum 마을 {상록시티, 회색시티, 블루시티} // 열거형 마을 정의

	final 포켓몬Kind 포켓몬kind;
  final 마을(대문자) 마을(소문자);
}
//열거형에 멤버 추가하기
//레드는 여행을 하던 중 새로운 포켓몬을 만났다.
	enum 포켓몬kind {피카츄, 피존튜, 꼬북이, 이브이) // 열거형 kind 정의 
// 열거형에 추상 메서드 추가하기
// 레드는 여행을 하기 위해 걸어가다 힘이 들어 운송수단을 알아볼려고 합니다.
// 피존튜나 타고 가거라
// 버스는 100원, 기차는 150원 배는 100원 피존튜는 0원
emun Transportation {
	버스Bus(100), 기차TRAIN(150), 배SHIP(100), 피존튜(0);
	
	private final int BASIC_FARE;
	
	private Transportation(int basicFare){
			BASIC_FARE = basicFare;
	}
	int fare() { // 운송 요금을 반환
		return BASTC_FARE;
	}
}

열거형(Enum)은 일반적으로 프로그램에서 사용할 상수 집합을 정의하는 데 사용됩니다. 열거형에 새로운 멤버를 추가하는 방법은 다음과 같습니다.

  1. 기존의 열거형에 새로운 멤버를 추가하는 방법 새로운 멤버를 추가하려면 기존의 열거형에 값을 추가해야 합니다. 이는 새로운 값을 열거형 목록에 추가하고 열거형을 사용하는 코드에서 새 값을 사용할 수 있도록 합니다.
javaCopy code
public enum Color {
    RED, BLUE, GREEN, YELLOW;
}

// 새로운 멤버 추가
public enum Color {
    RED, BLUE, GREEN, YELLOW, PURPLE;
}

  1. 새로운 열거형 멤버를 추가하는 방법 새로운 열거형 멤버를 추가하려면 새로운 열거형을 만들어야 합니다. 이는 기존의 열거형과 마찬가지로 새로운 값을 열거형 목록에 추가하고 열거형을 사용하는 코드에서 새 값을 사용할 수 있도록 합니다.
javaCopy code
// 새로운 열거형 추가
public enum Fruit {
    APPLE, BANANA, ORANGE, GRAPE;
}

// 새로운 멤버 추가
public enum Fruit {
    APPLE, BANANA, ORANGE, GRAPE, WATERMELON;
}

열거형은 보통 변경할 수 없는 상수 집합으로 사용되므로, 멤버를 추가하는 것은 대부분의 경우 열거형을 수정하는 것보다는 새로운 열거형을 만드는 것이 더 일반적입니다.

[data:image/svg+xml,%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20version=%271.1%27%20width=%2730%27%20height=%2730%27/%3e](data:image/svg+xml,%3csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20version=%271.1%27%20width=%2730%27%20height=%2730%27/%3e)

열거형 추상 메서드 추가하기

Java의 열거형(Enum)은 추상 메서드를 포함할 수 있습니다. 열거형에 추상 메서드를 추가하려면 열거형 상수 각각이 해당 추상 메서드를 구현해야 합니다.

아래는 추상 메서드가 있는 열거형의 예시입니다.

javaCopy code
public enum Shape {
    CIRCLE {
        @Override
        public double calculateArea(double radius) {
            return Math.PI * radius * radius;
        }
    },
    SQUARE {
        @Override
        public double calculateArea(double side) {
            return side * side;
        }
    },
    RECTANGLE {
        @Override
        public double calculateArea(double length, double width) {
            return length * width;
        }
    };

    // 추상 메서드 선언
    public abstract double calculateArea(double arg1);

    // RECTANGLE 상수를 위한 메서드 추가
    public double calculateArea(double length, double width) {
        throw new UnsupportedOperationException("RECTANGLE shape does not support this operation");
    }
}

위 예시에서 Shape 열거형은 **calculateArea()**라는 추상 메서드를 가지고 있습니다. 각각의 상수(여기서는 CIRCLE, SQUARE, RECTANGLE)는 이 추상 메서드를 구현합니다.

RECTANGLE 상수는 calculateArea() 메서드를 두 개의 매개변수로 호출해야 하므로, 열거형 내에서 별도의 calculateArea() 메서드를 정의해야 합니다.

따라서, 열거형 내부에서 추상 메서드를 정의하고, 각각의 상수가 이를 구현하도록 할 수 있습니다. 이를 통해 열거형을 사용하는 코드에서는 각각의 상수에서 구현된 추상 메서드를 호출할 수 있습니다.

Java의 열거형(Enum)은 추상 메서드를 포함할 수 있습니다. 추상 메서드를 추가하려면 열거형 상수 각각이 해당 추상 메서드를 구현해야 합니다.

아래는 추상 메서드가 있는 열거형의 예시입니다.

public enum Shape {
    CIRCLE {
        @Override
        public double calculateArea(double radius) {
            return Math.PI * radius * radius;
        }
    },
    SQUARE {
        @Override
        public double calculateArea(double side) {
            return side * side;
        }
    },
    RECTANGLE {
        @Override
        public double calculateArea(double length, double width) {
            return length * width;
        }
    };

    // 추상 메서드 선언
    public abstract double calculateArea(double arg1);

    // RECTANGLE 상수를 위한 메서드 추가
    public double calculateArea(double length, double width) {
        throw new UnsupportedOperationException("RECTANGLE shape does not support this operation");
    }
}

위 예시에서 Shape 열거형은 calculateArea()라는 추상 메서드를 가지고 있습니다. 각각의 상수(여기서는 CIRCLE, SQUARE, RECTANGLE)는 이 추상 메서드를 구현합니다.

RECTANGLE 상수는 calculateArea() 메서드를 두 개의 매개변수로 호출해야 하므로, 열거형 내에서 별도의 calculateArea() 메서드를 정의해야 합니다.

따라서, 열거형 내부에서 추상 메서드를 정의하고, 각각의 상수가 이를 구현하도록 할 수 있습니다. 이를 통해 열거형을 사용하는 코드에서는 각각의 상수에서 구현된 추상 메서드를 호출할 수 있습니다.

인텔리 제이 code → Optimize Import 를 클릭 하면 사용하지 않는 import는 지워 준다!

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://엔드포인트:3306/db이름 spring.datasource.username=root # 계정명 spring.datasource.password=0000 # 비번

https://dhun.tistory.com/7

h2 사용하는 이유 : 라이트하다. 인메모리에서 테스트 하기 쉽기 때문에 사용!

레비스 도 인메모리에 쓰이기 때문

jpa을 쓰는 이유 → orm 디비에 자주 가면 안좋기 때문

728x90
반응형
LIST

'일상 > TIL' 카테고리의 다른 글

48일차  (0) 2023.02.25
47일차  (0) 2023.02.25
45일차  (0) 2023.02.23
43일차  (0) 2023.02.21
43일차  (0) 2023.02.20

+ Recent posts