Skip to content

260616_09_박성연#63

Open
sypdana-sys wants to merge 1 commit into
SurvivalCodingCampus:student/09_박성연from
sypdana-sys:master
Open

260616_09_박성연#63
sypdana-sys wants to merge 1 commit into
SurvivalCodingCampus:student/09_박성연from
sypdana-sys:master

Conversation

@sypdana-sys

Copy link
Copy Markdown

260616_09_박성연

📝 과제 정보

  • 상속:

📋 체크리스트

  • 코드 컨벤션 준수 (Formatter 적용)
  • 모든 테스트 케이스 통과 (JUnit)

📷 실행 결과 (또는 테스트 결과)

❓질문 및 어려웠던 점

🔄 자체 평가 & 회고

  • 상속을 JAVA에서 어떻게 구현하는 지 알 수 있게 되었다.
  • UML(Unified Modeling Language) 파일: 시스템이나 소프트웨어의 구조, 객체, 클래스, 프로세스 등을 시각적으로 모델링하기 위해 사용하는 파일을 활용할 수 있게 되었다.

@coderabbitai

coderabbitai Bot commented Jun 19, 2026

Copy link
Copy Markdown

Review Change Stack

상속 실습 코드 리뷰 피드백

좋은 점 ✅

  1. 기본적인 상속 구조 구현: PoisonSlime extends Slime, GreatWizard extends Wizard 등 클래스 계층 구조를 올바르게 설정하셨습니다.

  2. super() 호출: PoisonSlime의 생성자에서 super(suffix, hp)를 통해 부모 클래스 생성자를 호출한 점이 좋습니다.

  3. @Override 어노테이션: PoisonSlimeattack() 메서드에서 @Override 어노테이션을 사용하신 점은 좋은 습관입니다.

개선이 필요한 부분 🤔

1. Slime 클래스의 생성자 문제

public Slime(String suffix, int hp) {
}  // 비어있습니다

질문: 생성자 본문이 비어 있는데, 전달받은 suffixhp 매개변수는 어디에 저장되어야 할까요?
힌트: 클래스의 필드들(final String suffix, int hp)을 초기화해야 하는 것은 아닐까요?

2. 필드 초기화 누락

Slime 클래스의 두 번째 생성자에서 suffix는 초기화하지만, hp 필드는 어떻게 되나요?
질문: 만약 Slime 객체의 hp가 초기화되지 않으면 어떤 문제가 발생할까요?

3. GreatWizard의 필드 중복 문제

public class GreatWizard extends Wizard{
    private int mp = 150;  // 부모 클래스에도 이미 있습니다
    // ...
}

개념: 부모 클래스인 Wizard에 이미 mp 필드가 있는데, 자식 클래스에서 같은 이름의 필드를 다시 선언하면 어떻게 될까요? (이를 "필드 shadowing"이라 합니다)

질문:

  • GreatWizard 객체에는 mp 필드가 몇 개일까요?
  • super.mpthis.mp는 다른 값을 참조할까요?

4. 존재하지 않는 상수 참조

void superHeal(Hero hero) {
    // ...
    hero.setHp(Max_Hp);  // Max_Hp는 어디에 정의되어 있나요?
}

힌트: Hero 클래스를 확인해보세요. MAX_HP라는 상수가 정의되어 있나요? 변수명의 대소문자를 정확히 확인해주세요.

5. Hero 클래스의 메서드 누락

Hero 클래스에는 getMp() 메서드가 없는 것 같습니다.
질문: GreatWizardsuperHeal() 메서드에서 hero.getMp()를 호출하는데, 이 메서드가 없으면 어떻게 될까요? Hero에도 MP를 관리할 필요가 있지 않을까요?

6. 메서드 오버라이드 고려사항

Wizard 클래스의 heal(Hero hero) 메서드와 GreatWizardheal(Hero hero) 메서드를 비교해보세요.
질문:

  • GreatWizardheal() 메서드가 부모의 heal()을 재정의하려는 의도인가요?
  • 그렇다면 @Override 어노테이션을 추가해야 하지 않을까요?

