際際滷

際際滷Share a Scribd company logo
Java tutorial
Javacafe 讌豌
螳
 Job : 4
 Email : puri8467@gmail.com
 Blog : https://blog.naver.com/puri8467
 覦  : https://github.com/Danpatpang/javacafe
覈谿
1. 覦襯 覦一  伎
2. 覦  覲
3. 覦  螻殊
4. 覦 蠍一 覓碁
覦襯  伎
Naver 讌in
Stackoverflow
覦襯 覦一  伎
1. 覦襯 覦一郁鍵  襷 
2. 襷 豬 蠍壱
3. 螳豌 讌 襦蠏碁覦 語
4. 覦 ろ 
5. 覿 API
6. 螳ロ 螳覦 
7. 瑚朱 
8. 貉るる一 襯 讌
9. れ瑚 れ 襴貅伎 
10. 覦一郁鍵  (C 觜)
https://www.youtube.com/watch?v=lh934b4ds-4
TIOBE 襦蠏碁覦 語  
https://www.tiobe.com/tiobe-index/
Github 2018 octoverse
https://octoverse.github.com/projects#languages
螳覦 蟲 
′襴 れ 蟆 蟆郁骸 Computerjobs 譟壱
螳覦 蟲 
語 ′襴 in
Java 5442蟇 2273蟇
C, C++, C# 4623蟇 1865蟇
Python 733蟇 646蟇
JavaScript 1708蟇 696蟇
PHP 1179蟇 807蟇
SQL 1947蟇 833蟇
<2019 4 2譯殊姶 蠍一>
覦螳  るジ 語企ゼ 覦一  伎
1. 覦螳 譯朱 語願 蠍郁讌 - ろ  讌螻殊 覿ク 蟇
2. る狩  覦, 覦ろ襴渚語 覦蟆
3. JCP襯 牛 蟯襴, るジ 語伎 觜 襴 覦
覦  覲  覲伎.
覦  覲
1991
Sun Microsystems
 螻襷  4語 螳覦 Oak.
1995
Java襦 覈豺 覲蟆.
2009
Sun Microsystems螳 る狩願骸 語 覲.
2017
Java EE 蠍.
危企曙  JakartaEE襦 覲蟆.
C, C++ 谿伎
蠍一ヾ C 螳豌伎 蠍磯レ 豢螳 C++ 襷れ企慨.
 誤磯 螳語り~ 螳豌伎ル 豢螳螻~
 願碓 企至 襷れ? 覓 覲旧″...
 譬 伎... 豌覿 螳豌 讌レ朱 襷れ.
 誤 蠍壱... 覲旧″伎覃  !
 襴曙 語企ゼ 襷れ!
Write Once Run Anywhere!
覦 豌
覦 煙
Tiobe 螻手碓 襦蠏碁覦 語
誤磯穴骸 覦 襷
覦 碁 覿覿 螳覦螻  覓企, WWW 豢.
(1991 伎るゼ 牛 譴, 1993 覯  50  500)
伎 螳ロ 語企ゼ 谿場給.
(誤磯血 れ 貉危, OS, CPU襦 豎 蟯 覿 ろ)
螳  誤磯血朱 豐 覲蟆.
Java 譯殊 襴企Μ讀 ろ襴
Version Date Issues
1.0 1996 1 Oak襦 豢, 1.0.2 覯覿 Java襦 覿襴蠍 
1.1 1997 2 AWT, Inner class, JDBC, RMI, JIT 貉危朱, 貊 牛
1.2 1998 12 襴, Swing GUI, Collections 豢螳, J2SE 1.2襦 蠍
1.3 2000 3 HotSpot JVM, JNDI, JavaSound 豢螳
1.4 2002 2 蠏 , NIO, XML  牛, IPv6 讌, Java Web Start
1.5 2004 9 Generics, Autoboxing/Unboxing, Enumerations, static imports
1.6 2006 12 Security, JavaSE 1.6朱 蠍
1.7 2011 7 Multi Exception catch, Type Inference, Null safe Method
invocation, String in Switch, Automatic Resource Management
1.8 2014 3 Lambda Expression, Streams, Method Reference
1.9 2017 9 Jshell, HTTP/2, private 誤壱伎 覃
一危瑚 伎 伎
Java  覿襯
Java SE
覦 譴 .
Jakarta EE (蟲 JavaEE)
蠍一 伎 覯 伎 麹 .
Java ME
覯 ろ 蟆曙 麹 .
Java FX
一ろ  螳覦 覦 覦壱襯  . (GUI 殊企襴 螻)
Jakarta EE(Java EE)
る狩 語伎 2017 8 ろ 2014 10 ~ 2016 3 る狩伎 願屋 EE 伎
覦 襭?
覦 覩碁
覦 語企 ろる 蟲 覓企襦   .
る狩伎 JDK 螻手 覦 覲蟆渚. (蟲 殊伎  蟲 覈)
覦 覓企讌襷, JDK 襭.
蟲 蠍
襴企Μ讀 譯手鍵覲 一危
襭  
1. 蠍一ヾ 殊伎るゼ  蟲襷ろ 蠍一  覲 X.
2.  願鍵螳 覿伎る 蠍一 OpenJDK襯 .
3. ろ語 語 覲蟆.
OpenJDK?
Java SE -ろ  蟲豌.
GPLv2 殊伎 + 豢螳 殊伎るゼ 磯ゴ螻 .
譬襯 : Oracle, Zulu, Red Hat, Red Hat, IBM, IntelliJ
OpenJDK 覓語
れ  襦螳 襷讌 .
誤煙 覓語螳 螳?
ろ れ願鍵 谿語螳 朱 一る所 譯暑.
覓語螳 蟆殊  螳 豌襴螻 豈 讌 蟆瑚?
炎骸 焔 谿企 螳?
覦 覩碁
企至 螳讌 覓企 覈襯碁...
覦 轟
1. 伎煙  語
2. 螳豌 讌 語
3.  ろ 貊 讌
4. 覃覈襴  蟯襴
5. れ 襴貅伎 螳覦 螳
6. 覃 る襯 所 蟲
7.  襦 讌
8. 襷螳 ろ  殊企襴
覦  螻殊
Program
OS
Hardware
朱 襦蠏碁
Java Program
JVM
OS
Hardware
Java 襦蠏碁
VS
覦  螻殊
.java .class
JVM 覯
覦危 貊
javac.exe
(貉危)
java.exe
(JVM)
讌 企慨.
1. 覦 れ企 覦 れ
https://www.oracle.com/technetwork/java/javase/downloads/
2. 蟆 覲 れ
https://macchiato.tistory.com/9
3. 襦 れ讌 
java -version
javac version
4. 覈 襦語 java 覈轟 ろ
JRE, JDK, JVM
JRE(Java Runtime Environment)
覓朱Μ朱 譟伎 JVM 蟲 .
  殊企襴 + JVM
