๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Lang/โ˜• Java

(19)
โ˜• Java * ์‚ฌ์น™์—ฐ์‚ฐ์ž์™€ Casting์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž! Java์—๋„ ์ˆ˜๋งŽ์€ ์—ฐ์‚ฐ์ž๊ฐ€ ์žˆ๊ณ  ๊ฐ ์—ฐ์‚ฐ์ž๋“ค์€ ๋ˆ„๊ฐ€ ๋จผ์ € ์‹คํ–‰๋ ์ง€์— ๋Œ€ํ•œ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง„๋‹ค. ์—ฐ์‚ฐ์‹์€ ๋ฐ˜๋“œ์‹œ ํ•˜๋‚˜์˜ ๊ฐ’์„ ์‚ฐ์ถœํ•œ๋‹ค. ์—ฐ์‚ฐ์ž ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๊ฐ™์œผ๋ฉด, ์—ฐ์‚ฐ ๋ฐฉํ–ฅ์„ ๋”ฐ๋ผ ์—ฐ์‚ฐ๋œ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์—ฐ์‚ฐ๋ฐฉํ–ฅ์€ ์ขŒ์—์„œ ์šฐ๋กœ(→) ํ˜๋Ÿฌ๊ฐ์œผ๋กœ ์•„๋ž˜ ํ‘œ์—์„œ ํ๋ฆฟํ•œ ์—ฐ์‚ฐ ๋ฐฉํ–ฅ์€ ๋‹ค ์ขŒ์—์„œ ์šฐ๋กœ ํ˜๋Ÿฌ๊ฐ€๋Š” ๊ฒƒ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๐Ÿคฏ ๋งŽ๋‹ค! ์•„~ ์ด๋Ÿฐ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง€๋Š”๊ตฌ๋‚˜! ๋งŒ ๊ธฐ์–ตํ•˜๋ฉด์„œ, ์˜ค๋Š˜์€ ์‚ฌ์น™์—ฐ์‚ฐ์ž๋ฅผ ๊ฐ€์ง€๊ณ  Casting์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž. 1. ์ผ๋‹จ ์‚ฌ์น™์—ฐ์‚ฐ์ž ์‚ฌ์‹ค ๋ณ„๊ฑฐ ์—†๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์•Œ๊ณ  ์žˆ๋Š” ์‚ฌ์น™์—ฐ์‚ฐ์— ํ•œ ๊ฐ€์ง€๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ๊ณ , ์ฃผ์˜ ํ•ด์•ผ ํ•  ์—ฐ์‚ฐ์ด 2๊ฐ€์ง€ ์žˆ๋‹ค๋Š” ์ •๋„? ์‚ฌ์น™ ์—ฐ์‚ฐ์ž๋“ค๋ผ๋ฆฌ๋Š” ์œ„ ์šฐ์„ ์ˆœ์œ„ ๊ทœ์น™์— ๋”ฐ๋ผ +, - ๋ณด๋‹ค *, /, %๊ฐ€ ์šฐ์„ ์ ์œผ๋กœ ๊ณ„์‚ฐ๋œ๋‹ค! ์–ด๋–ป๊ฒŒ ์ƒ๊ฒผ๋Š” ๊ณ ? ์–ด๋–ป๊ฒŒ ์“ฐ๋Š” ๊ณ ? ๋ญ˜ ํ•˜๋Š” ๊ณ ..
โ˜• Java * ์ž๋ฃŒํ˜•์„ ์•Œ์•„๋ณด์ž Hi ๐Ÿค—! ... ๊ณต๋ถ€ํ•˜์ž. ๋งŒ์•ฝ ์•„๋ž˜ ๋‚ด์šฉ ์ค‘ ์ฐธ์กฐ ์ž๋ฃŒํ˜•์— ๋Œ€ํ•ด ์•„์ง ์•„๋ฆฌ์†กํ•˜๋‹ค๋ฉด ์ •์ƒ์ด๋‹ค๐ŸŽ‰. ์ฒ˜์Œ ๊ณต๋ถ€ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด๋ผ๋ฉด ์•„์ง ๋ชจ๋ฅด๋Š” ๋‚ด์šฉ์ด๋‹ˆ๊นŒ ๊ทธ๋ƒฅ ์ €๋Ÿฐ ๊ฒŒ ์žˆ๊ตฌ๋‚˜ ํ•˜๋ฉด์„œ ๋„˜์–ด๊ฐ€๋„๋ก ํ•˜์ž. ๋‚˜์ค‘์—” '์•„~ ๊ทธ๊ฑฐ' ํ•˜๊ฒŒ ๋  ๊ฑฐ๋‹ค. ์ž๋ฃŒํ˜•(Data type)์ด๋ž€? ๋ณ€์ˆ˜์— ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ํƒ€์ž…์„ ์˜๋ฏธํ•œ๋‹ค. ์ž๋ฃŒํ˜•์€ ๋ณ€์ˆ˜์— ์ €์žฅ์ด ๋˜๋Š” ๊ฐ’๋“ค์˜ ํ˜•ํƒœ์™€ ํ˜€์šฉ ์—ฐ์‚ฐ ๋“ฑ์„ ๊ฒฐ์ •ํ•œ๋‹ค. Java๋Š” type์„ ๊ฐ•๋ ฅํ•˜๊ฒŒ ๊ทœ์ œํ•˜๋Š” ์–ธ์–ด! Java์—์„œ๋Š” ๋ฐ˜๋“œ์‹œ type์„ ์ง€์ •ํ•˜์—ฌ์•ผ ํ•˜๊ณ  type์ด ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋Š” ๋ณ€์ˆ˜์— ์ €์žฅํ•  ์ˆ˜ ์—†๋‹ค. ํฌ๊ฒŒ ๋‚˜๋ˆ„์–ด ๊ธฐ์ดˆํ˜•(primitive type)๊ณผ ์ฐธ์กฐํ˜•(reference type)์˜ ๋‘ ๊ฐ€์ง€ type์œผ๋กœ ๋‚˜๋‰œ๋‹ค. ๊ธฐ์ดˆํ˜• ๋ณ€์ˆ˜์—๋Š” ๋ณ€์ˆ˜์˜ ๊ฐ’์ด ์ €์žฅ๋˜์–ด ์žˆ์œผ๋‚˜ ์ฐธ์กฐํ˜• ๋ณ€์ˆ˜์—๋Š” ๊ฐ์ฒด์˜ ์œ„์น˜..
โ˜• Java * print, printf, println, Scanner - ์ž…์ถœ๋ ฅ ํ•ด๋ณด๊ธฐ! Scanner์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ผญ ์ƒ๋‹จ์— java.util.Scanner์„ import ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค! import java.util.Scanner; ๊ทธ ์ดํ›„์—๋Š” ์ƒ์„ฑ๋œ scanner๋ฅผ ์ด์šฉํ•˜์—ฌ ์ด๊ฒƒ์ €๊ฒƒ ๊ฐ’์„ ๋ฐ›์•„์˜ค๋ฉด ๋˜๋Š”๋ฐ ์ด๋ฆ„๊ณผ ๋‚˜์ด๋ฅผ ๋ฐ›๊ณ  ์ถœ๋ ฅํ•ด๋ณด์ž! import java.util.Scanner; class TestScanner { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // scanner ๊ฐ์ฒด ์ƒ์„ฑ System.out.print("Enter your name : "); String name = scanner.next(); System.out.println("Your name is \""..
โ˜• Java * ์‹คํ–‰์‹œ์ผœ๋ณด๊ธฐ Hello world! ( peat. ํ•œ๊ธ€ํฌํ•จ ์‹คํ–‰ ) ํ˜„ ํŽ˜์ด์ง€๋Š” Windows๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค! java, javac ๋ช…๋ น์–ด ์ž…๋ ฅ์€ Linux, Windows, OS X ์—์„œ ๋˜‘๊ฐ™์œผ๋‚˜ ๊ทธ ์™ธ ๋‹ค๋ฅธ ์„ค๋ช…์€ windows ๊ธฐ๋ฐ˜์ด์˜ค๋‹ˆ ์ฐธ๊ณ ๋ฐ”๋ž๋‹ˆ๋‹ค! ์„ค์น˜๋ฅผ ๋‹ค ๋๋ƒˆ๋‹ค๋ฉด Hello world๋ฅผ ํ•ด๋ณด๋Š”๊ฒŒ ํ•„์ˆ˜! ์•„์ง ํ™˜๊ฒฝ ๊ตฌ์„ฑ์„ ์•ˆ ํ–ˆ๋‹ค๋ฉด? ๊ฐ์ž OS์— ๋งž๋„๋ก ํ™˜๊ฒฝ๊ตฌ์„ฑ์„ ํ•˜๋„๋ก ํ•˜์ž! ๋งŒ์•ฝ ๋‚ด OS๊ฐ€ windows๋ผ๋ฉด? ์•„๋ž˜ ๊ธ€์„ ์ฐธ๊ณ  ํ•˜์ž! โ—‡ 2021/01/20 - [SW/โ˜• Java] - โ˜• Java ํ™˜๊ฒฝ๊ตฌ์„ฑ * JDK, JRE ์„ค์น˜ ๋ฐ ํ™˜๊ฒฝ ๋ณ€์ˆ˜, ๊ฒฝ๋กœ ์„ค์ • ํ•˜๊ธฐ! for Windows 1. ๋ฉ”๋ชจ์žฅ์„ ์—ด์ž! 2. ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ž! ์ง์ ‘ ์ž…๋ ฅํ•ด๋„ ๋˜์ง€๋งŒ, ์ดˆ๋ณด์ž๋ผ๋ฉด ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ๋ณต๋ถ™ํ•ด์„œ ์‚ฌ์šฉํ•˜์ž! - Java๋Š” class ์ด๋ฆ„์˜ ์ฒซ ๊ธ€์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ๋‚˜..
โ˜• Java * JDK, JRE ์‚ญ์ œ๋ฅผ ํ• ๋ž˜์š”! for Windows ๊ธฐ๋ณธ ์„ค์น˜ ์‹œ ๊ฒฝ๋กœ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์•˜๋‹ค๋ฉด JDK์™€ JRE๋Š” C:\Program Files\Java ์•„๋ž˜์— ์žˆ์„ ๊ฒƒ ์ด๋‹ค! ํด๋”๋ฅผ ์ฐพ์•„์„œ ์›ํ•˜๋Š” ๋ฒ„์ „์„ ๋ฐ”๋กœ ์ง€์›Œ๋„ ๋˜๋Š”์ง€๋Š” ์ž˜๋ชจ๋ฅด๊ฒ ๋‹ค.. ๊ณผ์—ฐ ๊น”๋”ํ•˜๊ฒŒ ์ง€์›Œ์งˆ๋Ÿฐ์ง€.. ;x; ๊ฒฝ๋กœ๋ฅผ ๋ณ€๊ฒฝํ•˜์—ฌ ์–ด๋””์žˆ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ๊ฑฐ๋‚˜, ๋‚˜ ์ฒ˜๋Ÿผ ํด๋”๋ฅผ ์ง€์šฐ๋Š”๊ฒŒ ๊น”๋”ํ•œ ๋ฐฉ๋ฒ•์ธ์ง€ ํ—ท๊ฐˆ๋ฆฐ๋‹ค๋ฉด ์ œ์–ดํŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์šฐ๋„๋ก ํ•˜์ž. 1. ์ œ์–ดํŒ > ํ”„๋กœ๊ทธ๋žจ > ํ”„๋กœ๊ทธ๋žจ ์ œ๊ฑฐ ๋ฅผ ์ฐพ์•„ ๋“ค์–ด๊ฐ„๋‹ค. 2. ์•„๋ž˜ ์‚ฌ์ง„์— ๋ณด์ด๋Š” ์ฐฝ์ด ์—ด๋ฆฐ๋‹ค. 3. ์•„๋ž˜ ์‚ฌ์ง„์— ๊ฒ€์ƒ‰์ฐฝ(๋นจ๊ฐ„ ๋ฐ•์Šค)์— java๋ฅผ ์ž…๋ ฅํ•œ๋‹ค. ์œ„์™€ ๊ฐ™์€ ์ฐฝ์ด ๋œจ๋ฉด ์ด๋ฆ„์„ ๋ณด๊ณ  ์„ค์น˜๋œ ๋ฒ„์ „์„ ํ™•์ธ ํ•˜์—ฌ ํ•„์š” ์—†๋Š” ๋ฒ„์ „์„ ์‚ญ์ œํ•œ๋‹ค! ๋!
โ˜• Java ํ™˜๊ฒฝ๊ตฌ์„ฑ * JDK, JRE ์„ค์น˜ ๋ฐ ํ™˜๊ฒฝ ๋ณ€์ˆ˜, ๊ฒฝ๋กœ ์„ค์ • ํ•˜๊ธฐ! for Windows ์„ค์น˜์ „์— ํ˜น์‹œ ์ง€๊ธˆ ์„ค์น˜ํ•˜๊ณ  ์žˆ๋Š”๊ฒŒ ๋ฌด์—‡์ธ๊ฐ€? ํ•˜๋Š” ์ƒ๊ฐ์ด ๋“ ๋‹ค๋ฉด ๋‹ค์Œ ํŽ˜์ด์ง€๋ฅผ ๋จผ์ € ์ฝ๊ณ ์˜ค์ž! ๐Ÿ‘‰ 2021/01/20 - [SW/โ˜• Java] - ๋„์ ๋„์  * Compiler, JVM, JDK, JRE ์ตœ์‹ ๋ฒ„์ „์€ 8์ด ์•„๋‹ˆ๋ผ 15์ด์ง€๋งŒ, 8์„ ์„ค์น˜ํ•˜๋„๋กํ•œ๋‹ค. ๋”๋ณด๊ธฐ Editor์—์„œ ํŠน์ • ๋ฒ„์ „์„ ์„ ํƒํ•˜์—ฌ ์ปดํŒŒ์ผ ํ•  ์ˆ˜๋„ ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ์•Œ๊ณ  ์žˆ์ง€๋งŒ, ๋”ฑํžˆ ๊ทธ๋Ÿด ํ•„์š”์—†๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณผ์ •์ด๋ผ๋ฉด ๊ทธ๋ƒฅ ํ•„์š”์—†๋Š” ๋ฒ„์ „์„ ์‚ญ์ œ ํ•˜๊ธธ ๋ฐ”๋ž€๋‹ค. ๐Ÿ‘‰ 2021/01/20 - [SW/โ˜• Java] - โ˜• Java * JDK, JRE ์‚ญ์ œ๋ฅผ ํ• ๋ž˜์š”! for Windows Why? ์™œ ์ตœ์‹ ๋ฒ„์ „์ด ์•„๋‹Œ 8์„ ์„ค์น˜ํ•˜๋Š” ๊ฐ€! ๊ฐœ๋ฐœ์ž๋“ค์€ ์ƒˆ๋กœ์šด ๊ฑธ ์ข‹์•„ํ•œ๋‹ค. ์ง„์งœ๋‹ค. ์ƒˆ๋กœ์šด ๊ฑธ ๋ณด๋ฉด ํ•ด๋ณด๊ณ  ์‹ถ๋‹ค. ๊ทธ๋ ‡์ง€๋งŒ ๋ณ€ํ™”ํ•œ๋‹ค๋Š” ๊ฑด ์ƒˆ๋กœ์šด ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ..
๋„์ ๋„์  * Compiler, JVM, JDK, JRE Compile, Complier ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” Programe Lauguage๋Š” High Language๋กœ ์‚ฌ๋žŒ์ด ๋ณด๊ณ  ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๋˜์–ด์žˆ๋‹ค. (Python, C, Java, C++ ๋“ฑ๋“ฑ) ํ•˜์ง€๋งŒ ๊ธฐ๊ณ„๊ฐ€ ์ดํ•ดํ•˜๋Š” ์–ธ์–ด๋Š” Low Language๋กœ 0101์˜ ์ˆซ์ž๋“ค๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๊ณ  ์‚ฌ๋žŒ๋“ค์ด ์ž‘์„ฑํ•  ์ˆ˜๊ฐ€ ์—†๋‹ค.. (์ฒœ์žฌ๋ฉด ๊ฐ€๋Šฅํ• ๊นŒ?) ์ฆ‰, ์šฐ๋ฆฌ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ๊ธฐ๊ณ„๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ฒˆ์—ญํ•ด์ฃผ๋Š” ํ†ต์—ญ์‚ฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. High๋ฅผ Low๋กœ ๋ฒˆ์—ญํ•ด์ฃผ๋Š” ๊ฒƒ์„ Compile์ด๋ผ๊ณ  ํ•˜๋ฉฐ, ํ†ต์—ญํ•ด์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ(?) Compiler๋ผ๊ณ  ํ•œ๋‹ค! Android, OS X(MAC), Windows, Linux ๋“ฑ๋“ฑ๋“ฑ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” OS์˜ ์ข…๋ฅ˜๊ฐ€ ๋งŽ๋‹ค. ๋น„์Šท๋น„์Šทํ•ด๋„ ์„ธ๋ถ€๋‚ด์šฉ์ด ๋‹ค๋ฅธ OS๋„ ์žˆ๊ณ  ์•„์˜ˆ ๋‹ค๋ฅธ OS๋“ค๋„ ์žˆ๋‹ค..