캡슐화와 접근 제한자 확인

SlimePoisonSlimeattack() 메서드에 접근 제한자가 없습니다.
질문: 이 메서드를 외부에서 호출해야 한다면, package-private(현재)이 적절할까요? 아니면 public이어야 할까요?

정리하며 🎯

이번 과제를 통해:

  • 부모 클래스에서 선언된 필드와 메서드를 자식 클래스에서 어떻게 활용하는지
  • 생성자 오버로딩과 super() 호출의 중요성
  • 메서드 오버라이딩과 다형성의 개념

을 깊이 있게 이해하는 것이 목표입니다. 위의 질문들을 스스로 생각해보고 수정해보세요!

Walkthrough

게임 패키지에 Slime/PoisonSlime 클래스와 GreatWizard 클래스를 신규 추가하고, 기존 Wizard의 필드 선언을 정리하며 heal 로직을 고정값 기반으로 변경했다. 전체 상속 구조를 PlantUML 다이어그램으로 문서화하고, 상속 주제 TIL 마크다운 문서를 추가했다.

Changes

게임 상속 계층 구현

Layer / File(s) Summary
Slime 및 PoisonSlime 클래스 추가
game/src/main/java/com/survivalcoding/Slime.java, game/src/main/java/com/survivalcoding/PoisonSlime.java
Slime(suffix/hp 필드, 두 생성자, 10 고정 데미지 attack)과 PoisonSlime(poisonCount=5, 오버로드 생성자, super.attack 후 hp/5 기반 독 피해 적용 override attack)을 신규 추가했다.
Wizard 리팩터링 및 GreatWizard 추가
game/src/main/java/com/survivalcoding/Wizard.java, game/src/main/java/com/survivalcoding/GreatWizard.java
WizardMAX_MP 상수 추가, 필드 선언 위치 통합, nameprivate으로 변경, heal을 wand 의존에서 고정값(HP+20/MP-10)으로 교체했으며, GreatWizard(mp=150, heal HP+25/MP-5, superHeal MP 조건 체크 후 Max_Hp 회복)를 신규 추가했다.
PlantUML 클래스 다이어그램
game/game.puml
Hero/SuperHero, Wizard/GreatWizard, Slime/PoisonSlime 전체 상속 구조를 PlantUML로 정의하고 PoisonSlime의 attack에 <<@OverRide>> 마커를 표시했다.

TIL 상속 문서

Layer / File(s) Summary
상속 TIL 문서 추가
TIL/sample/2026-06-16-상속.md
상속 개념, override/overload 구분, 상속 불가 조건, extends/super 키워드 목록과 빈 실습 코드 블록을 포함한 Markdown 파일을 새로 추가했다.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive 제목 '260616_09_박성연'은 날짜와 학생 이름만 포함하며 실제 변경 사항의 주요 내용을 설명하지 않아 모호합니다. 제목을 '상속 클래스 구현 및 UML 다이어그램 추가' 같이 실제 변경의 주요 내용을 명확하게 표현하도록 수정해주세요.
✅ Passed checks (3 passed)
Check name Status Explanation
Description check ✅ Passed PR 설명이 템플릿의 필수 섹션 대부분을 포함하고 있으며, 과제 정보, 체크리스트, 자체 평가 등이 작성되었습니다.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Warning

⚠️ This pull request shows signs of AI-generated slop (phantom_api). It has been flagged by CodeRabbit slop detection and should be reviewed carefully.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

🧹 Nitpick comments (1)
TIL/sample/2026-06-16-상속.md (1)

18-22: ⚡ Quick win

실습 코드 블록에 예제를 채워 주세요.

현재 코드 블록이 비어 있어서 extends/super를 실제로 어떻게 쓰는지 문서에서 바로 확인할 수 없습니다.