JDK(Java Development Kit)
JRE + 螳覦 
JVM(Java Virtual Machine)
豢 襾語.
覦危 貊螳 ろ   壱 蟆 螻.
貊 螳
企(class)
覃(method)
覈豪(statement)
企, 螳豌, 語ろ伎
https://alfredjava.wordpress.com/2008/07/08/class-vs-object-vs-instance/
企, 螳豌, 語ろ伎
Object(螳豌)
 瑚 螳豌企  企朱 2螳讌 譯殊 轟 螳讌螻 .
 企, 伎 螳 襯 螳讌覃 蟇穴鍵, 蠍一 螳  螳讌.
谿 蟆曙  , 讌螻 螳 襯 螳讌覃, 觚危 , 蠍一 覲 螳  .
語伎 螳豌企 れ瑚 螳豌伎 螳朱 .
  ,  郁 朱 蟲焔 .
語伎 螳豌企  襯 ロ螻 覃襯 牛  語.
Class(企)
企る 螳豌企ゼ 襷   "襴"  "豌讌"企.
蠍磯蓋朱 企る ,  , 覃,  覃, 煙襦 蟲煙 .
 企れ ( 企)襯 讌 覃, 覃 企れ (企 郁鍵) 企 .
煙 企れ 襦 語ろ伎るゼ 襷  .
Instance(語ろ伎)
語ろ伎る 螳豌企ゼ 企 企れ 螻 覲旧覲語企.
企れ  語ろ伎り 焔覃, JVM 企 企れ 語ろ伎れ  覃覈襴 螻糾 麹伎.
讌 企慨.
1. 覦  貉危
javac CommandTest.java
2. 覦危 貊 ろ
java CommandTest
java -classpath ./ test.CommandTest
3. 覦危 貊 貉危
javap CommandTest.class
4. Javadoc 
javadoc CommandTest.java
覦  螻殊
覦  螻殊
Stack and Heap
Stack and Heap
Stack and Heap (GC)
Stack and Heap (GC)
https://danpatpang.github.io
Stack and Heap (GC)
https://danpatpang.github.io
https://danpatpang.github.io
Stack and Heap (GC)
https://danpatpang.github.io https://danpatpang.github.io
https://danpatpang.github.io
覲
螳 ロ   覃覈襴 螻糾
覲
朱 蠏豺
1. 覓語襯 蟲覿  .
2. 貊企襦 蠍 覲螳 螳ロ.
3. 襦   .
4. 轟 覓語 _, $襷 .
5. 曙企 蠍讌.
貊 螳企 蠏豺
1. 企 企 豌 蠍  覓語襯 . (ex. class JavaExam01)
2.  企 企伎 覲 企 豺企 蠍磯 . (ex. numOfApple)
3.  覿 覓語, 伎郁鍵 _襦 豌危.
譯殊
 //, /* */, /** */襯 .
 javadoc !
 貊襯 譯殊!
企誤伎 る
@author 煙
@exception 覃  
@param 覃 襷り覲
@return 覃 覦 螳
@see るジ 譯殊 蟯 襷
@since 襴企Μ讀 蠍磯
@throws 覃 
@version 企れ 覯
comment.UnicodeExam
譯殊
一危 
覦 一危 
Primitive  Reference 
boolean int char  Class Array Enum
一危 
 一危 覃覈襴 蠍 覯
boolean 谿瑚骸 蟇一 1 Byte true, false
char 覓語 2 Byte 貊 覓語
byte

1 Byte -128 ~ 127
short 2 Byte -32,768 ~ 32,767
int 4 Byte -2,147,483,648 ~ 2,147,483,647
long 8 Byte
-9,223,372,036,854,775,808 ~
9,223,372,036,854,775,807
float
れ
4 Byte -3.4E38 ~ 3.4E38
double 8 Byte -1.7E308 ~ 1.7E308
 覲
int num = 10000;
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 0 0
byte num2 = (byte) num;
?
 覲
int num = 10000;
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 0 0
byte num2 = (byte) num;
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 0 0
 覲
