๐Ÿ ๊ตญ๋น„์ง€์›ํ•™์›/๐Ÿ“–Java ์ˆ˜์—…

๐Ÿ ๊ตญ๋น„์ง€์›ํ•™์›/๐Ÿ“–Java ์ˆ˜์—…

    [Java] ํ•™์› 230112(๋ชฉ) Thread, ์ปดํ“จํ„ฐ๊ฐ„ ๋ฐ์ดํ„ฐ ์ฃผ๊ณ  ๋ฐ›๊ธฐ

    packet : ํŒจํ‚ท ๋ฐฉ์‹์˜ ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ๊ฐ€ ์ „๋‹ฌํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ํ˜•์‹ํ™”๋œ ๋ธ”๋ก ================================== **์ปดํ“จํ„ฐ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๊ธฐ - ์—ฐ๊ฒฐ : Socket - ๋ฐ์ดํ„ฐ ์†ก.์ˆ˜์‹  : Stream 1. ํฌํŠธ์—ด๊ธฐ ServerSocket server = new ServerSocket(50000); 2. ์„œ๋ฒ„๋กœ ์ ‘์†์„ ์‹œ๋„ Socket client = new Socket("์„œ๋ฒ„ip", 50000); 3. ์ ‘์†์ž ์†Œ์ผ“์ด ๋“ค์–ด์˜ค๋ฉด ์ ‘์†์ž ์†Œ์ผ“์„ ๋ฐ›๋Š”๋‹ค. Socket socket = server.accept( ); 4. (Server๋ณด๋‚ด๋Š” ์ชฝ)์†Œ์ผ“์—์„œ ์ถœ๋ ฅ์ŠคํŠธ๋ฆผ ์–ป๊ธฐ OutputStream os = socket.getOutputStream( ); OutputStream์€ Str..

    [Java] ํ•™์› 230111(์ˆ˜) Network Programming, OSI 7Layer Reference Mode, TCP, UDP, ์†Œ์ผ“ํ†ต์‹ 

    **Network Programming - C/S( Client / Server) Programming - java.net ํŒจํ‚ค์ง€์—์„œ ๊ด€๋ จ ํด๋ž˜์Šค๋ฅผ ์ œ๊ณต. - ์ปดํ“จํ„ฐ๋ผ๋ฆฌ ์—ฐ๊ฒฐ ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ํ”„๋กœ๊ทธ๋žจ. - Network – ์„œ๋กœ ๋‹ค๋ฅธ ์ปดํ“จํ„ฐ๋ฅผ ์—ฐ๊ฒฐํ•˜๊ธฐ์œ„ํ•œ ๋ฐ์ดํ„ฐ ํ†ต์‹ ๋ง. NIC - ์ปดํ“จํ„ฐ์—์„œ ๋„คํŠธ์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์นด๋“œ Hub - ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ปดํ“จํ„ฐ๋ฅผ ์—ฐ๊ฒฐํ•˜๊ณ , ์ฐพ๊ธฐ ์œ„ํ•œ ์žฅ๋น„ Router - ์—ฌ๋Ÿฌ ๊ฐœ์˜ Hub๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ , ๋ชฉ์ ์ง€ ์ปดํ“จํ„ฐ์˜ ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ํ…Œ์ด๋ธ”๋กœ ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌ Protocol - ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ธฐ ์œ„ํ•œ ์ „์†ก๊ทœ์•ฝ **OSI 7Layer Reference Mode (๋ฌผ๋ฐ๋„ค์ „์„ธํ‘œ์‘) - ๊ฐœ๋ฐฉํ˜• ์‹œ์Šคํ…œ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ๊ฒƒ์„ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋„๋ก ์ •์˜ํ•ด๋†“์€ 7๊ณ„์ธต. ์‹ค์ œ ๊ตฌ์„ฑ์€ TCP/IP ..

    [Java] ํ•™์› 230110(ํ™”) ์ถœ๋ ฅ Stream, instance ์“ฐ๊ธฐ / ์ฝ๊ธฐ, transient ์ง๋ ฌํ™” ๋ฐฉ์ง€ ํ‚ค์›Œ๋“œ

    **์ถœ๋ ฅ Stream - ํŒŒ์ผ์ถœ๋ ฅ * FileOutputStream - ์ƒ์„ฑ๊ณผ ๋™์‹œ์— ํŒŒ์ผ์ด ์—†๋‹ค๋ฉด ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ , ํŒŒ์ผ์ด ์žˆ๋‹ค๋ฉด ๋ฎ์–ด์“ด๋‹ค. - binary๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ก ํ•  ์ˆ˜ ์žˆ๋‹ค. (๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ๋‚ด๋ณด๋‚ผ ์ˆ˜ ์žˆ๋‹ค) - ์†๋„๊ฐ€ ๋น ๋ฆ„ ์‚ฌ์šฉ๋ฒ• 1. ์ƒ์„ฑ) FileOutputStream fos = new FileOutputStream("ํŒŒ์ผ๊ฒฝ๋กœ"); // ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉด error, ํŒŒ์ผ์ด ์กด์žฌํ•˜๋ฉด ๊ทธ๋ƒฅ ๋ฌป์ง€๋„ ์•Š๊ณ  ๋ฎ์–ด์”€, ํŒŒ์ผ์ด ์—†๋‹ค๋ฉด ์ƒ์„ฑ 2. ์ŠคํŠธ๋ฆผ์— ํŒŒ์ผ๋กœ ๊ธฐ๋กํ•  ๋‚ด์šฉ์„ ์“ด๋‹ค. fos.write(๊ฐ’); 3. ์ŠคํŠธ๋ฆผ์— ๊ธฐ๋ก๋œ ๋‚ด์šฉ์„ ๋ชฉ์ ์ง€๋กœ ๋ถ„์ถœ fos.flush(); 4. ์ŠคํŠธ๋ฆผ ๋Š๋Š”๊ฒŒ ๋งค์šฐ ์ค‘์š” (์ŠคํŠธ๋ฆผ์— ๊ธฐ๋ก๋œ ๋‚ด์šฉ์„ ๋ชฉ์ ์ง€๋กœ ๋ถ„์ถœํ•˜๊ณ  ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง„๋‹ค) fos.close(); * F..

    [Java] ํ•™์› 230109(์›”) Stream ์—ฐ๊ฒฐ, ํŒŒ์ผํด๋ž˜์Šค, 16bit Stream์œผ๋กœ ํŒŒ์ผ ์ฝ๊ธฐ, 8bit Stream๊ณผ 16bit Stream์œผ๋กœ ํŒŒ์ผ ์ฝ๊ธฐ

    **Stream ์—ฐ๊ฒฐ (์—†๋Š” ๊ธฐ๋Šฅ ์‚ฌ์šฉ) - ์ž…๋ ฅ๋œ ํ•œ ์ค„์„ ์ฝ์–ด ๋“ค์ด๊ฑฐ๋‚˜ ํ•œ๊ธ€์„ ์ž…๋ ฅ ๋ฐ›์•„์•ผ ํ•  ๋•Œ InputStream = ํ‚ค๋ณด๋“œ์—์„œ ๋ˆŒ๋ฆฐ ํ‚ค๋ฅผ ์–ป๊ธฐ ์œ„ํ•ด ์ž…๋ ฅ๋œ ํ•œ ๊ธ€์ž๋งŒ ์ฝ์–ด๋“ค์ž„ read() //8bit BufferedReader = ์ค„(\n์ „๊นŒ์ง€) ๋‹จ์œ„๋กœ ์ฝ์–ด๋“ค์ž„ readLine() //16bit * InputStreamReader 8๋น„ํŠธ์ŠคํŠธ๋ฆผ๊ณผ 16๋น„ํŠธ์ŠคํŠธ๋ฆผ์„ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ํด๋ž˜์Šค charset๋ณ€ํ™˜๊ฐ€๋Šฅ new BufferedReader(new InputStreamReader(System.in)); ์ˆœ์„œ ) 1. 16bit Stream๊ณผ 8bit Stream ์—ฐ๊ฒฐ InputStreamReader isr = new InputStreamReader( System.in ); 2. ์ค„๋‹จ์œ„๋กœ ์ฝ์–ด ๋“ค์ผ ..

    [Java] ํ•™์› 230106(๊ธˆ) throws, throw, IO(input / Output) Stream

    **throws - method์•ˆ์—์„œ ๋ฐœ์ƒ๋œ ์˜ˆ์™ธ๋ฅผ ๋˜์ง€๋Š” ๊ฒƒ. - method๋ฅผ ํ˜ธ์ถœํ•œ ๊ณณ์—์„œ ์˜ˆ์™ธ๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค. - method์•ˆ์—์„œ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด, ์‹คํ–‰์„ ๋ฉˆ์ถ”๊ณ  ํ˜ธ์ถœํ•œ ๊ณณ์˜ catch๋กœ ์ด๋™. ํ„ฐ์งˆ๋•Œ๋„ ์žˆ๊ณ  ์•ˆํ„ฐ์งˆ๋•Œ๋„ ์žˆ๋‹ค. - ์—…๋ฌด์ฒ˜๋ฆฌ ์ฝ”๋“œ์™€ ์˜ˆ์™ธ์ฒ˜๋ฆฌ ์ฝ”๋“œ๋ฅผ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.(์žฅ์ ) ๋ฌธ๋ฒ•) ์ ‘๊ทผ์ง€์ •์ž ๋ฐ˜ํ™˜ํ˜• method๋ช…(๋งค๊ฐœ๋ณ€์ˆ˜,,,,) throws ์˜ˆ์™ธ์ฒ˜๋ฆฌํด๋ž˜์Šค,,,{ public void work(String className) throws ClassNotFoundException{ int i = 0; Class.forName( className ); // ClassNotFoundException์ด ๋ฐœ์ƒํ•˜์ง€๋งŒ method์— ์ •์˜๋œ throws์— ์˜ํ•ด // try~cathc๋ฅผ ํ•˜์ง€ ์•Š์•„๋„ ๋œ..

    [Java] ํ•™์› 230105(๋ชฉ) Font, Exception Handling, ์˜ˆ์™ธ์ฒ˜๋ฆฌ

    ์ „๋‚  ๋ณต์Šต has a ๊ด€๊ณ„๋Š” ๋””์ž์ธ๊ณผ ์ด๋ฒคํŠธ๋ฅผ ๊ฐ๊ฐ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์„œ๋กœ ํฌํ•จ is a ๊ด€๊ณ„๋Š” ๋‘˜๋‹ค ํ•ฉ์ณ์„œ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ณต์žก๋„๊ฐ€ ์ƒ์Šน. (is a ๊ด€๊ณ„) ์›์€ ์ ์ด๋‹ค. (์ž์‹์€ ๋ถ€๋ชจ์ด๋‹ค) (์ž์‹์€ ๋ถ€๋ชจ์™€ ๊ฐ™๋‹ค=method์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๋ถ€๋ชจ๋ผ๋ฉด ๋ชจ๋“  ์ž์‹์„ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค) (method์•ˆ์—์„œ๋Š” ๋ถ€๋ชจ๋ฅผ ํ†ตํ•ด์„œ ๋‹ค์–‘ํ•œ ์ž์‹์„ ์‚ฌ์šฉํ•œ๋‹ค=๊ฐ์ฒด๋‹คํ˜•์„ฑ) MyClass mc = new MyClass( ); WindowAdapter wa = new MyClass( ); WindowListener wl = new MyClass( ); (has a ๊ด€๊ณ„) awt, swing์„ ๋ฐฐ์šฐ๋Š” ์ด์œ ๋Š” ํด๋ž˜์Šค๊ฐ„์— ์ƒ์† ๊ด€๊ณ„๋ฅผ ์•Œ ์ˆ˜ ์žˆ๋‹ค. OOP์–ธ์–ด์˜ 3๊ฐ€์ง€ ํŠน์ง• ์บก์Аํ™”(์ ‘๊ทผ์ œํ•œ์ž,getter/setter) ์ƒ์†(๋‹ค์ค‘ ์ƒ์†,์ธํ„ฐํŽ˜..

    [Java] ํ•™์› 230104(์ˆ˜) WindowEvent, FileDialog

    **WindowEvent ์ฒ˜๋ฆฌ - ์‚ฌ์šฉ์ž๊ฐ€ ์œˆ๋„์šฐ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๋™์ž‘์„ ํ•˜๋ฉด ๋ฐœ์ƒ๋˜๋Š” Event. *XxxAdapter class - ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ๊ฐ€ abstract method๋ฅผ ํ•˜๋‚˜ ์ด์ƒ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๋ฉด ์‚ฌ์šฉ์˜ ํŽธ์˜์„ฑ์„ ์œ„ํ•ด ๋ฏธ๋ฆฌ ๊ตฌํ˜„ํ•˜์—ฌ ๋งŒ๋“ค์–ด๋‘” ํด๋ž˜์Šค. Adapter ํด๋ž˜์Šค๋Š” Listener์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋ชจ๋‘ ๊ตฌํ˜„ํ•˜์—ฌ ๋งŒ๋“ค์–ด๋‘” ํด๋ž˜์Šค ====================================== **Dialog - ๋ถ€๋ชจ์ฐฝ์—์„œ ๋™์ž‘ํ•˜๋Š” ์ž์‹ ์ฐฝ - ๋ถ€๋ชจ์ฐฝ์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ ์ด์™ธ์˜ ๋ถ€๊ฐ€์ ์ธ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•œ ์ฐฝ - ๋ถ€๋ชจ์ฐฝ : ์ฃผ ๊ธฐ๋Šฅ์„ ์ œ๊ณต Frame์œผ๋กœ ์ฃผ ๊ธฐ๋Šฅ ์ œ๊ณต - ์ž์‹์ฐฝ : ๋ถ€ ๊ธฐ๋Šฅ์„ ์ œ๊ณต Dialog๋กœ ๋ถ€๊ฐ€์ ์ธ ๊ธฐ๋Šฅ ์ œ๊ณต Frame ํ•œ ๊ฐœ ์‚ฌ์šฉ Dialog ์—ฌ๋Ÿฌ๊ฐœ ์‚ฌ์šฉ * modal ์ž..

    [Java] ํ•™์› 230103(ํ™”) MVC Pattern, JComboBox, Event Handling

    ====================== **MVC Pattern์ด ๋„์ž…๋œ ์ปดํฌ๋„ŒํŠธ๋“ค - JComboBox, JList, JTable - MVC ( Model View Controller )์€ ์—…๋ฌด๋ฅผ ๋ฐ์ดํ„ฐ, ํ™”๋ฉด, ์—…๋ฌด๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ๊ฐœ๋ฐœํ•˜๋Š” ๋””์ž์ธ ํŒจํ„ด - M : ๋ฐ์ดํ„ฐ์ฒ˜๋ฆฌ - V : ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ™”๋ฉด์„ ์ œ๊ณต - C : ์—…๋ฌด๋กœ์ง์„ ์ฒ˜๋ฆฌ ํŒŒ์ผ ํ•˜๋‚˜์— ๋‹ค ์‚ฌ์šฉ ์žฅ์  : ํŒŒ์ผ๊ด€๋ฆฌ๊ฐ€ ํŽธํ•˜๊ณ , ๊ฐ’ ๋„˜๊ธฐ๊ธฐ ํŽธํ•˜๊ณ , ์—๋Ÿฌ์ฒ˜๋ฆฌ ํŽธํ•จ ๋‹จ์  : ๋ณต์žก๋„ ์ƒ์Šน, ์œ ์ง€๋ณด์ˆ˜ ํž˜๋“ค๋‹ค. MVC ์‚ฌ์šฉ ์žฅ์  : ๋ณต์žก๋„ ๋‚ฎ์•„์ง, ์œ ์ง€๋ณด์ˆ˜ ํŽธํ•˜๋‹ค. ๋‹จ์  : ํŒŒ์ผ๊ด€๋ฆฌ๊ฐ€ ์–ด๋ ต๊ณ , ๊ฐ’ ๋„˜๊ธฐ๊ธฐ ์–ด๋ ต๊ณ , ์—๋Ÿฌ์ฒ˜๋ฆฌ๊ฐ€ ๋ถˆํŽธํ•จ ํ”„๋กœ๊ทธ๋žจ์˜ ์ƒ๋ช…์ด ๋๋‚  ๋•Œ : ์œ ์ง€๋ณด์ˆ˜์˜ ๋น„์šฉ์ด ๊ฐœ๋ฐœ๋น„์šฉ๋ณด๋‹ค ์ ์„ ๋•Œ *JComboBox - JComboBox.java (..