🧩 예시 추가안
 ## 실습 코드
 
 ```java
+class Parent {
+    void hello() {}
+}
+
+class Child extends Parent {
+    `@Override`
+    void hello() {
+        super.hello();
+    }
+}
</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @TIL/sample/2026-06-16-상속.md around lines 18 - 22, The practice code section
in the "실습 코드" block is empty and needs to include a concrete Java example
demonstrating inheritance concepts. Add a Parent class with a hello() method,
then create a Child class that extends Parent using the extends keyword and
overrides the hello() method with the @Override annotation, calling the parent
class's hello() method using super.hello(). This will provide readers with a
clear, working example of how extends and super keywords are used in Java
inheritance.


</details>

<!-- cr-comment:v1:31b4ea2aef10ec33936e3ea9 -->

</blockquote></details>

</blockquote></details>

<details>
<summary>🤖 Prompt for all review comments with AI agents</summary>

Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @game/game.puml:

  • Around line 5-6: Update the PlantUML diagram signatures for the methods
    setFlying and isFlying to match the actual code implementation. Change the
    access modifier from + (public) to match the package-private visibility of the
    actual methods in the code. Additionally, correct the type declarations from
    bool to boolean to match the Java type conventions used in the actual
    implementation. Apply these same corrections to all other occurrences mentioned
    at lines 17, 21, 25, and 29 to ensure the entire diagram is consistent with the
    current codebase.

In @game/src/main/java/com/survivalcoding/GreatWizard.java:

  • Line 15: The identifier Max_Hp on line 15 in the GreatWizard.java file is
    undefined and does not follow Java naming conventions for constants. Replace
    Max_Hp with Hero.MAX_HP when calling the hero.setHp() method, as MAX_HP is
    defined as a static final constant in the Hero class with proper uppercase
    naming convention.
  • Around line 4-17: The GreatWizard class has an MP management issue caused by
    field shadowing and incorrect target selection. Remove the shadowing mp field
    declaration at line 4, and fix both the heal and superHeal methods to deduct MP
    from the GreatWizard caster (using this context or inherited mp from parent
    Wizard) instead of from the target hero parameter. This applies to both the
    setMp call in the heal method and the setMp call in the superHeal method,
    ensuring consistent MP cost accounting for the spell caster's own resource
    usage.

In @game/src/main/java/com/survivalcoding/Slime.java:

  • Around line 7-11: The Slime(String suffix, int hp) constructor at line 7 is
    empty and fails to initialize the required fields. Inside this constructor body,
    add statements to initialize the suffix field with the suffix parameter and
    assign the hp parameter to the corresponding hp field, following the same
    pattern as shown in the Slime(String suffix) constructor which properly assigns
    this.suffix = suffix.

In @game/src/main/java/com/survivalcoding/Wizard.java:

  • Around line 62-67: The heal() method in the Wizard class is incorrectly
    consuming the target hero's MP instead of the caster's MP. In the heal() method,
    the line that calls hero.setMp(hero.getMp() - usedPoint) is decrementing the
    target's MP, but it should instead decrement the Wizard's own MP (the caster).
    Change the MP deduction to use the Wizard instance's MP property instead of the
    hero parameter's MP property to correctly represent resource consumption by the
    spell caster.

In @TIL/sample/2026-06-16-상속.md:

  • Around line 6-10: Correct the terminology and spelling errors in the
    inheritance document to improve credibility. Replace "override vs 클래스 overload"
    with proper Korean terminology for "메서드 재정의(override)" and "메서드 오버로딩(overload)".
    Fix the typos: change "클리스" to "클래스", "extands" to "extends", and "매소드" to "메서드"
    throughout the document. These corrections will ensure the technical terms are
    accurate and the document is free of spelling errors that undermine its
    trustworthiness.

Nitpick comments:
In @TIL/sample/2026-06-16-상속.md:

  • Around line 18-22: The practice code section in the "실습 코드" block is empty and
    needs to include a concrete Java example demonstrating inheritance concepts. Add
    a Parent class with a hello() method, then create a Child class that extends
    Parent using the extends keyword and overrides the hello() method with the
    @Override annotation, calling the parent class's hello() method using
    super.hello(). This will provide readers with a clear, working example of how
    extends and super keywords are used in Java inheritance.

</details>

<details>
<summary>🪄 Autofix (Beta)</summary>

Fix all unresolved CodeRabbit comments on this PR:

- [ ] <!-- {"checkboxId": "4b0d0e0a-96d7-4f10-b296-3a18ea78f0b9"} --> Push a commit to this branch (recommended)
- [ ] <!-- {"checkboxId": "ff5b1114-7d8c-49e6-8ac1-43f82af23a33"} --> Create a new PR with the fixes

</details>

---

<details>
<summary>ℹ️ Review info</summary>

<details>
<summary>⚙️ Run configuration</summary>

**Configuration used**: Organization UI

**Review profile**: CHILL

**Plan**: Pro

**Run ID**: `930c467a-9d7f-49ad-80cd-58687f5156ad`

</details>

<details>
<summary>📥 Commits</summary>

Reviewing files that changed from the base of the PR and between db04b9e7e75e871ed860da8d5439b3220592a76c and 109c8a2242880d72c9e650c6156579eebf0a2bac.

</details>

<details>
<summary>📒 Files selected for processing (6)</summary>

* `TIL/sample/2026-06-16-상속.md`
* `game/game.puml`
* `game/src/main/java/com/survivalcoding/GreatWizard.java`
* `game/src/main/java/com/survivalcoding/PoisonSlime.java`
* `game/src/main/java/com/survivalcoding/Slime.java`
* `game/src/main/java/com/survivalcoding/Wizard.java`

</details>

</details>

<!-- This is an auto-generated comment by CodeRabbit for review status -->

Comment thread game/game.puml
Comment on lines +5 to +6
+void setFlying(bool flying)
+boolean isFlying()

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

PlantUML 시그니처가 실제 코드와 불일치합니다.

접근제어자(+ vs package-private)와 타입(bool)이 코드와 맞지 않아 다이어그램 신뢰도가 떨어집니다. 현재 코드 기준으로 동기화해 주세요.

🔧 제안 수정안
 class SuperHero extends Hero {
-    +void setFlying(bool flying)
+    +void setFlying(boolean flying)
     +boolean isFlying()
 }

 class Wizard {
-    +void heal(Hero)
+    ~void heal(Hero)
 }

 class GreatWizard extends Wizard {
-    +void superHeal(Hero)
+    ~void superHeal(Hero)
 }

 class Slime {
-    +void attack(Hero)
+    ~void attack(Hero)
 }

 class PoisonSlime extends Slime {
-    +void attack(Hero) <<`@Override`>>
+    ~void attack(Hero) <<`@Override`>>
 }

Also applies to: 17-17, 21-21, 25-25, 29-29

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@game/game.puml` around lines 5 - 6, Update the PlantUML diagram signatures
for the methods setFlying and isFlying to match the actual code implementation.
Change the access modifier from + (public) to match the package-private
visibility of the actual methods in the code. Additionally, correct the type
declarations from bool to boolean to match the Java type conventions used in the
actual implementation. Apply these same corrections to all other occurrences
mentioned at lines 17, 21, 25, and 29 to ensure the entire diagram is consistent
with the current codebase.