int num1 = (int) (char) (byte) -1;
int num2 = (int) (short) (byte) -1;
System.out.println(num1);
System.out.println(num2);
?
String
朱朱 覓語れ 覦一.
覦 覓語れ 覦一伎 企 螳豌.
(覃覈襴襯  朱 蟯襴蠍 !)
一一
1. 讀螳 一一
2. 一 一一
3. 觜蟲 一一
4. 觜 一一
5. 朱Μ 一一
6.  一一
7. 狩 一一
一一 一 
一  一一 伎
1() ( ), [ ], . 蟯, 蟯, 
2 !(朱Μ not), ~(觜語 not), +(), -(), ++, --  一一
3 *, /, %(襾語 螳)
一 一一
4 +, -
5 <<, >>, <<<  一一
6 <. <=, >, >=
蟯螻 一一
7 ==, !=
8 &(AND)
觜 一一9 ^(XOR)
10 |(OR)
11 &&(AND)
朱Μ 一一
12 ||(OR)
13 譟郁唄? A:B (譟郁唄 谿語企 A, 蟇一企 B襯 ろ) 狩 一一
14 =, +=, -=, *=, %=, <<=, >>=, &=, ^=, ~= ,  一一
一一 覯 る
++ ++op1
op1++
op1 = op1 + 1
-- --op1
op1--
op1 = op1  1
讀螳 一一
一 一一
一一 覯 る
+ op1 + op2
- op1 - op2
* op1 * op2
/ op1 / op2
% op1 % op2 op1 op2襦  襾語
一 一一
operator.OperatorExam02
一 一一
覦 一 一一 int
(, 襴磯一一 蟆曙 )
觜蟲 一一
一一 覯 る
> op1 > op2 op1 op2覲企  蟆曙 true
>= op1 >= op2 op1 op2覲企 蟇磯 螳 蟆曙 true
< op1 < op2 op1 op2覲企  蟆曙 true
<= op1 <= op2 op1 op2覲企 蟇磯 螳 蟆曙 true
== op1 == op2 Op1螻 op2螳 螳 蟆曙 true
!= op1 != op2 Op1螻 op2螳 るゼ 蟆曙 true
觜 一一
一一 覯 る
& op1 & op2 觜  朱Μ螻(AND)
| op1 | op2 觜  朱Μ(OR)
^ op1 ^ op2 觜  覦壱 朱Μ(XOR)
~ ~op1 觜  覲伎(覿)
>> op1 >> op2 op1 op2襷 るジ讓曙朱 企(覿 O)
<< op1 << op2 op1 op2襷 殊曙朱 企
(企  觜豺語 0朱 豈企.)
>>> op1 >>> op2 op1 op2襷 るジ讓曙朱 企(覿 X)
朱Μ 一一
一一 覯 る
&& op1 && op2 op1螻 op2 覈 true 蟆曙 true
|| op1 || op2 op1螻 op2 譴 朱 true 蟆曙 true
! !op1 op1 true 企 false, false企 true
 一一
一一 覯 る
+= op1 += op2 op1 = op1 + op2
-= op1 -= op2 op1 = op1 - op2
*= op1 *= op2 op1 = op1 * op2
/= op1 /= op2 op1 = op1 / op2
%= op1 %= op2 op1 = op1 % op2
&= op1 &= op2 op1 = op1 & op2
|= op1 |= op2 op1 = op1 | op2
^= op1 ^= op2 op1 = op1 ^ op2
A += B A = A + B 螳 蟆手?
A += B A = A + B
(1) A += B
A = (Type) ((A) op (B))
Type A襯 磯手.
(2) A = A + B
A = A op B
覦 蠍磯蓋 一 一一 int.
狩 一一
譟郁唄?  1 :  2;
- 譟郁唄 true 蟆曙  1 ろ.
- 譟郁唄 false 蟆曙  2 ろ.
狩 一一
蟆郁骸?
狩 一一
蟆郁骸? X88
1. 殊一一 襭 螳 蟆曙,
企 襭朱 蟆郁骸襯 碁.
2. 殊一一螳 int襦 覲 螳ロ 朱,
 1 襭朱 蟆郁骸襯 碁.
3.  蟆曙一 企麹讌  蟆曙,
殊一一 譴  襭朱 蟆郁骸襯 碁.
Scanner
レ 覦   螳豌.
jdk1.5覿 豢螳.
java.util.Scanner 豺.
覃 る
Next() れ 一 螳語.
nextInt() れ int 一 螳語.
nextLine() れ 殊語 螳語.
hasNextLine() れ 殊語 朱 true.
Scanner
scanner.ScannerExam01, 02
蟆郁骸?
num  : 10
str  :
num : 10
str :
?
蟆郁骸?
Scanner.nextInt()
Scanner.nextLine()
10 n 10 n
n
if 覓
condition.ConditionExam01
switch-case 覓
condition.ConditionExam02
for 覓
loop.LoopExam01, 02
for 覓
loop.LoopExam01, 02
while 覓, do while 覓
loop.LoopExam03
覦一
螳   覲襯  覓苦朱 る 蟆
score[0] score[1] score[2] score[3] score[4]
int score[]  int[] score襦 
豐蠍壱 覦覯
1. int[] score = {1, 2, 3, 4, 5}
2. int[] score = new int[5];
3. int[] score;
score = new int[] {1, 2, 3, 4, 5};
覦一伎 豐蠍 螳
覿襯 一危  豐蠍郁
蠍磯蓋 () Byte[]
Char[]
Short[]
Int[]
Long[]
0
u0000
0
0
0L
蠍磯蓋 (れ) Float[]
Double[]
0.0f
0.0
蠍磯蓋 (朱Μ) Boolean[] False
谿語^  企[]
誤壱伎[]
Null
Null
覦 貊 ろ
- る狩 覦 貊 ろ 螳企
https://www.oracle.com/technetwork/java/codeconventions-150003.pdf
- 蟲蠍 覦 貊 ろ 螳企
https://google.github.io/styleguide/javaguide.html
Q&A
螳矧!

More Related Content

What's hot (18)

