๐™น๐šŠ๐šŸ๐šŠ

[JAVA] ์ž๋ฐ”์˜ ์ •์„ ch7-1, 2 ์ƒ์†

ํ•ด๋ฒ„๋‹ˆ 2024. 11. 10. 00:10
๋ฐ˜์‘ํ˜•

๋‚จ๊ถ์„ฑ ์ €์ž์˜ ๊ฐ•์˜๋ฅผ ๋ณด๊ณ  ch7์„ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค! 

๋ฉ”๋ชจ ๋Š๋‚Œ์œผ๋กœ ์ •๋ฆฌํ•ด๋ณด์•˜๋‹ค

 

 

https://youtu.be/Pgutf0G3nE4?si=MEmhlr86eM0YQq7-

 

 

 

์ƒ์†์˜ ํŠน์ง•

๐Ÿ“ ๊ธฐ์กด์˜ ํด๋ž˜์Šค๋กœ ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ(์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ)

๐Ÿ“  ๋‘ ํด๋ž˜์Šค๋ฅผ ๋ถ€๋ชจ์™€ ์ž์‹์œผ๋กœ ๊ด€๊ณ„๋ฅผ ๋งบ์–ด์ฃผ๋Š” ๊ฒƒ

class ์ž์‹ํด๋ž˜์Šค extends ๋ถ€๋ชจํด๋ž˜์Šค {
	// ... 
}

 

๐Ÿ“  ์ž์†์€ ์กฐ์ƒ์˜ ๋ชจ๋“  ๋ฉค๋ฒ„๋ฅผ ์ƒ์†๋ฐ›๋Š”๋‹ค(์ƒ์„ฑ์ž, ์ดˆ๊ธฐํ™”๋ธ”๋Ÿญ ์ œ์™ธ) (์กฐ์ƒ : ๋ถ€๋ชจ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ถ€๋ชจ์˜ ๋ถ€๋ชจ~~์˜ ๋ถ€๋ชจ๋„ ํฌํ•จ์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์—)

๐Ÿ“  ์ž์†์˜ ๋ฉค๋ฒ„ ๊ฐœ์ˆ˜๋Š” ์กฐ์ƒ๋ณด๋‹ค ์ ์„ ์ˆ˜ ์—†๋‹ค(๊ฐ™๊ฑฐ๋‚˜ ๋งŽ๋‹ค)

๐Ÿ“  ์ž์†์˜ ๋ณ€๊ฒฝ์€ ์กฐ์ƒ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๋Š”๋‹ค

class Parent {
	int age;
}

class Child extends Parent {
	void play() {
		System.out.println("๋†€์ž~~~");
	}
}

Parent : age ๋งŒ ๊ฐ€์ง

Child : age, play()๋ฅผ ๊ฐ€์ง

 

 

 

 

 

 

 

Point

class Point {
	int x;
	int y;
}

 

์ ์— ๋Œ€ํ•œ class๋ฅผ ์ž‘์„ฑํ•˜์˜€๋‹ค

 

// Point์™€ ๊ด€๋ จ์ด ์—†์Œ
class point3D {
	int x;
	int y;
	int z;
}

point3D๋ฅผ ๋งŒ๋“ค์—ˆ๋Š”๋ฐ ์ด ํด๋ž˜์Šค๋Š” Point์™€๋Š” ๊ด€๋ จ์ด ์—†๋Š” ๋…๋ฆฝ์ ์ธ ๊ฐ์ฒด์ด๋‹ค.

 

 

// Point์™€ ๊ด€๋ จ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— Point๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด ์˜ํ–ฅ์ด ๋ฏธ์นจ
class Point3D extends Point {
	int z;
}

์ด Point3D๋Š” Point์™€๋Š” ๋ถ€๋ชจ ์ž์‹๊ฐ„์˜ ๊ด€๊ณ„๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์— Point๋ฅผ ์ˆ˜์ •ํ•˜๊ฒŒ ๋˜๋ฉด Point3D์—๋„ ์˜ํ–ฅ์ด ๋ฏธ์น˜๊ฒŒ ๋œ๋‹ค.

 

 

 

 

์œ„์˜ ๋‘ ๊ฐ€์ง€ ๋ฐฉ์‹์œผ๋กœ ๋งŒ๋“  Point3D์˜ ๊ฒฐ๊ณผ๋ฌผ์€ ๋™์ผํ•˜๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์ƒ์†์„ ์‚ฌ์šฉํ•˜๋ฉด, Point3D๊ฐ€ Point์˜ ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•˜์—ฌ 3์ฐจ์› ์ขŒํ‘œ๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค๋Š” ์˜๋ฏธ๊ฐ€ ๋” ๋ถ„๋ช…ํ•ด์ง„๋‹ค

 

 

 

 

๋ฐ˜์‘ํ˜•