ํ์ค์ ์ถ๋ ฅ
- ๊ธฐ๋ณธ์ ์ถ๋ ฅ(BIOS), ํญ์ READY
- ์ฝ์์ ํตํ ๋ฐ์ดํฐ ์ ๋ ฅ+ ์ฝ์๋ก์ ๋ฐ์ดํฐ ์ถ๋ ฅ
- ์๋ฐ์์ ์ ๊ณตํ๋ ํ์ค I/O๋ฅผ ์ํ ์ ์ถ๋ ฅ์คํธ๋ฆผ
in / out / err
- Systemํด๋์ค์ ์ ์ธ๋ ํด๋์ค๋ณ์(static๋ณ์).
- ์ ์ธ๋ถ๋ถ์๋ InputStream, PrintStream์ด ์ ํ์์ง๋ง ์ค์ ๋ก๋ ๋ฒํผ๋ฅผ ์ฌ์ฉํ๋ BufferedInputStream, BufferedOutputStream ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํจ.
- ์ฝ์ ์ ๋ ฅ์ ๋ฒํผ๋ฅผ ๊ฐ์ง๊ณ ์์. ๊ทธ๋์ Backspace ํค๋ฅผ ์ด์ฉํ ํธ์ง์ด ๊ฐ๋ฅ.
ํ์ค์ ์ถ๋ ฅ์ ๋์๋ณ๊ฒฝ
- setOut( ), setErr( ), setIn( )
- ๋ค๋ฅธ ์ ์ถ๋ ฅ ๋์์ผ๋ก ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํจ.
RandomAccessFile
- ํด๋์ค ์ด๋ฆ์ ์๋ฏธ: ํด๋น ํด๋์ค๊ฐ ํ์ผ์ ๋ฌด์์(Random)์ผ๋ก ์ ๊ทผํด์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ธ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค๋ ํน์ฑ์ ๋ฐ์ํ ๊ฒ (+) Access : ์ ๊ทผ์ด๋ผ๋ ์๋ฏธ = ํ์ผ ๋ด์ ์์์ ์์น๋ก ์ ๊ทผํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ธ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ํด๋์ค
- ํ๋์ ํด๋์ค๋ก ํ์ผ์ ๋ํ ์ ์ถ๋ ฅ ๋ชจ๋ ํ ์ ์์.
- I/O๋ก๋ถํฐ ์์X. DataInput,DataOutput ์ธํฐํ์ด์ค๋ฅผ ๋ชจ๋ ๊ตฌํํด์ ์ฝ/์ฐ ๋ชจ๋ ๊ฐ๋ฅํจ.
- ๊ธฐ๋ณธ์๋ฃํ ๋จ์๋ก ๋ฐ์ดํฐ ์ฝ/์ฐ ๊ฐ๋ฅ,
- ์ฅ์ : ํ์ผ์ ์ด๋ ์์น์๋ ์ฝ/์ฐ ๊ฐ๋ฅํจ.
File
- ‘ํ์ผ’์ ๊ธฐ๋ณธ์ ์ด๋ฉด์๋ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ์ ์ถ๋ ฅ ๋์.
- ์๋ฐ์์๋ Fileํด๋์ค๋ฅผ ํตํด์ ํ์ผ, ๋๋ ํ ๋ฆฌ๋ฅผ ๋ค๋ฃฐ ์ ์์.
- ์๋ก์ด ํ์ผ ์์ฑํ๊ธฐ(ํ์ผ ๊ฐ์ฒด๋ง๋ ๋ค๊ณ ํ์ผ ์์ฑ์ ์๋)
- โ File ์ธ์คํด์ค ์์ฑ
- โก์ถ๋ ฅ ์คํธ๋ฆผ ์์ฑ/ CreatNewFile( )ํธ์ถ
- C:/๋ก ์์ํ๋ฉด ๋ชจ๋ ์ ๋ ๊ฒฝ๋ก
์ง๋ ฌํ
- ๊ฐ์ฒด๋ฅผ ๋ฐ์ดํฐ์คํธ๋ฆผ์ผ๋ก ๋ง๋๋ ๊ฒ.
- ๊ฐ์ฒด: ํด๋์ค์ ์ ์๋ ์ธ์คํด์ค๋ณ์์ ์งํฉ (์ฌ์ค์ ํด๋์ค๋ณ์X, ๋ฉ์๋X ์๋ค์ด๊ฐ)
- ObjectInputStream: ์ญ์ง๋ ฌํ
- ObjectOutputStream: ์ง๋ ฌํ
- โณ๋๋ค ๋ณด์กฐ์คํธ๋ฆผ. ๊ฐ์ฒด ์์ฑ ์ ์ ์ถ๋ ฌํ ์คํธ๋ฆผ์ ์ง์ ํด์ค์ผ ํจ.
- ์ญ์ง๋ ฌํ์ ๊ฐ์ฒด ์๋ ํ์ ์ผ๋ก ํ๋ณํ ํด์ฃผ๊ธฐ.
์ง๋ ฌํ ๊ฐ๋ฅํ ํด๋์ค ๋ง๋ค๊ธฐ
- ์ง๋ ฌํํ๊ณ ์ ํ๋ ํด๋์ค๊ฐ java.io.Serializable ์ธํฐํ์ด์ค ๊ตฌํํ๊ธฐ(์๋ฌด๋ฐ ๋ด์ฉ๋ ์๋ ๋น ์ธํฐํ์ด์ค. ๋จ์ง ์ง๋ ฌํ๋ฅผ ๊ณ ๋ คํ์ฌ ์์ฑํ ํด๋์ค์์ ๋ํ๋)
- ์ง๋ ฌํํ๊ณ ์ ํ๋ ํด๋์ค์
- Q.์กฐ์ iv๋ฅผ ์ง๋ ฌํ ๋์์ ํฌํจํ๊ณ ์ถ์ด
- โณโ ์กฐ์ํด๋์ค๊ฐ Serializable ๊ตฌํํ๊ฑฐ๋
- โกwriteObject( ), readObject( )์ถ๊ฐํ๊ธฐ
- Q.์ง๋ ฌํ๊ฐ ์๋๋ ๊ฐ์ฒด์ ๋ํ ์ฐธ์กฐ๊ฐ ์์ ๋
- โณ์ ์ด์ transient๋ฅผ ๋ถ์ฌ์ ์ง๋ ฌํ ์ ์ธํ๊ธฐ
- Q.๋ณด์์ passward๊ฐ์ ์ง๋ ฌํ ์๋๋ ๊ฐ์?
- โณtransient๋ถ์ด๋ฉด ๊ทธ ํ์ ๊ธฐ๋ณธ๊ฐใ ๋ก ์ด๊ธฐํ๋จ.
- Q.์กฐ์ iv๋ฅผ ์ง๋ ฌํ ๋์์ ํฌํจํ๊ณ ์ถ์ด
- ์ง๋ ฌํํ ๊ฐ์ฒด๊ฐ ๋ง์ ๋๋ ์ปฌ๋ ์ ์ ์ ์ฅํด์ ์ง๋ ฌํ ํ๋ฉด ์ข์.
โ ์ง๋ ฌํ ๊ฐ๋ฅํ ํด๋์ค์ ๋ฒ์ ๊ด๋ฆฌ
- ์ง๋ ฌํ๋ ๊ฐ์ฒด๋ฅผ ์ญ์ง๋ ฌํ ํ ๋ ์ง๋ ฌํ ํ์ ๋์ ๊ฐ์ ํด๋์ค๋ฅผ ์ฌ์ฉํด์ผํจ.
- โณํด๋์ค ์ด๋ฆ์ด ๊ฐ์๋ ๋ด์ฉ ๋ณ๊ฒฝ ํ์๋ ์ญ์ง๋ ฌํ ์คํจํจ. ์ญ์ง๋ ฌํ์ ํด๋์ค ๋ฒ์ ์ ๋น๊ตํ๊ฒ ๋๋ฌธ.
- ํด๋์ค ๋ฒ์ ์ ์๋๊ด๋ฆฌํ ์ ์์. serialVersionUID ์ถ๊ฐํ๊ธฐ.
- serialver.exe๋ ํด๋์ค์ serialVersionUID ์๋์์ฑ
'๐ฅ๏ธ ๋ฐฑ์๋ > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Stringํด๋์ค ๋ฉ์๋ ๋ชจ์ (3) | 2023.11.21 |
---|---|
[ch.16] ๋คํธ์ํน (1) | 2023.11.21 |
[ch.15] ์ ์ถ๋ ฅ I/O - ๋ฌธ์๊ธฐ๋ฐ ์คํธ๋ฆผ (1) | 2023.11.21 |
[ch.15] ์ ์ถ๋ ฅ I/O - ๋ฐ์ดํธ ์คํธ๋ฆผ (1) | 2023.11.21 |
[ch.15] ์ ์ถ๋ ฅ I/O (0) | 2023.11.20 |