Comment on lines +4 to +17
private int mp = 150;
void heal (Hero hero) {
hero.setHp(hero.getHp() +25);
hero.setMp(hero.getMp() -5);

}
void superHeal (Hero hero) {
if (hero.getMp() < 50) {
System.out.println("마나가 부족합니다.");
}
else{
hero.setHp(Max_Hp);
hero.setMp(hero.getMp() -50);
System.out.println("슈퍼 힐을 시전했습니다. 대상 HP: " + hero.getHp());

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

GreatWizard의 MP 상태 모델이 깨져 있습니다(필드 섀도잉 + 대상 MP 차감).

Line 4에서 부모 Wizard.mp를 섀도잉하고, Line 7/16에서는 시전자 MP가 아니라 대상 hero MP를 차감하고 있습니다. 결과적으로 GreatWizard 자신의 MP 관리가 일관되지 않습니다.

🔧 제안 수정안
 public class GreatWizard extends Wizard{
-    private int mp = 150;
+    public GreatWizard() {
+        this.setMp(150);
+    }

     void heal (Hero hero) {
+        if (this.getMp() < 5) {
+            throw new IllegalStateException("마나가 부족합니다.");
+        }
         hero.setHp(hero.getHp() +25);
-        hero.setMp(hero.getMp() -5);
+        this.setMp(this.getMp() -5);

     }
     void superHeal (Hero hero) {
-        if (hero.getMp() < 50) {
+        if (this.getMp() < 50) {
             System.out.println("마나가 부족합니다.");
         }
         else{
             hero.setHp(Max_Hp);
-            hero.setMp(hero.getMp() -50);
+            this.setMp(this.getMp() -50);
             System.out.println("슈퍼 힐을 시전했습니다. 대상 HP: " + hero.getHp());
         }
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@game/src/main/java/com/survivalcoding/GreatWizard.java` around lines 4 - 17,
The GreatWizard class has an MP management issue caused by field shadowing and
incorrect target selection. Remove the shadowing mp field declaration at line 4,
and fix both the heal and superHeal methods to deduct MP from the GreatWizard
caster (using this context or inherited mp from parent Wizard) instead of from
the target hero parameter. This applies to both the setMp call in the heal
method and the setMp call in the superHeal method, ensuring consistent MP cost
accounting for the spell caster's own resource usage.

System.out.println("마나가 부족합니다.");
}
else{
hero.setHp(Max_Hp);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Read-only verification: locate hp max constants and references
rg -n -C2 '\bMax_Hp\b|\bMAX_HP\b|\bmaxHp\b'
fd -i 'Hero.java' | xargs -I{} sed -n '1,220p' {}
fd -i 'Wizard.java' | xargs -I{} sed -n '1,220p' {}

Repository: SurvivalCodingCampus/polytech_java2

Length of output: 5060


Max_Hp는 정의되지 않은 식별자입니다. Hero.MAX_HP를 사용해주세요.

Line 15의 Max_Hp는 현재 파일 범위에서나 상속 계층에서도 선언되지 않았습니다. Hero 클래스에서 정의된 static final int MAX_HP = 50을 참조해야 하므로 Hero.MAX_HP로 변경하세요. 또한 Java 명명 규칙에 따라 상수는 MAX_HP (대문자)로 표기합니다.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@game/src/main/java/com/survivalcoding/GreatWizard.java` at line 15, The
identifier `Max_Hp` on line 15 in the GreatWizard.java file is undefined and
does not follow Java naming conventions for constants. Replace `Max_Hp` with
`Hero.MAX_HP` when calling the `hero.setHp()` method, as MAX_HP is defined as a
static final constant in the Hero class with proper uppercase naming convention.

Comment on lines +7 to +11
public Slime(String suffix, int hp) {
}
public Slime(String suffix) {
this.suffix = suffix;
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Slime(String suffix, int hp) 생성자에서 필수 필드 초기화가 누락되었습니다.

Line 7의 생성자가 비어 있어서 final 필드 suffix가 초기화되지 않고, hp도 반영되지 않습니다. 현재 상태로는 컴파일 실패 가능성이 큽니다.

🔧 제안 수정안
 public class Slime {
     final String suffix;
     int hp;

     public Slime(String suffix, int hp) {
+        this.suffix = suffix;
+        this.hp = hp;
     }
     public Slime(String suffix) {
-        this.suffix = suffix;
+        this(suffix, 100);
     }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
public Slime(String suffix, int hp) {
}
public Slime(String suffix) {
this.suffix = suffix;
}
public class Slime {
final String suffix;
int hp;
public Slime(String suffix, int hp) {
this.suffix = suffix;
this.hp = hp;
}
public Slime(String suffix) {
this(suffix, 100);
}
}
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@game/src/main/java/com/survivalcoding/Slime.java` around lines 7 - 11, The
Slime(String suffix, int hp) constructor at line 7 is empty and fails to
initialize the required fields. Inside this constructor body, add statements to
initialize the suffix field with the suffix parameter and assign the hp
parameter to the corresponding hp field, following the same pattern as shown in
the Slime(String suffix) constructor which properly assigns this.suffix =
suffix.

Comment on lines 62 to +67
void heal(Hero hero) {
int basePoint = 10;
int recovPoint = (int) (basePoint * this.wand.power);
hero.setHp(hero.getHp() + recovPoint);
int recoverPoint = 20;
int usedPoint = 10;

hero.setHp(hero.getHp() + recoverPoint);
hero.setMp(hero.getMp() - usedPoint);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

heal()이 시전자 MP가 아니라 대상 MP를 차감하고 있습니다.

Line 67에서 hero.setMp(...)를 호출해 대상의 MP를 소모하고 있어, Wizard.mp 상태가 전혀 사용되지 않습니다. 시전자 자원 소모로 수정하는 게 맞습니다.

🔧 제안 수정안
 void heal(Hero hero) {
     int recoverPoint =  20;
     int usedPoint = 10;
+    if (this.mp < usedPoint) {
+        throw new IllegalStateException("마나가 부족합니다.");
+    }

     hero.setHp(hero.getHp() + recoverPoint);
-    hero.setMp(hero.getMp() - usedPoint);
+    this.setMp(this.mp - usedPoint);
 }
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@game/src/main/java/com/survivalcoding/Wizard.java` around lines 62 - 67, The
heal() method in the Wizard class is incorrectly consuming the target hero's MP
instead of the caster's MP. In the heal() method, the line that calls
hero.setMp(hero.getMp() - usedPoint) is decrementing the target's MP, but it
should instead decrement the Wizard's own MP (the caster). Change the MP
deduction to use the Wizard instance's MP property instead of the hero
parameter's MP property to correctly represent resource consumption by the spell
caster.

Comment on lines +6 to +10
- 메소드 override vs 클래스 overload
- String 클리스 상속 못함, final 붙이면 상속 못함.
-
- (왜) 복사붙여넣기의 문제점 (추가, 수정에 시간이 걸림. 소스의 파악이나 관리가 어려워짐.)
- (어떻게) 클래스 상속 키워드: extands, 매소드 상속 키워드: super

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

용어와 오탈자를 바로잡아 주세요.

override/overload는 각각 메서드 재정의 / 메서드 오버로딩을 뜻합니다. 또한 클리스, extands, 매소드는 오탈자라 문서 신뢰도가 떨어집니다.

🛠️ پیشن수정 예시
-- 메소드 override vs 클래스 overload
-- String 클리스 상속 못함, final 붙이면 상속 못함.
-- (어떻게) 클래스 상속 키워드: extands, 매소드 상속 키워드: super
+- 메서드 override vs 메서드 overload
+- String 클래스는 상속할 수 없음. `final`이 붙은 클래스도 상속할 수 없음.
+- (어떻게) 클래스 상속 키워드: extends, 메서드 상속 키워드: super
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@TIL/sample/2026-06-16-상속.md` around lines 6 - 10, Correct the terminology and
spelling errors in the inheritance document to improve credibility. Replace
"override vs 클래스 overload" with proper Korean terminology for "메서드
재정의(override)" and "메서드 오버로딩(overload)". Fix the typos: change "클리스" to "클래스",
"extands" to "extends", and "매소드" to "메서드" throughout the document. These
corrections will ensure the technical terms are accurate and the document is
free of spelling errors that undermine its trustworthiness.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant