"๊ฐ์ฒด ์ด๊ธฐํ์ ๋ํด ๋ง์๋๋ฆฌ๊ณ ์ถ์ต๋๋ค. ๊ฐ์ฒด๋ฅผ ์์ฑํ ๋ ์ ๋๋ก ์๋ํ๋ ๋ฐ ํ์ํ ์ ๋ณด๊ฐ ์๋ ๊ฐ์ฒด์ ์ก์ธ์คํ๋ ์ํฉ์ ํผํ๊ธฐ ์ํด ๊ฐ์ฒด๋ฅผ ๋ณ์์ ์ด๊ธฐ ๊ฐ์ ํ ๋นํด์ผ ํฉ๋๋ค ."
"ํ์ผ ๊ฐ์ฒด๋ฅผ ์๊ฐํด ๋ด ์๋ค. ํ์ผ์ ํ์ํ ์ต์ํ์ ์ ๋ณด๋ ์ด๋ฆ์ ๋๋ค. ์ด๋ฆ ์๋ ํ์ผ์ ๋ง๋๋ ๊ฒ์ ์ด๋ฆฌ์์ ์ผ์ ๋๋ค. "
"ํ์ผ ์์ ์ ์ํด MyFile ํด๋์ค๋ฅผ ์์ฑํ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ๊ฐ ๊ฐ์ฒด์ ํ์ํ ์ ๋ณด๋ ๋ฌด์์ ๋๊น?"
"๊ฐ์ฒด์ ๊ด๋ จ๋ ํ์ผ ์ด๋ฆ?"
"๊ทธ๋ ์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ ค๋ฉด ์ด๊ธฐํ () ๋ฉ์๋๋ฅผ ํด๋์ค์ ์ถ๊ฐํฉ๋๋ค. ์ด๋ ๊ฒ ์๊ฒผ์ต๋๋ค."
class MyFile
{
private String filename = null;
public void initialize(String name)
{
this.filename = name;
}
โฆ
}
"๋ฉ์๋๋ฅผ ํธ์ถํ์ฌ ๊ฐ์ฒด๋ก ์์ ํ ์ ์๋๋ก ์ด๊ธฐํ ๋ฉ์๋๋ฅผ ์ถ๊ฐํ์ต๋๋ค . ์ด๊ธฐํ ๋ฉ์๋๋ฅผ ํธ์ถํ ์งํ์ ๊ฐ์ฒด์ ๋ฉ์๋๋ฅผ ํธ์ถํ ์ ์์ต๋๋ค. ๊ฐ์ฒด๋ก ์์ ํ ์ ์์ผ๋ฉด ๋ฌดํจ๋ผ๊ณ ํฉ๋๋ค . ๊ทธ๋ ์ง ์์ผ๋ฉด ๊ฐ์ฒด๊ฐ ์ ํจ ํ๋ค๊ณ ๋งํฉ๋๋ค . ์ด๊ธฐํ ๋ฉ์๋์ ์ฃผ์ ์์ ์ ๊ฐ์ฒด๊ฐ ๊ฐ์ฒด๋ฅผ ์ ํจํ๊ฒ ๋ง๋๋ ๋ฐ ํ์ํ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ ๊ฒ์ ๋๋ค. "
"์๊ฒ ์ด์."
"์ด์ ์ฐ๋ฆฌ ์์ ์ ๋ ์ด๋ ต๊ฒ ๋ง๋ค์ด ๋ด ์๋ค. ๋๋ ๋ค์ ์๊ฐํด ๋ณด๋ฉด ๋ ์ฝ์ต๋๋ค. ์ด๋ป๊ฒ ๋ณด๋๋์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ์ฐ๋ฆฌ ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ ํ๋ก๊ทธ๋๋จธ๊ฐ ์ ์ฒด ๊ฒฝ๋ก ๋์ ํ์ผ์ ๋๋ ํ ๋ฆฌ์ ์งง์ ์ด๋ฆ๋ง ์ ๋ฌํ๋ ๊ฒ์ด ๋ ํธ๋ฆฌํ๋ค๊ณ ์๊ฐํ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ํ๋ก๊ทธ๋๋จธ๊ฐ ์ด ์์ ์ ์ํํ ์ ์๋๋ก ๋ค๋ฅธ ์ด๊ธฐํ ๋ฉ์๋( Java๋ฅผ ์ฌ์ฉํ๋ฉด ๋์ผํ ์ด๋ฆ์ ๊ฐ์ง ์ฌ๋ฌ ๋ฉ์๋๋ฅผ ์์ฑํ ์ ์์ ) ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค . ํด๋์ค๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค."
class MyFile
{
private String filename = null;
public void initialize(String name)
{
this.filename = name;
}
public void initialize(String folder, String name)
{
this.filename = folder + name;
}
โฆ
}
"ํ ๊ฐ์ง ๋: ํ์ฌ ํ์ผ ์์ ํ์ผ์ ์์ ๋ณต์ฌ๋ณธ์ ๋ง๋ค์ด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค."
"์ด ์์ ์ ์ํํ๋ ๋ฐฉ๋ฒ์ ๋ง๋ค ์ ์์ต๋๊น?"
"๊ทธ๋. ๋ด๋ด."
class MyFile
{
private String filename = null;
public void initialize(String name)
{
this.filename = name;
}
public void initialize(String folder, String name)
{
this.filename = folder + name;
}
// The filename will be stored in the same directory as file.
public void initialize(MyFile file, String name)
{
this.filename = file.getFolder() + name;
}
โฆ
}
"๊ทธ๋ฆฌ๊ณ ๋ด๊ฐ ์ํ๋ ๋งํผ ์ด๋ฌํ ๋ฐฉ๋ฒ์ ๋ง๋ค ์ ์์ต๋๊น?"
"๊ธ์, ์ด์ ๊ฐ ์๋ ํ. ํ์ง๋ง ์๋ฐํ ๋งํ๋ฉด ๋ค, ์ํ๋ ๋งํผ."
"์ธ์ ์ด๊ธฐํ ๋ฉ์๋๋ฅผ ํธ์ถํด์ผ ํ๋์?"
"๊ฐ์ฒด๋ฅผ ๋ง๋ ์งํ์ ์ ํจํ๊ฒ ๋ง๋ญ๋๋ค."
์: |
---|
|
|
|
"์ด getFolder() ๋ฉ์๋๋ ๋ฌด์์ ๋๊น?"
"์ค์ ๋ก ์ฌ๊ธฐ์ ์ฝ๋๋ฅผ ํ์ํ์ง ์์์ต๋๋ค. ํ์ผ์ด ์ ์ฅ๋ ํด๋์ ์ด๋ฆ๊ณผ ํจ๊ป ๋ฌธ์์ด์ ๋ฐํํ๋ ๋ฉ์๋๋ฅผ ๋ํ๋ ๋๋ค."
GO TO FULL VERSION