Javascript 覯 螳企 襴
Javascript 覯 螳企 襴Javascript 覯 螳企 襴
Javascript 覯 螳企 襴
ETRIBE_STG
Tcpl 14 語襴
Tcpl 14 語襴Tcpl 14 語襴
Tcpl 14 語襴
Java lambda
Java lambdaJava lambda
Java lambda
Hyosang Hong
覦ろ襴渚
覦ろ襴渚 覦ろ襴渚
覦ろ襴渚
讌 覲
襦語ろ磯 E03 - Javascript intro.
襦語ろ磯 E03 - Javascript intro.襦語ろ磯 E03 - Javascript intro.
襦語ろ磯 E03 - Javascript intro.
Young-Beom Rhee
襴: SOA ろ
襴:  SOA  ろ襴:  SOA  ろ
襴: SOA ろ
譴 螳
=求メ 梶=梶 求≡=
=求メ 梶=梶 求≡= =求メ 梶=梶 求≡=
=求メ 梶=梶 求≡=
Yong Joon Moon
Java extends
Java extendsJava extends
Java extends
Hyosang Hong
Java(2/4)
Java(2/4)Java(2/4)
Java(2/4)
handfoot
襦語ろ磯 E04 js function
襦語ろ磯 E04 js function襦語ろ磯 E04 js function
襦語ろ磯 E04 js function
Young-Beom Rhee
Java(1/4)
Java(1/4)Java(1/4)
Java(1/4)
handfoot
Javascript 蟲′襭 pdf
Javascript 蟲′襭 pdfJavascript 蟲′襭 pdf
Javascript 蟲′襭 pdf
Hyosang Hong
= ≡ =梶 C
= ≡ =梶 C= ≡ =梶 C
= ≡ =梶 C
Heesuk Kang
[D2 COMMUNITY] ECMAScript 2015 S67 seminar - 1. primitive
[D2 COMMUNITY] ECMAScript 2015 S67 seminar - 1. primitive[D2 COMMUNITY] ECMAScript 2015 S67 seminar - 1. primitive
[D2 COMMUNITY] ECMAScript 2015 S67 seminar - 1. primitive
NAVER D2
=求メ =戟 求≡=
=求メ =戟 求≡= =求メ =戟 求≡=
=求メ =戟 求≡=
Yong Joon Moon
Javascript introduction, dynamic data type, operator
Javascript introduction, dynamic data type, operatorJavascript introduction, dynamic data type, operator
Javascript introduction, dynamic data type, operator
Young-Beom Rhee
Java 覲襭
Java 覲襭Java 覲襭
Java 覲襭
Hyosang Hong
螻襴讀 螳 殊企襴 ipytracer 螳覦蠍
螻襴讀 螳 殊企襴 ipytracer 螳覦蠍螻襴讀 螳 殊企襴 ipytracer 螳覦蠍
螻襴讀 螳 殊企襴 ipytracer 螳覦蠍
Han Lee
Javascript 覯 螳企 襴
Javascript 覯 螳企 襴Javascript 覯 螳企 襴
Javascript 覯 螳企 襴
ETRIBE_STG
Tcpl 14 語襴
Tcpl 14 語襴Tcpl 14 語襴
Tcpl 14 語襴
覦ろ襴渚
覦ろ襴渚 覦ろ襴渚
覦ろ襴渚
讌 覲
襦語ろ磯 E03 - Javascript intro.
襦語ろ磯 E03 - Javascript intro.襦語ろ磯 E03 - Javascript intro.
襦語ろ磯 E03 - Javascript intro.
Young-Beom Rhee
襴: SOA ろ
襴:  SOA  ろ襴:  SOA  ろ
襴: SOA ろ
譴 螳
=求メ 梶=梶 求≡=
=求メ 梶=梶 求≡= =求メ 梶=梶 求≡=
=求メ 梶=梶 求≡=
Yong Joon Moon
Java(2/4)
Java(2/4)Java(2/4)
Java(2/4)
handfoot
襦語ろ磯 E04 js function
襦語ろ磯 E04 js function襦語ろ磯 E04 js function
襦語ろ磯 E04 js function
Young-Beom Rhee
Java(1/4)
Java(1/4)Java(1/4)
Java(1/4)
handfoot
Javascript 蟲′襭 pdf
Javascript 蟲′襭 pdfJavascript 蟲′襭 pdf
Javascript 蟲′襭 pdf
Hyosang Hong
= ≡ =梶 C
= ≡ =梶 C= ≡ =梶 C
= ≡ =梶 C
Heesuk Kang
[D2 COMMUNITY] ECMAScript 2015 S67 seminar - 1. primitive
[D2 COMMUNITY] ECMAScript 2015 S67 seminar - 1. primitive[D2 COMMUNITY] ECMAScript 2015 S67 seminar - 1. primitive
[D2 COMMUNITY] ECMAScript 2015 S67 seminar - 1. primitive
NAVER D2
=求メ =戟 求≡=
=求メ =戟 求≡= =求メ =戟 求≡=
=求メ =戟 求≡=
Yong Joon Moon
Javascript introduction, dynamic data type, operator
Javascript introduction, dynamic data type, operatorJavascript introduction, dynamic data type, operator
Javascript introduction, dynamic data type, operator
Young-Beom Rhee
螻襴讀 螳 殊企襴 ipytracer 螳覦蠍
螻襴讀 螳 殊企襴 ipytracer 螳覦蠍螻襴讀 螳 殊企襴 ipytracer 螳覦蠍
螻襴讀 螳 殊企襴 ipytracer 螳覦蠍
Han Lee

Similar to Java tutorial (20)

