From 0bd280b21a150d7c03bb352a2d5351fdbdefc9be Mon Sep 17 00:00:00 2001 From: wotjd243 Date: Tue, 28 May 2024 10:00:04 +0900 Subject: [PATCH 1/8] feat: set up the project --- README.md | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 79 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 491aece1..e90b2949 100644 --- a/README.md +++ b/README.md @@ -1 +1,79 @@ -# java-racingcar-precourse \ No newline at end of file +# java-racingcar-precourse + +# 기능 요구 사항 + +초간단 자동차 경주 게임을 구현한다. + +- 주어진 횟수 동안 n대의 자동차는 전진 또는 멈출 수 있다. +- 각 자동차에 이름을 부여할 수 있다. 전진하는 자동차를 출력할 때 자동차 이름을 같이 출력한다. +- 자동차 이름은 쉼표(,)를 기준으로 구분하며 이름은 5자 이하만 가능하다. +- 사용자는 몇 번의 이동을 할 것인지를 입력할 수 있어야 한다. +- 전진하는 조건은 0에서 9 사이에서 무작위 값을 구한 후 무작위 값이 4 이상일 경우이다. +- 자동차 경주 게임을 완료한 후 누가 우승했는지를 알려준다. 우승자는 한 명 이상일 수 있다. +- 우승자가 여러 명일 경우 쉼표(,)를 이용하여 구분한다. +- 사용자가 잘못된 값을 입력할 경우 `IllegalArgumentException`를 발생시키고, "[ERROR]"로 시작하는 에러 메시지를 출력 후 그 부분부터 입력을 다시 받는다. + - `Exception`이 아닌 `IllegalArgumentException`, `IllegalStateException` 등과 같은 명확한 유형을 처리한다. + +## 프로그래밍 요구 사항 1 +- JDK 17버전에서 실행 가능해야 한다. +- 프로그램 실행의 시작점은 Application 의 main() 이다. +- build.gradle 파일은 변경할 수 없으며, 제공된 라이브러리 이외의 외부 라이브러리는 사용하지 않는다. +- 프로그램 종료 시 System.exit() 를 호출하지 않는다. +- 프로그래밍 요구 사항에서 달리 명시하지 않는 한 파일, 패키지 등의 이름을 바꾸거나 이동하지 않는다. + +## 프로그래밍 요구 사항 2 +- 자바 코드 컨벤션을 지키면서 프로그래밍한다. + - 기본적으로 Google Java Style Guide을 원칙으로 한다. + - 단, 들여쓰기는 '2 spaces'가 아닌 '4 spaces'로 한다. +- indent(인덴트, 들여쓰기) depth를 3이 넘지 않도록 구현한다. 2까지만 허용한다. + - 예를 들어 while문 안에 if문이 있으면 들여쓰기는 2이다. + - 힌트: indent(인덴트, 들여쓰기) depth를 줄이는 좋은 방법은 함수(또는 메서드)를 분리하면 된다. +- 3항 연산자를 쓰지 않는다. +- 함수(또는 메서드)가 한 가지 일만 하도록 최대한 작게 만들어라. +- JUnit 5와 AssertJ를 이용하여 정리한 기능 목록이 정상적으로 작동하는지 테스트 코드로 확인한다. + - 테스트 도구 사용법이 익숙하지 않다면 아래 문서를 참고하여 학습한 후 테스트를 구현한다. + - JUnit 5 User Guide + - AssertJ User Guide + - AssertJ Exception Assertions + - Guide to JUnit 5 Parameterized Tests + +## 프로그래밍 요구 사항 3 +- 함수(또는 메서드)의 길이가 15라인을 넘어가지 않도록 구현한다. + - 함수(또는 메서드)가 한 가지 일만 잘 하도록 구현한다. +- else 예약어를 쓰지 않는다. + - else를 쓰지 말라고 하니 switch/case로 구현하는 경우가 있는데 switch/case도 허용하지 않는다. + - 힌트: if 조건절에서 값을 return하는 방식으로 구현하면 else를 사용하지 않아도 된다. +- 도메인 로직에 단위 테스트를 구현해야 한다. 단, UI(System.out, System.in, Scanner) 로직은 제외한다. + - 핵심 로직을 구현하는 코드와 UI를 담당하는 로직을 분리해 구현한다. + - 힌트: MVC 패턴 기반으로 구현한 후, View와 Controller를 제외한 Model에 대한 단위 테스트 추가에 집중한다. + +## 실행 결과 +```txt +경주할 자동차 이름을 입력하세요.(이름은 쉼표(,) 기준으로 구분) +pobi,woni,jun +시도할 회수는 몇회인가요? +5 + +실행 결과 +pobi : - +woni : +jun : - + +pobi : -- +woni : - +jun : -- + +pobi : --- +woni : -- +jun : --- + +pobi : ---- +woni : --- +jun : ---- + +pobi : ----- +woni : ---- +jun : ----- + +최종 우승자 : pobi, jun +``` \ No newline at end of file From 0be7e9fd7638e2e7f68cdbfa54b5939d733f4c20 Mon Sep 17 00:00:00 2001 From: Jeje Date: Thu, 6 Jun 2024 19:14:02 +0900 Subject: [PATCH 2/8] feat(Application): make Application.java --- src/main/java/Application.java | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 src/main/java/Application.java diff --git a/src/main/java/Application.java b/src/main/java/Application.java new file mode 100644 index 00000000..bdbffd53 --- /dev/null +++ b/src/main/java/Application.java @@ -0,0 +1,5 @@ +public class Application { + public static void main(String[] args) { + + } +} From 3c1e9fab74b6ba125ad21015b8c30fa9d2b870c1 Mon Sep 17 00:00:00 2001 From: Jeje Date: Thu, 6 Jun 2024 19:15:56 +0900 Subject: [PATCH 3/8] =?UTF-8?q?feat(Car):=20make=20Car.java=20car=EC=97=90?= =?UTF-8?q?=20=EB=8C=80=ED=95=9C=20=EB=AA=A8=EB=8D=B8=EC=9D=84=20=EB=A7=8C?= =?UTF-8?q?=EB=93=A4=EC=97=88=EC=8A=B5=EB=8B=88=EB=8B=A4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/model/Car.java | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/main/java/model/Car.java diff --git a/src/main/java/model/Car.java b/src/main/java/model/Car.java new file mode 100644 index 00000000..96fd8d70 --- /dev/null +++ b/src/main/java/model/Car.java @@ -0,0 +1,28 @@ +package model; + +public class Car { + private final String name; + private int position; + + public Car(String name) { + if (name.length() > 5) { + throw new IllegalArgumentException("자동차 이름은 5자 이하만 가능합니다."); + } + this.name = name; + this.position = 0; + } + + public void move() { + if ((int) (Math.random() * 10) >= 4) { + this.position++; + } + } + + public String getName() { + return name; + } + + public int getPosition() { + return position; + } +} \ No newline at end of file From 2a472cf6cde936b05a7be5f90e86fe0e45ecfb86 Mon Sep 17 00:00:00 2001 From: Jeje Date: Thu, 6 Jun 2024 19:30:52 +0900 Subject: [PATCH 4/8] =?UTF-8?q?feat(Car):=20make=20RacingGame.java=20Racin?= =?UTF-8?q?gGame=EC=97=90=20=EB=8C=80=ED=95=9C=20=EB=AA=A8=EB=8D=B8?= =?UTF-8?q?=EC=9D=84=20=EB=A7=8C=EB=93=A4=EC=97=88=EC=8A=B5=EB=8B=88?= =?UTF-8?q?=EB=8B=A4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/model/RacingGame.java | 40 +++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/main/java/model/RacingGame.java diff --git a/src/main/java/model/RacingGame.java b/src/main/java/model/RacingGame.java new file mode 100644 index 00000000..e1dc300d --- /dev/null +++ b/src/main/java/model/RacingGame.java @@ -0,0 +1,40 @@ +package model; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +public class RacingGame { + private final List cars; + + public RacingGame(List carNames) { + cars = new ArrayList<>(); + for (String name : carNames) { + cars.add(new Car(name)); + } + } + + public void race(int trials) { + for (int i = 0; i < trials; i++) { + for (Car car : cars) { + car.move(); + } + } + } + + public List getCars() { + return cars; + } + + public List getWinners() { + int maxPosition = cars.stream() + .mapToInt(Car::getPosition) + .max() + .orElse(0); + + return cars.stream() + .filter(car -> car.getPosition() == maxPosition) + .map(Car::getName) + .collect(Collectors.toList()); + } +} From 7fe8f73b054cd96f417bb2ef57a999991f0d6b28 Mon Sep 17 00:00:00 2001 From: Jeje Date: Thu, 6 Jun 2024 23:21:28 +0900 Subject: [PATCH 5/8] =?UTF-8?q?feat(controller,=20view):=20make=20RacingGa?= =?UTF-8?q?meController.java=20and=20View.java=20RacingGame=EC=97=90=20?= =?UTF-8?q?=EB=8C=80=ED=95=9C=20=EC=BB=A8=ED=8A=B8=EB=A1=A4=EB=9F=AC?= =?UTF-8?q?=EC=99=80=20=EB=B7=B0=EB=A5=BC=20=EB=A7=8C=EB=93=A4=EC=97=88?= =?UTF-8?q?=EC=8A=B5=EB=8B=88=EB=8B=A4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/.gitkeep | 0 src/main/java/Application.java | 7 ++- .../java/controller/RacingGameController.java | 24 ++++++++++ src/main/java/view/View.java | 47 +++++++++++++++++++ 4 files changed, 76 insertions(+), 2 deletions(-) delete mode 100644 src/main/java/.gitkeep create mode 100644 src/main/java/controller/RacingGameController.java create mode 100644 src/main/java/view/View.java diff --git a/src/main/java/.gitkeep b/src/main/java/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/src/main/java/Application.java b/src/main/java/Application.java index bdbffd53..5444e799 100644 --- a/src/main/java/Application.java +++ b/src/main/java/Application.java @@ -1,5 +1,8 @@ +import controller.RacingGameController; + public class Application { public static void main(String[] args) { - + RacingGameController controller = new RacingGameController(); + controller.start(); } -} +} \ No newline at end of file diff --git a/src/main/java/controller/RacingGameController.java b/src/main/java/controller/RacingGameController.java new file mode 100644 index 00000000..eb9c079a --- /dev/null +++ b/src/main/java/controller/RacingGameController.java @@ -0,0 +1,24 @@ +package controller; + +import model.RacingGame; +import view.View; + +import java.util.List; + +public class RacingGameController { + private final View view = new View(); + + public void start() { + List carNames = view.getCarNames(); + int trialCount = view.getTrialCount(); + RacingGame racingGame = new RacingGame(carNames); + + for (int i = 0; i < trialCount; i++) { + racingGame.race(1); + view.displayRaceResult(racingGame.getCars()); + System.out.println(); + } + + view.displayWinners(racingGame.getWinners()); + } +} diff --git a/src/main/java/view/View.java b/src/main/java/view/View.java new file mode 100644 index 00000000..ed409bc8 --- /dev/null +++ b/src/main/java/view/View.java @@ -0,0 +1,47 @@ +package view; + +import model.Car; + +import java.util.List; +import java.util.Scanner; + +public class View { + private final Scanner scanner = new Scanner(System.in); + + public List getCarNames() { + while (true) { + try { + System.out.println("경주할 자동차 이름을 입력하세요.(이름은 쉼표(,) 기준으로 구분)"); + String input = scanner.nextLine(); + String[] names = input.split(","); + for (String name : names) { + new Car(name); // 이 과정에서 예외가 발생할 수 있음 + } + return List.of(names); + } catch (IllegalArgumentException e) { + System.out.println("[ERROR] " + e.getMessage()); + } + } + } + + public int getTrialCount() { + while (true) { + try { + System.out.println("시도할 회수는 몇회인가요?"); + return Integer.parseInt(scanner.nextLine()); + } catch (NumberFormatException e) { + System.out.println("[ERROR] 유효한 숫자를 입력하세요."); + } + } + } + + public void displayRaceResult(List cars) { + for (Car car : cars) { + System.out.println(car.getName() + " : " + "-".repeat(car.getPosition())); + } + } + + public void displayWinners(List winners) { + System.out.println("최종 우승자 : " + String.join(", ", winners)); + } +} From bba23ed7e00c5ce376b7de32fcb8c91eab25cc99 Mon Sep 17 00:00:00 2001 From: Jeje Date: Mon, 10 Jun 2024 03:46:10 +0900 Subject: [PATCH 6/8] =?UTF-8?q?feat(Tes=20dir):=20=EB=AA=A8=EB=8D=B8?= =?UTF-8?q?=EC=97=90=20=EB=8C=80=ED=95=9C=20=ED=85=8C=EC=8A=A4=ED=8A=B8?= =?UTF-8?q?=EB=A5=BC=20=EC=99=84=EC=84=B1=ED=96=88=EC=8A=B5=EB=8B=88?= =?UTF-8?q?=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/model/Car.java | 16 ++++++- src/test/java/CarTest.java | 44 +++++++++++++++++++ src/test/java/RacingGameTest.java | 72 +++++++++++++++++++++++++++++++ 3 files changed, 130 insertions(+), 2 deletions(-) create mode 100644 src/test/java/CarTest.java create mode 100644 src/test/java/RacingGameTest.java diff --git a/src/main/java/model/Car.java b/src/main/java/model/Car.java index 96fd8d70..048ad795 100644 --- a/src/main/java/model/Car.java +++ b/src/main/java/model/Car.java @@ -3,6 +3,7 @@ public class Car { private final String name; private int position; + private Integer fixedRandomNumber = null; public Car(String name) { if (name.length() > 5) { @@ -12,12 +13,23 @@ public Car(String name) { this.position = 0; } + public void setFixedRandomNumber(int number) { + this.fixedRandomNumber = number; + } + public void move() { - if ((int) (Math.random() * 10) >= 4) { + if (getRandomNumber() >= 4) { this.position++; } } + protected int getRandomNumber() { + if (fixedRandomNumber != null) { + return fixedRandomNumber; + } + return (int) (Math.random() * 10); + } + public String getName() { return name; } @@ -25,4 +37,4 @@ public String getName() { public int getPosition() { return position; } -} \ No newline at end of file +} diff --git a/src/test/java/CarTest.java b/src/test/java/CarTest.java new file mode 100644 index 00000000..10c9d0dc --- /dev/null +++ b/src/test/java/CarTest.java @@ -0,0 +1,44 @@ +import model.Car; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.ValueSource; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; + +public class CarTest { + + @ParameterizedTest + @ValueSource(ints = {4, 5, 6, 7, 8, 9}) + @DisplayName("랜덤 숫자가 4 이상일 때 이동 검증") + void move(int randomNumber) { + Car car = new Car("Test"); + car.setFixedRandomNumber(randomNumber); + car.move(); + assertEquals(1, car.getPosition()); + } + + @ParameterizedTest + @ValueSource(ints = {0, 1, 2, 3}) + @DisplayName("랜덤 숫자가 4 미만일 때 움직이지 않는 것 검증") + void stop(int randomNumber) { + Car car = new Car("Test"); + car.setFixedRandomNumber(randomNumber); + car.move(); + assertEquals(0, car.getPosition()); + } + + @ParameterizedTest + @ValueSource(strings = {"abcdef", "123456", "longname"}) + @DisplayName("자동차 이름이 5자를 초과하면 예외 발생 검증") + void nameEx(String name) { + assertThrows(IllegalArgumentException.class, () -> new Car(name)); + } + + @ParameterizedTest + @ValueSource(strings = {"abc", "12345", "long"}) + @DisplayName("자동차 이름이 5자 이하면 예외가 없음") + void nameOk(String name) { + new Car(name); // 예외가 발생하지 않으면 테스트 통과 + } +} diff --git a/src/test/java/RacingGameTest.java b/src/test/java/RacingGameTest.java new file mode 100644 index 00000000..b011360d --- /dev/null +++ b/src/test/java/RacingGameTest.java @@ -0,0 +1,72 @@ +import model.Car; +import model.RacingGame; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Test; + +import java.util.Arrays; +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class RacingGameTest { + + private List carNames; + private RacingGame racingGame; + + @BeforeEach + void setUp() { + carNames = Arrays.asList("Car1", "Car2", "Car3"); + racingGame = new RacingGame(carNames); + } + + @Test + @DisplayName("자동차 이름 리스트로 생성자 테스트") + void testConstructor() { + List cars = racingGame.getCars(); + assertEquals(3, cars.size()); + assertEquals("Car1", cars.get(0).getName()); + assertEquals("Car2", cars.get(1).getName()); + assertEquals("Car3", cars.get(2).getName()); + } + + @Test + @DisplayName("주어진 횟수 동안 자동차 경주 테스트") + void testRace() { + racingGame.race(5); + List cars = racingGame.getCars(); + for (Car car : cars) { + assertTrue(car.getPosition() >= 0 && car.getPosition() <= 5); + } + } + + @Test + @DisplayName("우승자 결정 테스트") + void testGetWinners() { + racingGame.getCars().get(0).setFixedRandomNumber(5); + racingGame.getCars().get(1).setFixedRandomNumber(3); + racingGame.getCars().get(2).setFixedRandomNumber(3); + + racingGame.race(1); + + List winners = racingGame.getWinners(); + assertEquals(1, winners.size()); + assertEquals("Car1", winners.get(0)); + } + + @Test + @DisplayName("여러 우승자 결정 테스트") + void testGetMultipleWinners() { + racingGame.getCars().get(0).setFixedRandomNumber(5); + racingGame.getCars().get(1).setFixedRandomNumber(5); + racingGame.getCars().get(2).setFixedRandomNumber(3); + + racingGame.race(1); + + List winners = racingGame.getWinners(); + assertEquals(2, winners.size()); + assertTrue(winners.contains("Car1")); + assertTrue(winners.contains("Car2")); + } +} From fd9954eb3b7bbf7fb3a56f6b60061b234d586c7a Mon Sep 17 00:00:00 2001 From: Jeje Date: Mon, 10 Jun 2024 03:50:23 +0900 Subject: [PATCH 7/8] =?UTF-8?q?doc(all):=20=EB=A9=94=EC=86=8C=EB=93=9C?= =?UTF-8?q?=EC=97=90=20=EB=8C=80=ED=95=B4=EC=84=9C=20=EC=A3=BC=EC=84=9D?= =?UTF-8?q?=EC=9D=84=20=EC=9E=91=EC=84=B1=20=EB=B0=8F=20=EC=A0=95=EB=A6=AC?= =?UTF-8?q?=ED=96=88=EC=8A=B5=EB=8B=88=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/controller/RacingGameController.java | 3 ++ src/main/java/model/Car.java | 28 +++++++++++++++++++ src/main/java/model/RacingGame.java | 16 +++++++++++ src/main/java/view/View.java | 8 ++++++ 4 files changed, 55 insertions(+) diff --git a/src/main/java/controller/RacingGameController.java b/src/main/java/controller/RacingGameController.java index eb9c079a..b7c16487 100644 --- a/src/main/java/controller/RacingGameController.java +++ b/src/main/java/controller/RacingGameController.java @@ -8,6 +8,9 @@ public class RacingGameController { private final View view = new View(); + /** + * 게임을 시작하는 메서드 + */ public void start() { List carNames = view.getCarNames(); int trialCount = view.getTrialCount(); diff --git a/src/main/java/model/Car.java b/src/main/java/model/Car.java index 048ad795..922b8c94 100644 --- a/src/main/java/model/Car.java +++ b/src/main/java/model/Car.java @@ -5,6 +5,10 @@ public class Car { private int position; private Integer fixedRandomNumber = null; + /** + * 자동차 이름을 받아 생성하는 생성자 + * @param name 자동차 이름 + */ public Car(String name) { if (name.length() > 5) { throw new IllegalArgumentException("자동차 이름은 5자 이하만 가능합니다."); @@ -13,16 +17,32 @@ public Car(String name) { this.position = 0; } + /** + * 테스트용으로 랜덤 숫자를 고정하는 메서드 + * @param number 고정할 랜덤 숫자 + * @see CarTest#move(int) + */ public void setFixedRandomNumber(int number) { this.fixedRandomNumber = number; } + /** + * 랜덤 숫자를 생성하여 이동하는 메서드 + * 랜덤 숫자가 4 이상일 때 이동 + */ public void move() { if (getRandomNumber() >= 4) { this.position++; } } + /** + * 랜덤 숫자를 생성하는 메서드 + * 테스트용으로 랜덤 숫자를 고정했을 경우 고정된 숫자를 반환 + * @return 생성된 랜덤 숫자 + * @see Car#move() + * @see CarTest#move(int) + */ protected int getRandomNumber() { if (fixedRandomNumber != null) { return fixedRandomNumber; @@ -30,10 +50,18 @@ protected int getRandomNumber() { return (int) (Math.random() * 10); } + /** + * 현재 자동차의 이름을 반환하는 메서드 + * @return 자동차 이름 + */ public String getName() { return name; } + /** + * 현재 자동차의 위치를 반환하는 메서드 + * @return 자동차 위치 + */ public int getPosition() { return position; } diff --git a/src/main/java/model/RacingGame.java b/src/main/java/model/RacingGame.java index e1dc300d..cdf373ee 100644 --- a/src/main/java/model/RacingGame.java +++ b/src/main/java/model/RacingGame.java @@ -7,6 +7,10 @@ public class RacingGame { private final List cars; + /** + * 자동차 이름 리스트를 받아 생성하는 생성자 + * @param carNames 자동차 이름 리스트 + */ public RacingGame(List carNames) { cars = new ArrayList<>(); for (String name : carNames) { @@ -14,6 +18,10 @@ public RacingGame(List carNames) { } } + /** + * 주어진 횟수만큼 자동차 경주를 진행하는 메서드 + * @param trials 시도할 횟수 + */ public void race(int trials) { for (int i = 0; i < trials; i++) { for (Car car : cars) { @@ -22,10 +30,18 @@ public void race(int trials) { } } + /** + * 현재 자동차 리스트를 반환하는 메서드 + * @return 현재 자동차 리스트 + */ public List getCars() { return cars; } + /** + * 현재 가장 멀리 있는 자동차의 위치를 반환하는 메서드 + * @return 현재 가장 멀리 있는 자동차의 위치 + */ public List getWinners() { int maxPosition = cars.stream() .mapToInt(Car::getPosition) diff --git a/src/main/java/view/View.java b/src/main/java/view/View.java index ed409bc8..ca4e808c 100644 --- a/src/main/java/view/View.java +++ b/src/main/java/view/View.java @@ -8,6 +8,10 @@ public class View { private final Scanner scanner = new Scanner(System.in); + /** + * 사용자로부터 자동차 이름을 입력받는 메서드 + * @return 입력받은 자동차 이름 리스트 + */ public List getCarNames() { while (true) { try { @@ -24,6 +28,10 @@ public List getCarNames() { } } + /** + * 사용자로부터 시도할 회수를 입력받는 메서드 + * @return 입력받은 시도할 회수 + */ public int getTrialCount() { while (true) { try { From 5b4c892e1cbe1bdc494b4cc7e926cdeea3c107d6 Mon Sep 17 00:00:00 2001 From: Jeje Date: Mon, 10 Jun 2024 03:53:42 +0900 Subject: [PATCH 8/8] =?UTF-8?q?doc(all):=20=EB=A9=94=EC=86=8C=EB=93=9C?= =?UTF-8?q?=EC=97=90=20=EB=8C=80=ED=95=B4=EC=84=9C=20=EC=A3=BC=EC=84=9D?= =?UTF-8?q?=EC=9D=84=20=EC=9E=91=EC=84=B1=20=EB=B0=8F=20=EC=A0=95=EB=A6=AC?= =?UTF-8?q?=ED=96=88=EC=8A=B5=EB=8B=88=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/model/Car.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/model/Car.java b/src/main/java/model/Car.java index 922b8c94..470756dd 100644 --- a/src/main/java/model/Car.java +++ b/src/main/java/model/Car.java @@ -20,7 +20,6 @@ public Car(String name) { /** * 테스트용으로 랜덤 숫자를 고정하는 메서드 * @param number 고정할 랜덤 숫자 - * @see CarTest#move(int) */ public void setFixedRandomNumber(int number) { this.fixedRandomNumber = number; @@ -41,7 +40,6 @@ public void move() { * 테스트용으로 랜덤 숫자를 고정했을 경우 고정된 숫자를 반환 * @return 생성된 랜덤 숫자 * @see Car#move() - * @see CarTest#move(int) */ protected int getRandomNumber() { if (fixedRandomNumber != null) {