πŸŒΉΒ μ •λ¦¬ by μž₯λ―Έ(https://velog.io/@newbiekim/)

μžλ°”μ˜ λͺ¨λ“  ν΄λž˜μŠ€λŠ” Object 클래슀λ₯Ό μƒμ†λ°›λŠ”λ‹€.

즉, Object ν΄λž˜μŠ€λŠ” μžλ°”μ˜ μ΅œμƒμœ„ ν΄λž˜μŠ€λ‹€.

μ»΄νŒŒμΌλŸ¬λŠ” μ•„λ¬΄λŸ° 클래슀둜 μƒμ†ν•˜μ§€ μ•ŠμœΌλ©΄ μžλ™μœΌλ‘œ extends Objectλ₯Ό μ‚½μž…ν•΄ Object 클래슀λ₯Ό μƒμ†ν•œλ‹€.

class A {

}
class B extends A {

}

μœ„μ™€ 같이 클래슀 Aλ₯Ό 상속받아 Bλ₯Ό λ§Œλ“€μ—ˆμ„ λ•Œ λΆ€λͺ¨ 클래슀인 AλŠ” 아무것도 μƒμ†ν•˜μ§€ μ•Šμ•˜λ‹€. μ΄λ ‡κ²Œ 되면 μ»΄νŒŒμΌλŸ¬λŠ” extends Objectλ₯Ό μ‚½μž…ν•˜κ³  κ²°κ΅­ Object ← A ← B의 상속 관계가 λ§Œλ“€μ–΄μ§„λ‹€.

class A extends Object {

}

λ”°λΌμ„œ μžλ°”μ˜ λͺ¨λ“  ν΄λž˜μŠ€λŠ” μ–΄λ–€ 객체둜 λ§Œλ“€λ“ μ§€ Object νƒ€μž…μœΌλ‘œ μ„ μ–Έν•  수 μžˆλ‹€.


println() λ©”μ„œλ“œλŠ” λ‹€μ–‘ν•œ νƒ€μž…μ„ 좜λ ₯ν•˜κΈ° μœ„ν•΄ μ—¬λŸ¬ 개의 μž…λ ₯λ§€κ°œλ³€μˆ˜ νƒ€μž…μœΌλ‘œ μ˜€λ²„λ‘œλ”©λΌ μžˆλ‹€.

System.out.println(new A())와 같이 μ‚¬μš©μžκ°€ 직접 λ§Œλ“  클래슀 νƒ€μž…λ„ 좜λ ₯ν•  수 μžˆλ‹€. 이것이 κ°€λŠ₯ν•œ μ΄μœ λŠ” λ¬΄μ—‡μΌκΉŒ?