JDK 覲豌
JDK 覲豌JDK 覲豌
JDK 覲豌
SeungHyun Eom
Java 8 & Beyond
Java 8 & BeyondJava 8 & Beyond
Java 8 & Beyond
Jay Lee
Jdk(java) 7 - 5. invoke-dynamic
Jdk(java) 7 - 5. invoke-dynamicJdk(java) 7 - 5. invoke-dynamic
Jdk(java) 7 - 5. invoke-dynamic
knight1128
I phone 2 release
I phone 2 releaseI phone 2 release
I phone 2 release
Jaehyeuk Oh
Java.next
Java.nextJava.next
Java.next
Sungchul Park
Programming java day2
Programming java day2Programming java day2
Programming java day2
Jaehoonyam
Working with code
Working with codeWorking with code
Working with code
JaeYeoul Ahn
5.Spring IoC&DI(DI 蟯 企誤伎)
5.Spring IoC&DI(DI 蟯 企誤伎)5.Spring IoC&DI(DI 蟯 企誤伎)
5.Spring IoC&DI(DI 蟯 企誤伎)
襴(蟲襦讌碁讌3覯豢蟲 2覿蟇磯Μ)
IT 觜 螳覦 15 _ IT service 15 years
IT 觜 螳覦 15 _ IT service 15 yearsIT 觜 螳覦 15 _ IT service 15 years
IT 觜 螳覦 15 _ IT service 15 years
一 蟾
Introduce php7
Introduce php7Introduce php7
Introduce php7
Jung soo Ahn
[蟲觜讌蟲/讌/れ蠍蟲/ITる危豢豌/ろ襷蟲′豌]#5.ろ襷 & 襷企一 (Spring Framework, M...
[蟲觜讌蟲/讌/れ蠍蟲/ITる危豢豌/ろ襷蟲′豌]#5.ろ襷 & 襷企一 (Spring Framework, M...[蟲觜讌蟲/讌/れ蠍蟲/ITる危豢豌/ろ襷蟲′豌]#5.ろ襷 & 襷企一 (Spring Framework, M...
[蟲觜讌蟲/讌/れ蠍蟲/ITる危豢豌/ろ襷蟲′豌]#5.ろ襷 & 襷企一 (Spring Framework, M...
襴(蟲襦讌碁讌3覯豢蟲 2覿蟇磯Μ)
4-1. javascript
4-1. javascript4-1. javascript
4-1. javascript
JinKyoungHeo
You don't know JS / this / chapter 1-2
You don't know JS / this / chapter 1-2You don't know JS / this / chapter 1-2
You don't know JS / this / chapter 1-2
Kiwoong Kwon
(ろ襷豐覲伎襯殊)ろ襷 貉ろ れ螻 蟯 企誤伎
(ろ襷豐覲伎襯殊)ろ襷 貉ろ れ螻 蟯 企誤伎(ろ襷豐覲伎襯殊)ろ襷 貉ろ れ螻 蟯 企誤伎
(ろ襷豐覲伎襯殊)ろ襷 貉ろ れ螻 蟯 企誤伎
襴(蟲襦讌碁讌3覯豢蟲 2覿蟇磯Μ)
Java Virtual Machine, Call stack, Java Byte Code
Java Virtual Machine, Call stack, Java Byte CodeJava Virtual Machine, Call stack, Java Byte Code
Java Virtual Machine, Call stack, Java Byte Code
Javajigi Jaesung
豺伎拘ろ′ 覯企 貊襴
豺伎拘ろ′ 覯企 貊襴豺伎拘ろ′ 覯企 貊襴
豺伎拘ろ′ 覯企 貊襴
if kakao
覦8 襾語 螻糾
覦8 襾語 螻糾覦8 襾語 螻糾
覦8 襾語 螻糾
Sungchul Park
れ梗殊 ろ 殊
れ梗殊 ろ 殊 れ梗殊 ろ 殊
れ梗殊 ろ 殊
Taeoh Kim
覦豺危 ろ磯- INSIDE JS 1-3
覦豺危 ろ磯- INSIDE JS 1-3覦豺危 ろ磯- INSIDE JS 1-3
覦豺危 ろ磯- INSIDE JS 1-3
Jin-Hyun Park
殊るゼ 伎 螳覦 螳企
殊るゼ 伎   螳覦 螳企殊るゼ 伎   螳覦 螳企
殊るゼ 伎 螳覦 螳企
Sukjoon Kim
Java 8 & Beyond
Java 8 & BeyondJava 8 & Beyond
Java 8 & Beyond
Jay Lee
Jdk(java) 7 - 5. invoke-dynamic
Jdk(java) 7 - 5. invoke-dynamicJdk(java) 7 - 5. invoke-dynamic
Jdk(java) 7 - 5. invoke-dynamic
knight1128
I phone 2 release
I phone 2 releaseI phone 2 release
I phone 2 release
Jaehyeuk Oh
Programming java day2
Programming java day2Programming java day2
Programming java day2
Jaehoonyam
Working with code
Working with codeWorking with code
Working with code
JaeYeoul Ahn
IT 觜 螳覦 15 _ IT service 15 years
IT 觜 螳覦 15 _ IT service 15 yearsIT 觜 螳覦 15 _ IT service 15 years
IT 觜 螳覦 15 _ IT service 15 years
一 蟾
[蟲觜讌蟲/讌/れ蠍蟲/ITる危豢豌/ろ襷蟲′豌]#5.ろ襷 & 襷企一 (Spring Framework, M...
[蟲觜讌蟲/讌/れ蠍蟲/ITる危豢豌/ろ襷蟲′豌]#5.ろ襷 & 襷企一 (Spring Framework, M...[蟲觜讌蟲/讌/れ蠍蟲/ITる危豢豌/ろ襷蟲′豌]#5.ろ襷 & 襷企一 (Spring Framework, M...
[蟲觜讌蟲/讌/れ蠍蟲/ITる危豢豌/ろ襷蟲′豌]#5.ろ襷 & 襷企一 (Spring Framework, M...
襴(蟲襦讌碁讌3覯豢蟲 2覿蟇磯Μ)
4-1. javascript
4-1. javascript4-1. javascript
4-1. javascript
JinKyoungHeo
You don't know JS / this / chapter 1-2
You don't know JS / this / chapter 1-2You don't know JS / this / chapter 1-2
You don't know JS / this / chapter 1-2
Kiwoong Kwon
Java Virtual Machine, Call stack, Java Byte Code
Java Virtual Machine, Call stack, Java Byte CodeJava Virtual Machine, Call stack, Java Byte Code
Java Virtual Machine, Call stack, Java Byte Code
Javajigi Jaesung
豺伎拘ろ′ 覯企 貊襴
豺伎拘ろ′ 覯企 貊襴豺伎拘ろ′ 覯企 貊襴
豺伎拘ろ′ 覯企 貊襴
if kakao
覦8 襾語 螻糾
覦8 襾語 螻糾覦8 襾語 螻糾
覦8 襾語 螻糾
Sungchul Park
れ梗殊 ろ 殊
れ梗殊 ろ 殊 れ梗殊 ろ 殊
れ梗殊 ろ 殊
Taeoh Kim
覦豺危 ろ磯- INSIDE JS 1-3
覦豺危 ろ磯- INSIDE JS 1-3覦豺危 ろ磯- INSIDE JS 1-3
覦豺危 ろ磯- INSIDE JS 1-3
Jin-Hyun Park
殊るゼ 伎 螳覦 螳企
殊るゼ 伎   螳覦 螳企殊るゼ 伎   螳覦 螳企
殊るゼ 伎 螳覦 螳企
Sukjoon Kim

