๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
0112 Thread ์ฌ์ฉ๋ฒ ์๋ช ์ฃผ๊ธฐ Thread ์์ Runnable ๊ตฌํ
*Thread - ๋์์ ์ผ์ ์ํํด์ผ ํ ๋ ( ๋์์ method๋ฅผ ํธ์ถํด์ผ ํ ๋ ) - Multi Thread ์ง์ - ์์ Process (ํ๋ก์ธ์ค: cpu๊ฐ ํ๋ฒ์ ์ฒ๋ฆฌํด์ผ ํ๋ ์ผ์ ๋จ์, ์ฌ์ฉ์๊ฐ ์คํํ๋ ํ๋ก๊ทธ๋จ + os๊ฐ ํ์์ ์ํด ์คํํ๋ ํ๋ก๊ทธ๋จ) -Thread๋ ์คํํ ๋๋ง๋ค ์์๊ฐ ๋ฌ๋ผ์ง -์ข ๋ฃ์๊ฐ์ ์ ์ ์์ -์์๊ณผ ๊ตฌํ์ผ๋ก ์ฌ์ฉํ ์ ์์ - cpu scheduling ( ์๋ถํ , ์ ์ ํ ) ์๋ถํ ( time sharing ) – OS์์ ์ฌ์ฉ, ํ๋ก์ธ์ค ์ด์ธ์ ์์ ๊ด๋ฆฌ์ ํ์( ์์ ๊ด๋ฆฌ์๊ฐ ๋งค์ฐ ์ค์) ๋ฉํฐ ํ์คํน: ๋์์ ํ๋ก๊ทธ๋จ ์คํ ๋ฉํฐ ์ฐ๋ ๋: ๋์์ ํ๋ก์ธ์ค ์ฒ๋ฆฌ ์ ์ ํ (running time) – Java์์ ์ฌ์ฉ, ์์ ๊ด๋ฆฌ์๊ฐ ํ์ ์์ ๋จผ์ ์์ฑ๋๋ ..
0112 ๊ตญ๋น ์์ ์๋ฐ ์ปดํจํฐ๊ฐ ๋ฐ์ดํฐ ์ฃผ๊ณ ๋ฐ๊ธฐ, DataOutputStream
*์ปดํจํฐ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๊ธฐ - ์ฐ๊ฒฐ : Socket - ๋ฐ์ดํฐ ์ก.์์ : Stream ์๋ฒ ํด๋ผ์ด์ธํธ 1.ํฌํธ์ด๊ธฐ ServerSocket server=new ServerSocket(50000); 2.์๋ฒ๋ก ์ ์์ ์๋ Socket client=new Socket(“์๋ฒip”,50000); 3.์ ์์ ์์ผ์ด ๋ค์ด์ค๋ฉด ์ ์์ ์์ผ์ ๋ฐ๋๋ค. Socket socket=server.accept(); 4. ์์ผ์์ ์ถ๋ ฅ ์คํธ๋ฆผ ์ป๊ธฐ DataOutputStream dos= new DataOutputStream( socket.getOutputStream() ); 4.์์ผ์์ ์ ๋ ฅ์คํธ๋ฆผ ์ป๊ธฐ DataInputStream dis= new DataInputStream( socket.getInputStream() );..
0111 ๊ตญ๋น ์์ ์๋ฐ ๋คํธ์ํฌ ํ๋ก๊ทธ๋๋ฐ OSI 7Layer Reference Model TCP UDP 3way hand shake ์์ผํต์
*Network Programming - C/S( Client / Server) Programming - java.net ํจํค์ง์์ ๊ด๋ จ ํด๋์ค๋ฅผ ์ ๊ณต - ์ปดํจํฐ๋ผ๋ฆฌ ์ฐ๊ฒฐํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ํ๋ก๊ทธ๋จ - Network : ์๋ก ๋ค๋ฅธ ์ปดํจํฐ๋ฅผ ์ฐ๊ฒฐํ๊ธฐ ์ํ ๋ฐ์ดํฐ ํต์ ๋ง - NIC (Network Interface Card) : LAN card RJ-45, UTP cable ์ฐ๊ฒฐ ( ์ ์กํ๋ ๋ฐ์ดํฐ์ ์์ ๋ฐ๋ผ ๋๊ป๊ฐ ๋ฌ๋ผ์ง๋ค CAT.1 ~ CAT.8 ) ( MAC์ฃผ์ ํ ๋น( ์ ์กฐ์ฌ ), IP์ฃผ์ ํ ๋น( ์ฌ์ฉ์ ํ ๋น - ์ปดํจํฐ๋ฅผ ์๋ณํ๊ธฐ ์ํ ์ฃผ์) ) - public ip - ๊ณ ์ ip private ip - ์ ๋ip NIC – ์ปดํจํฐ์์ ๋คํธ์ํฌ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ์นด๋ Hub – ์ฌ๋ฌ ๊ฐ์ ์ปดํจํฐ๋ฅผ ..
0110~0111 ๊ตญ๋น ์์ ์๋ฐ ์ ์ถ๋ ฅ ์คํธ๋ฆผ FileOutputStream FileWriter BufferedWriter ํ์ผ ๋ณต์ฌ ์ธ์คํด์ค ์ฐ๊ธฐ ์ฝ๊ธฐ
*์ถ๋ ฅ Stream *FileOutputStream -์์ฑ๊ณผ ๋์์ ํ์ผ์ด ์๋ค๋ฉด ํ์ผ์ ์์ฑํ๊ณ , ํ์ผ์ด ์๋ค๋ฉด ๋ฎ์ด์ -binary ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํ ์ ์์ ( ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋ด๋ณด๋ผ ์ ์์) -์๋๊ฐ ๋น ๋ฆ *FileWriter -์์ฑ๊ณผ ๋์์ ํ์ผ์ด ์๋ค๋ฉด ํ์ผ์ ์์ฑํ๊ณ , ํ์ผ์ด ์๋ค๋ฉด ๋ฎ์ด์ -๋ฌธ์์ด ๋ฐ์ดํฐ๋ง ๊ธฐ๋ก -์๋๊ฐ ๋๋ฆผ *์ฌ์ฉ๋ฒ 1.์์ฑ) FileOutputStream fos=new FileOutputStream(“ํ์ผ๊ฒฝ๋ก”); -๋๋ ํ ๋ฆฌ๊ฐ ์กด์ฌํ์ง ์์ผ๋ฉด error (๋๋ ํ ๋ฆฌ๋ File ํด๋์ค๋ก ๋ง๋ ๋ค) -ํ์ผ์ด ์กด์ฌํ๋ฉด ๋ฎ์ด์, ํ์ผ์ด ์์ผ๋ฉด ์์ฑ 2. ์คํธ๋ฆผ์ ํ์ผ๋ก ๊ธฐ๋กํ ๋ด์ฉ์ ์ด๋ค. fos.write( ๊ฐ ); 3. ์คํธ๋ฆผ์ ๊ธฐ๋ก๋ ๋ด์ฉ์ ๋ชฉ์ ์ง๋ก ๋ถ์ถ fos.flush();..
0106~0109 ๊ตญ๋น ์์ ์๋ฐ ์ ์ถ๋ ฅ ์คํธ๋ฆผ File ํด๋์ค FileInputStream BufferedReader inputStreamReader
*IO(Input/ Output) Stream - JVM ์ธ๋ถ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ๋ค์ด๊ฑฐ๋, JVM ๋ด๋ถ์ ๋ฐ์ดํฐ๋ฅผ JVM์ธ๋ถ๋ก ๋ด๋ณด๋ผ ๋ ์ฌ์ฉํ๋ ํด๋์ค๋ค -๋ฐ์ ์๋ ๋ฐ์ดํฐ๋ฅผ JVM ์์ผ๋ก ์ฝ์ด๋ค์ด๊ธฐ ์ํด ๊ด(Stream) ํ์ - java.io ํจํค์ง์์ ๊ด๋ จ ํด๋์ค๋ค์ ์ ๊ณต -๋จ๋ฐฉํฅ ์คํธ๋ฆผ ( InputStream์ ์ ๋ ฅ๋ง, OutputStream์ ์ถ๋ ฅ๋ง ) -8bit stream, 16bit stream ์ ๊ณต -Stream์ ๊ฒฐํฉ ์ฌ์ฉ์ด ๊ฐ๋ฅ (์ฑ๋ฅ ํฅ์, ๊ธฐ๋ฅ ํฅ์) 8bit stream: Byte ๊ธฐ๋ฐ stream, ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ธ ์ ์์ 16bit stream: String ๊ธฐ๋ฐ stream, ๋ฌธ์์ด ๋ฐ์ดํฐ๋ง ์ฝ๊ณ , ์ธ ์ ์์ *8bit Stream - byte๊ธฐ๋ฐ ์คํธ๋ฆผ - ๋ชจ๋ ..
์๋ฐ์ ์ ์ ๊ธฐ์ดํธ ์ฐ์ต๋ฌธ์ ์ฑํฐ 2 ๊ธฐ๋ณธํ ํค์๋ ๋ณ์ ์์ ๋ฆฌํฐ๋ด ๊ฐ ๋ฐ๊พธ๊ธฐ ๋ฑ
[2-1] ๋ค์ ํ์ ๋น ์นธ์ 8๊ฐ์ ๊ธฐ๋ณธํ์ ์๋ง์ ์๋ฆฌ์ ๋ฃ์ผ์์ค (primitive type). ์ข ๋ฅ/ํฌ๊ธฐ 1byte 2byte 4byte 8byte ๋ ผ๋ฆฌํ ๋ฌธ์ํ ์ ์ํ ์ค์ํ ๋๋ณด๊ธฐ ๋ต: ์ข ๋ฅ/ํฌ๊ธฐ 1byte 2byte 4byte 8byte ๋ ผ๋ฆฌํ boolean ๋ฌธ์ํ character ์ ์ํ byte short int long ์ค์ํ float double [2-2] ๋ค์ ์ค ํค์๋๊ฐ ์๋ ๊ฒ์? (๋ชจ๋ ๊ณ ๋ฅด์์ค) 1. if 2. True 3. NULL 4. Class 5. System ๋๋ณด๊ธฐ ๋ต: 2,3,4,5 Java์์๋ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ณํจ ํค์๋๋ค์ ์๋ฌธ์๋ก ์์ abstract, boolean, break, byte, case, catch, class, continue, default,..
1223 ๊ตญ๋น ์์ ์๋ฐ ํธ๋ฆฌํ ํด๋์ค๋ค Mathํด๋์ค
*ํธ๋ฆฌํ ํด๋์ค๋ค (๊ฑฐ์ java.utilํจํค์ง์ ์กด์ฌ) ๋ฌธ์์ด : String, StringBuffer, StringBuilder, StringTokenzier ์ํ : Math ๋ ์ง : Date, Calendar ํฌ๋ฉง : SimpleDateFormat, DecimalFormat ๋์ : Random ์ง์ญ : Locale *์ํ๊ด๋ จ : Math - ์์ฑ์๊ฐ ์์ผ๋ฏ๋ก ๊ฐ์ฒดํํ์ง ์๊ณ ์ฌ์ฉํ๋ ํด๋์ค - ๊ฐ์ฒด์ ๊ฐ์ ์ ์ฅํ์ง ์์ => ๊ฐ์ฒดํ ํ ํ์ ์์ => ์์ฑ์ ํ์ ์์ ์ฌ์ฉ๋ฒ) ๊ฒฐ๊ณผ=Math.method๋ช ( ๊ฐ ); - ์ ๋๊ฐ : 10 =Math.abs( -10 ); 10.1=Math.abs( -10.1 ); - ๋ฐ์ฌ๋ฆผ : ( ์์ ์ฒซ ๋ฒ์งธ ์๋ฆฌ์์ ๋ฐ์ฌ๋ฆผ ์คํ) ์ ์ = Math.round( ..
1223 ๊ตญ๋น ์์ ์๋ฐ ๊ฐ์ฒดํ import๋ฌธ static import๋ฌธ
*๊ฐ์ฒดํ -์ผ๋ฐ์ ์ธ ๊ฐ์ฒดํ ๊ฐ์ฒด๋ช ์ผ๋ก method๋ ๋ณ์๋ฅผ ์ฌ๋ฌ ๋ฒ ์ฌ์ฉํ ๋ (์์ํด๋์ค๋ก๋ง ๊ฐ์ฒดํ) – ๋ถ๋ชจํด๋์ค์ ์์๊ณผ ์์ํด๋์ค์ ๋ชจ๋ ์์ ์ฌ์ฉ ํด๋์ค๋ช ๊ฐ์ฒด๋ช =new ์์ฑ์(); - ์์ฑ ํ method๋ ๋ณ์๋ฅผ ์ฌ์ฉํ์ง ์์ ๋ ๊ฐ์ฒด๋ช ์ ๊ฐ์ฒด๋ฅผ ์ ์ฅํ์ง ์๋๋ค. new ์์ฑ์(); - ์์ฑ ํ ํ๋์ method๋ง ์ฌ์ฉํ ๋ new ์์ฑ์().method(); - is a ๊ด๊ณ์ ๊ฐ์ฒดํ ์ฌ์ฉํ ๋=> ๊ฐ์ฒด ๋คํ์ฑ ๋ถ๋ชจํด๋์ค์ ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ Override๋ method๋ง ํธ์ถ ๋ถ๋ชจํด๋์ค๋ช ๊ฐ์ฒด๋ช =new ์์ํด๋์ค ์์ฑ์(); ๊ตฌํ์ธํฐํ์ด์ค๋ช ๊ฐ์ฒด๋ช =new ๊ตฌํํด๋์ค์ ์์ฑ์(); - inner class ๊ฐ์ฒดํ ๋ฐ๊นฅํด๋์ค๋ช .์์ชฝํด๋์ค๋ช ๊ฐ์ฒด๋ช =๋ฐ๊นฅํด๋์ค๊ฐ์ฒด๋ช .new ์์ชฝํด๋์ค์ ์์ฑ์(..