Java tutorial

  • 2. 螳 Job : 4 Email : puri8467@gmail.com Blog : https://blog.naver.com/puri8467 覦 : https://github.com/Danpatpang/javacafe
  • 3. 覈谿 1. 覦襯 覦一 伎 2. 覦 覲 3. 覦 螻殊 4. 覦 蠍一 覓碁
  • 7. 覦襯 覦一 伎 1. 覦襯 覦一郁鍵 襷 2. 襷 豬 蠍壱 3. 螳豌 讌 襦蠏碁覦 語 4. 覦 ろ 5. 覿 API 6. 螳ロ 螳覦 7. 瑚朱 8. 貉るる一 襯 讌 9. れ瑚 れ 襴貅伎 10. 覦一郁鍵 (C 觜) https://www.youtube.com/watch?v=lh934b4ds-4
  • 8. TIOBE 襦蠏碁覦 語 https://www.tiobe.com/tiobe-index/
  • 10. 螳覦 蟲 ′襴 れ 蟆 蟆郁骸 Computerjobs 譟壱
  • 11. 螳覦 蟲 語 ′襴 in Java 5442蟇 2273蟇 C, C++, C# 4623蟇 1865蟇 Python 733蟇 646蟇 JavaScript 1708蟇 696蟇 PHP 1179蟇 807蟇 SQL 1947蟇 833蟇 <2019 4 2譯殊姶 蠍一>
  • 12. 覦螳 るジ 語企ゼ 覦一 伎 1. 覦螳 譯朱 語願 蠍郁讌 - ろ 讌螻殊 覿ク 蟇 2. る狩 覦, 覦ろ襴渚語 覦蟆 3. JCP襯 牛 蟯襴, るジ 語伎 觜 襴 覦
  • 13. 覦 覲 覲伎.
  • 14. 覦 覲 1991 Sun Microsystems 螻襷 4語 螳覦 Oak. 1995 Java襦 覈豺 覲蟆. 2009 Sun Microsystems螳 る狩願骸 語 覲. 2017 Java EE 蠍. 危企曙 JakartaEE襦 覲蟆.
  • 15. C, C++ 谿伎 蠍一ヾ C 螳豌伎 蠍磯レ 豢螳 C++ 襷れ企慨. 誤磯 螳語り~ 螳豌伎ル 豢螳螻~ 願碓 企至 襷れ? 覓 覲旧″... 譬 伎... 豌覿 螳豌 讌レ朱 襷れ. 誤 蠍壱... 覲旧″伎覃 !
  • 16. 襴曙 語企ゼ 襷れ! Write Once Run Anywhere! 覦 豌
  • 17. 覦 煙 Tiobe 螻手碓 襦蠏碁覦 語
  • 18. 誤磯穴骸 覦 襷 覦 碁 覿覿 螳覦螻 覓企, WWW 豢. (1991 伎るゼ 牛 譴, 1993 覯 50 500) 伎 螳ロ 語企ゼ 谿場給. (誤磯血 れ 貉危, OS, CPU襦 豎 蟯 覿 ろ) 螳 誤磯血朱 豐 覲蟆.
  • 19. Java 譯殊 襴企Μ讀 ろ襴 Version Date Issues 1.0 1996 1 Oak襦 豢, 1.0.2 覯覿 Java襦 覿襴蠍 1.1 1997 2 AWT, Inner class, JDBC, RMI, JIT 貉危朱, 貊 牛 1.2 1998 12 襴, Swing GUI, Collections 豢螳, J2SE 1.2襦 蠍 1.3 2000 3 HotSpot JVM, JNDI, JavaSound 豢螳 1.4 2002 2 蠏 , NIO, XML 牛, IPv6 讌, Java Web Start 1.5 2004 9 Generics, Autoboxing/Unboxing, Enumerations, static imports 1.6 2006 12 Security, JavaSE 1.6朱 蠍 1.7 2011 7 Multi Exception catch, Type Inference, Null safe Method invocation, String in Switch, Automatic Resource Management 1.8 2014 3 Lambda Expression, Streams, Method Reference 1.9 2017 9 Jshell, HTTP/2, private 誤壱伎 覃
  • 21. Java 覿襯 Java SE 覦 譴 . Jakarta EE (蟲 JavaEE) 蠍一 伎 覯 伎 麹 . Java ME 覯 ろ 蟆曙 麹 . Java FX 一ろ 螳覦 覦 覦壱襯 . (GUI 殊企襴 螻)
  • 22. Jakarta EE(Java EE) る狩 語伎 2017 8 ろ 2014 10 ~ 2016 3 る狩伎 願屋 EE 伎
  • 24. 覦 語企 ろる 蟲 覓企襦 . る狩伎 JDK 螻手 覦 覲蟆渚. (蟲 殊伎 蟲 覈) 覦 覓企讌襷, JDK 襭.
  • 27. 襭 1. 蠍一ヾ 殊伎るゼ 蟲襷ろ 蠍一 覲 X. 2. 願鍵螳 覿伎る 蠍一 OpenJDK襯 . 3. ろ語 語 覲蟆.
  • 28. OpenJDK? Java SE -ろ 蟲豌. GPLv2 殊伎 + 豢螳 殊伎るゼ 磯ゴ螻 . 譬襯 : Oracle, Zulu, Red Hat, Red Hat, IBM, IntelliJ
  • 29. OpenJDK 覓語 れ 襦螳 襷讌 . 誤煙 覓語螳 螳? ろ れ願鍵 谿語螳 朱 一る所 譯暑. 覓語螳 蟆殊 螳 豌襴螻 豈 讌 蟆瑚? 炎骸 焔 谿企 螳?
  • 30. 覦 覩碁 企至 螳讌 覓企 覈襯碁...
  • 31. 覦 轟 1. 伎煙 語 2. 螳豌 讌 語 3. ろ 貊 讌 4. 覃覈襴 蟯襴 5. れ 襴貅伎 螳覦 螳 6. 覃 る襯 所 蟲 7. 襦 讌 8. 襷螳 ろ 殊企襴
  • 32. 覦 螻殊 Program OS Hardware 朱 襦蠏碁 Java Program JVM OS Hardware Java 襦蠏碁 VS
  • 33. 覦 螻殊 .java .class JVM 覯 覦危 貊 javac.exe (貉危) java.exe (JVM)
  • 34. 讌 企慨. 1. 覦 れ企 覦 れ https://www.oracle.com/technetwork/java/javase/downloads/ 2. 蟆 覲 れ https://macchiato.tistory.com/9 3. 襦 れ讌 java -version javac version 4. 覈 襦語 java 覈轟 ろ
  • 35. JRE, JDK, JVM JRE(Java Runtime Environment) 覓朱Μ朱 譟伎 JVM 蟲 . 殊企襴 + JVM JDK(Java Development Kit) JRE + 螳覦 JVM(Java Virtual Machine) 豢 襾語. 覦危 貊螳 ろ 壱 蟆 螻.
  • 38. 企, 螳豌, 語ろ伎 Object(螳豌) 瑚 螳豌企 企朱 2螳讌 譯殊 轟 螳讌螻 . 企, 伎 螳 襯 螳讌覃 蟇穴鍵, 蠍一 螳 螳讌. 谿 蟆曙 , 讌螻 螳 襯 螳讌覃, 觚危 , 蠍一 覲 螳 . 語伎 螳豌企 れ瑚 螳豌伎 螳朱 . , 郁 朱 蟲焔 . 語伎 螳豌企 襯 ロ螻 覃襯 牛 語. Class(企) 企る 螳豌企ゼ 襷 "襴" "豌讌"企. 蠍磯蓋朱 企る , , 覃, 覃, 煙襦 蟲煙 . 企れ ( 企)襯 讌 覃, 覃 企れ (企 郁鍵) 企 . 煙 企れ 襦 語ろ伎るゼ 襷 . Instance(語ろ伎) 語ろ伎る 螳豌企ゼ 企 企れ 螻 覲旧覲語企. 企れ 語ろ伎り 焔覃, JVM 企 企れ 語ろ伎れ 覃覈襴 螻糾 麹伎.
  • 39. 讌 企慨. 1. 覦 貉危 javac CommandTest.java 2. 覦危 貊 ろ java CommandTest java -classpath ./ test.CommandTest 3. 覦危 貊 貉危 javap CommandTest.class 4. Javadoc javadoc CommandTest.java
  • 45. Stack and Heap (GC) https://danpatpang.github.io
  • 46. Stack and Heap (GC) https://danpatpang.github.io https://danpatpang.github.io
  • 47. Stack and Heap (GC) https://danpatpang.github.io https://danpatpang.github.io https://danpatpang.github.io
  • 48. 覲 螳 ロ 覃覈襴 螻糾
  • 49. 覲 朱 蠏豺 1. 覓語襯 蟲覿 . 2. 貊企襦 蠍 覲螳 螳ロ. 3. 襦 . 4. 轟 覓語 _, $襷 . 5. 曙企 蠍讌. 貊 螳企 蠏豺 1. 企 企 豌 蠍 覓語襯 . (ex. class JavaExam01) 2. 企 企伎 覲 企 豺企 蠍磯 . (ex. numOfApple) 3. 覿 覓語, 伎郁鍵 _襦 豌危.
  • 50. 譯殊 //, /* */, /** */襯 . javadoc ! 貊襯 譯殊! 企誤伎 る @author 煙 @exception 覃 @param 覃 襷り覲 @return 覃 覦 螳 @see るジ 譯殊 蟯 襷 @since 襴企Μ讀 蠍磯 @throws 覃 @version 企れ 覯
  • 52. 一危 覦 一危 Primitive Reference boolean int char Class Array Enum
  • 53. 一危 一危 覃覈襴 蠍 覯 boolean 谿瑚骸 蟇一 1 Byte true, false char 覓語 2 Byte 貊 覓語 byte 1 Byte -128 ~ 127 short 2 Byte -32,768 ~ 32,767 int 4 Byte -2,147,483,648 ~ 2,147,483,647 long 8 Byte -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 float れ 4 Byte -3.4E38 ~ 3.4E38 double 8 Byte -1.7E308 ~ 1.7E308
  • 54. 覲 int num = 10000; 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 0 0 byte num2 = (byte) num; ?
  • 55. 覲 int num = 10000; 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 0 0 byte num2 = (byte) num; 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 1 0 0 0 0
  • 56. 覲 int num1 = (int) (char) (byte) -1; int num2 = (int) (short) (byte) -1; System.out.println(num1); System.out.println(num2); ?
  • 57. String 朱朱 覓語れ 覦一. 覦 覓語れ 覦一伎 企 螳豌. (覃覈襴襯 朱 蟯襴蠍 !)
  • 58. 一一 1. 讀螳 一一 2. 一 一一 3. 觜蟲 一一 4. 觜 一一 5. 朱Μ 一一 6. 一一 7. 狩 一一
  • 59. 一一 一 一 一一 伎 1() ( ), [ ], . 蟯, 蟯, 2 !(朱Μ not), ~(觜語 not), +(), -(), ++, -- 一一 3 *, /, %(襾語 螳) 一 一一 4 +, - 5 <<, >>, <<< 一一 6 <. <=, >, >= 蟯螻 一一 7 ==, != 8 &(AND) 觜 一一9 ^(XOR) 10 |(OR) 11 &&(AND) 朱Μ 一一 12 ||(OR) 13 譟郁唄? A:B (譟郁唄 谿語企 A, 蟇一企 B襯 ろ) 狩 一一 14 =, +=, -=, *=, %=, <<=, >>=, &=, ^=, ~= , 一一
  • 60. 一一 覯 る ++ ++op1 op1++ op1 = op1 + 1 -- --op1 op1-- op1 = op1 1 讀螳 一一
  • 61. 一 一一 一一 覯 る + op1 + op2 - op1 - op2 * op1 * op2 / op1 / op2 % op1 % op2 op1 op2襦 襾語
  • 63. 一 一一 覦 一 一一 int (, 襴磯一一 蟆曙 )
  • 64. 觜蟲 一一 一一 覯 る > op1 > op2 op1 op2覲企 蟆曙 true >= op1 >= op2 op1 op2覲企 蟇磯 螳 蟆曙 true < op1 < op2 op1 op2覲企 蟆曙 true <= op1 <= op2 op1 op2覲企 蟇磯 螳 蟆曙 true == op1 == op2 Op1螻 op2螳 螳 蟆曙 true != op1 != op2 Op1螻 op2螳 るゼ 蟆曙 true
  • 65. 觜 一一 一一 覯 る & op1 & op2 觜 朱Μ螻(AND) | op1 | op2 觜 朱Μ(OR) ^ op1 ^ op2 觜 覦壱 朱Μ(XOR) ~ ~op1 觜 覲伎(覿) >> op1 >> op2 op1 op2襷 るジ讓曙朱 企(覿 O) << op1 << op2 op1 op2襷 殊曙朱 企 (企 觜豺語 0朱 豈企.) >>> op1 >>> op2 op1 op2襷 るジ讓曙朱 企(覿 X)
  • 66. 朱Μ 一一 一一 覯 る && op1 && op2 op1螻 op2 覈 true 蟆曙 true || op1 || op2 op1螻 op2 譴 朱 true 蟆曙 true ! !op1 op1 true 企 false, false企 true
  • 67. 一一 一一 覯 る += op1 += op2 op1 = op1 + op2 -= op1 -= op2 op1 = op1 - op2 *= op1 *= op2 op1 = op1 * op2 /= op1 /= op2 op1 = op1 / op2 %= op1 %= op2 op1 = op1 % op2 &= op1 &= op2 op1 = op1 & op2 |= op1 |= op2 op1 = op1 | op2 ^= op1 ^= op2 op1 = op1 ^ op2
  • 68. A += B A = A + B 螳 蟆手?
  • 69. A += B A = A + B (1) A += B A = (Type) ((A) op (B)) Type A襯 磯手. (2) A = A + B A = A op B 覦 蠍磯蓋 一 一一 int.
  • 70. 狩 一一 譟郁唄? 1 : 2; - 譟郁唄 true 蟆曙 1 ろ. - 譟郁唄 false 蟆曙 2 ろ.
  • 72. 狩 一一 蟆郁骸? X88 1. 殊一一 襭 螳 蟆曙, 企 襭朱 蟆郁骸襯 碁. 2. 殊一一螳 int襦 覲 螳ロ 朱, 1 襭朱 蟆郁骸襯 碁. 3. 蟆曙一 企麹讌 蟆曙, 殊一一 譴 襭朱 蟆郁骸襯 碁.
  • 73. Scanner レ 覦 螳豌. jdk1.5覿 豢螳. java.util.Scanner 豺. 覃 る Next() れ 一 螳語. nextInt() れ int 一 螳語. nextLine() れ 殊語 螳語. hasNextLine() れ 殊語 朱 true.
  • 75. 蟆郁骸? num : 10 str : num : 10 str : ?
  • 81. while 覓, do while 覓 loop.LoopExam03
  • 82. 覦一 螳 覲襯 覓苦朱 る 蟆 score[0] score[1] score[2] score[3] score[4] int score[] int[] score襦 豐蠍壱 覦覯 1. int[] score = {1, 2, 3, 4, 5} 2. int[] score = new int[5]; 3. int[] score; score = new int[] {1, 2, 3, 4, 5};
  • 83. 覦一伎 豐蠍 螳 覿襯 一危 豐蠍郁 蠍磯蓋 () Byte[] Char[] Short[] Int[] Long[] 0 u0000 0 0 0L 蠍磯蓋 (れ) Float[] Double[] 0.0f 0.0 蠍磯蓋 (朱Μ) Boolean[] False 谿語^ 企[] 誤壱伎[] Null Null
  • 84. 覦 貊 ろ - る狩 覦 貊 ろ 螳企 https://www.oracle.com/technetwork/java/codeconventions-150003.pdf - 蟲蠍 覦 貊 ろ 螳企 https://google.github.io/styleguide/javaguide.html
  • 85. Q&A