際際滷

際際滷Share a Scribd company logo
Java(2/4)
taesoo.kim87@gmail.com 蟾
Part1. Inheritance
1) 螳蟯伎(1)
1 
Inheritance 覿覈企れ 覃る襯 企れ 覓朱れ
企  class 企 extends 覿覈企{;}
 1螳 覿覈企る   .
覿覈煙語 public DmbCellPhone(){super();}
襷れ 
(OverRiding)
 覃襯 企れ
 覃 る殊企 蠍磯.
覃 る殊企
譯殊
覿覈 覃  蠏碁豎襦 .
蠏殊  螳蟆 る殊企 覿螳.
襦 碁ゼ throws覿螳.
覿覈覃語 super.method();
final企 覿螳企(企ろル螳)
final覃 る殊企 覿螳 覃
2) 螳蟯伎(2)
1 
Protected 蠏 
覿覈企れprotected覃る
煙 super()れ襦 語螳.
覲
(Promotion)
覿覈企 覲 = 企ろ;
ろ 覿覈企れ 覲 朱 蟲
 ろ 螳螳豌願 るジ螳豌企蟲豌企襦讌
襷り覲ろ
襷り覲 螳豌企ゼ 讌蟲.
Vehicle veh=bus;
螳  覲(Casting) 企 覲=(企)覿覈企ろ;
螳覲 
 覿覈朱 覲覃 覿覈  覃
襷 螳.
   覃螳 覃 螳 覲朱
朱 覲
 覃 襯 .
螳豌危(instanceof)
螳豌危語 .
Boolean result=螳豌instanceof;
3) 豢企
1 
螳 abstract 企れ 螻牛 轟 豢豢 企

れ牡 企れ 螻牛給 /覃企 旧.
れ牡 企  螳 .
 public abstarct class AbtractClass{;}
れ牡企れ public class RealClass extends AbClass{;}
4) 誤壱伎(1)
1 
螳
螳豌伎 覦覯  .
螳豌伎 蟲煙 譴.
ろ煙 蟲 .
覦8 れ
 誤壱伎れ 蟲螳豌企ゼ .
 螳覦貊 螳豌願 襦 旧 
覦
螳覦貊螳 誤壱伎れ 覃 語
->誤壱伎り 螳豌伎 覃襯 語

螳覦貊  螳豌 覲蟆所ロ蟆.
貊覲蟆曙 ろ伎螻 襴願 れ.
 public interface RemoteControl{}
 誤壱伎る豐蠍壱襷瑚.
豢覃
螳豌願 螳讌 覃襯 る蟆.
襴  覓伎語襷  譴.
ろ覿 蟲螳豌願 螳讌螻 .
吴碁
誤壱伎れ 碁螻 蟲螳豌願 螳讌螻
 語ろ伎 覃.
蠍一ヾ誤壱伎るゼ ロ伎 襦願鍵レ
5) 誤壱伎(2)
1 
覃
覦8覿 炎,
吴 覃 襴 螳豌伎
誤壱伎る朱 語 螳.

public static final int val=1;
public interface RemoteControl{
public int MAX=10; public int MIN=0;}
豢覃 public abstract int remoteMethod(int a);
吴碁 public default int defualtMethod(int a);
覃 public static int staticMethod(int a);
誤壱伎 蟲
螳豌企 誤壱伎れ  豢覃
狩 蠏碁豎 覃襯 螳語狩.
企ゼ 誤壱伎れ 蟲(implement)螳豌企
覃, 蟲螳豌企ゼ 燕 企るゼ 蟲
企る手 .
蟲企
public class 蟲企 implements InterfaceClass{
//れ牡覃;}
覃 誤壱伎れ 覈 覃 public蠏殊
6) 誤壱伎(3)
1 
給蟲螳豌
覦ろ殊煙 蟲螳豌企ゼ 襷れ
誤壱伎 覲 = new 誤壱伎(){
//誤壱伎 碁 豢覃 れ 覃 ;}
れ誤壱伎
蟲 企
螳豌企 れ 誤壱伎 朱   .
誤壱伎A B螳 覃襯 語  朱る 
誤壱伎るゼ 覈 蟲伎 覃, れ螻 螳 焔伎狩.
Public class 蟲企る implements
誤壱伎A, 誤壱伎B{
//誤壱伎A B 碁 豢覃 れ牡 覃 }
誤壱伎れ
RemoteControl rc;//rc 誤壱伎
rc=new TV();
rc=new Audio();
豢覃
RemoteControl rc;//rc 誤壱伎
rc=new TV();
rc.turnOff();//TV turnOff()ろ
吴碁
RemoteControl rc;//rc 誤壱伎
rc=new TV();
rc.setMute(true);
7) 誤壱伎(4)
1 
覃 RemoteControl.changeBattery();
覲() 誤壱伎 覲=蟲螳豌
ろ() Tire[] tires={ new Htire(), new Htire()};
螳覲
蟯螻 覿覈/企り 覲螻
螳 襷ル曙朱, 蟲企る 螳覲
朱 蟲企れ  覃襯
  .
蟲企 覲=(蟲企)誤壱伎る;
螳豌危
(instanceof)
if(vehicle instanceof Bus)
{Bus bus=(bus)vehicle;}
 
(れ螳)
public interface 誤壱伎 extends
誤壱伎1, 誤壱伎2{;}
吴碁

蠍一ヾ誤壱伎  覦 蠍磯 豢螳.
吴碁襯
螳讌 誤壱伎
 覦覯
吴 覃襯  .
吴 覃襯 .
吴 覃襯 豢覃襦 .
Part2. Memory II
2 Memory II
1)RDA[Runtime Data Areas](1)
螳
JVM 襦蠏碁 蠍  OS襦覿  覦 覃覈襴 螻糾
蟲(5螳讌)
thread覲襦 譟伎 - PC Registers, JVM-Stacks,
NativeMethod Stacks
覈 thread螳 螻旧(蠍壱伎) - Method Area, Heap
PC Register
Thread螳 焔襷 .
Thread螳 企る轟 ろ蟆 讌襯 蠍磯.
JVM-Stack Operand襯 .
Method
Area
企  企 .
企 覲(語ろ伎る) Method Area 蟷 .
new一一襦 企れ  覃 ろ 企 .
Type覲, Runtime Constant Pool, 覲, 覃覲, 企 覲(static 覲)
2 Memory II
2)RDA[Runtime Data Areas](2)
Heap
語ろ伎り 焔 螻糾.
螳豌企ゼ  燕覃 語ろ伎り Heap  .
朱一 覲 Heap 誤郁 ル.
GC   .
JVM-Stacks
Thread企ゼ   螻糾.
Thread襷  焔.
 Thread襷 method螳 語 覃覈襴 (push).
Method螳 譬襭覃 覃覈襴 覦(pop).
Method螳 語覃 method method覲願 stack .
Method語 譬襭覃 stack point 蟇磯.
Method覲企 襷り覲/讌覲/覲/企 煙 .
螳 る 螳螳 ろ 螳讌, Heap 螻旧.
覓語, Heapthread-unsafe.
Native
Method
Stacks
覦  語伎 螻牛 method lib(DLL, conf)殊 .
JNI襯 牛 譴螻 螳蟾 覦朱 蟲 螳.
2 Memory II
3) 襦
螳
java蟲 覈 貊螳 JVM 襷.
企る 谿語^ 螳 朱 JVM 襷螻
覃覈襴 襦.
ClassLoader
 企 襦 ClassLoader襯 牛 企伎.
蠍磯蓋 企 襦 java.lang.ClassLoader
JVM 蟲覃, 覿語ろ碁 企 襦螳 焔.
襦
 襦
 企るゼ 襦 螻殊 朱  企るゼ 襦.
(load-time dynamic loading)
壱
 襦
企るゼ 襦 螳  貊襯 ろ 螳 企るゼ 襦.
(run-time dynamic loading)
2 Memory II
4) 譴豌企, 譴豌誤壱伎
螳 轟企れ 蟯螻襯 襷埼 蟯蟆企るゼ 企 
レ
 企れ 覃る襯 襦 所蠏, 碁 蟯螻企るゼ 螳豢一
貊 覲旧°襯 豢.
語ろ伎
覃る企
class A{ class B{ ; } }
//A螳豌伎燕伎 螳ロ B譴豌企

覃る企
class A{ static class B{ ; } }
//A企る 覦襦 蠏    B 譴豌 企
襦貉企
class A{ void method() { class B ; } }
//method()螳 ろ襷    B譴豌 企

覃る企 : A$B.class
襦貉企 : A$1B.class
蠏殊
語ろ伎るる企 - 覦蟾ロ企 語ろ伎 豐蠍郁/覃:O
 豐蠍郁/覃 螳豌伎 :X
覦蟾ロ企れ 覈覃/蠏 :O
覃る企 - 覈  豐蠍郁/覃 螳豌  :O
覦蟾ロ企 /覃 蠏 :O
語ろ伎 /覃 蠏 :X
襦貉企 - final 襷り覲 襦貉覲襷 
覦蟾ロ企れ宛譟一至鍵
譴豌企 企 覦蟾ロ企れ宛譟磯 覦蟾ロ企.this.||覃();
譴豌企 企 譴豌企 谿語^ this.||覃();
2 Memory II
5) 襦語れ る(1)
襦語 ろ譴 襦蠏碁,,る襦 蟲
磯
襦語 伎 れ  . 覈 襦語る  伎
磯襯 螳讌螻 .
炎磯 襦語: +磯,  磯螳 2螳伎 豌襴
覃一磯 襦語=+n螳 磯, 磯  1:1
-  CPU襷  一一  螳 蟇碁Μ讌 
炎磯螳 .
- CPU伎語    蟆曙 覃一磯 襦語り
 
覃一磯
 襦語る伎  磯螳 .
CPU レ
 
 旧 レ
覿襴
蠍壱/蟲谿 伎
螳 磯螳 蠏燕 覿襯 螳襦 讌ロ伎 .
磯 蠏碁9
襦 蟯 磯襯 蠏碁9朱 覓苦伎 .
磯 蠏碁9 るジ 磯 蠏碁9  螳.
  磯 蠏碁9螻  磯 蠏碁9 覲蟆所. 蠏語 覿螳.
覈 磯 覦  磯 蠏碁9 .
磯 蠏碁9 讌讌 螻 焔 磯 覃語磯 蠏碁9
磯襯 磯 蠏碁9 るる thread 煙 .
2 Memory II
6) 襦語れ る(2)
磯 磯
non-daemon 磯(朱磯)   覲伎^.
朱 磯螳 譬襭覃  譬襭.
GC,  襦語 ,  覃願葦煙 .
覓危襭 譟郁唄覓語朱 ろ  蠍壱り 轟 譟郁唄 襷譟焔覃
螻 れ 蠍壱襦 焔.
boolean isDaemon():磯螳 磯語 .
void setDaemon(boolean on)る襯 磯磯襦   磯襦 覲蟆. 襷り覲
螳 true企 磯磯襦 覲蟆.
setDaemon() 覦 start()語  ろ伎 .
磯
覈譯手鍵
2 Memory II
7) 襦語れ る(3)
覦 覃 る
void interrupt()
sleep()企 join()  殊讌
 磯襯 ろ 蠍 襦
襷.
企 磯 InterruptedException 覦
朱
殊讌襯 覯企蟆 .
void join()
讌 螳 磯螳 ろ襦 .
讌 螳 讌蟇磯  譬襭覃 join()
語 磯襦 れ  ろ 螻.
void join(long millis)
void join(long millis, int nanos)
void resume()
suspend()  殊讌
 磯襯 ろ蠍一襦 襷.
2 Memory II
8) 襦語れ る(4)
static void sleep(long millis) 讌 螳(豌覿 殊 )
磯襯 殊讌.
讌 螳 讌螻 覃,
朱 れ ろ蠍一螳 .static void sleep(long millis, int nanos)
void stop()
磯襯 讀 譬襭.
蟲谿(dead-lock) 觜讌蠍 所鍵
覓語 deprecated .
void suspend()
磯襯 殊 讌.
resume() 語覃 螳
static void void yield()
ろ 譴 るジ 磯蟆
覲(yield)螻 ろ蠍一螳 .
覦 覃 る
2 Memory II
9) 襦語れ る(5)
 る
NEW 磯螳 焔螻 讌 start()螳 語讌  
RUNNABLE ろ 譴  ろ 螳ロ 
BLOCKED
蠍壱觚 伎 殊讌 
(LOCK 襴  蟾讌 蠍磯るΜ )
WAITING,
TIMED_
WAITING
磯  譬襭讌 讌襷 ろ螳ロ讌 (unrunnable)
殊 讌, TIMED_WAITING 殊讌螳 讌 蟆曙磯ゼ 覩
TERMINATED 磯  譬襭 
wait(), notify()
- 蠍壱  願鍵  .
- Object 企れ  朱襦, 覈 螳豌伎 語 螳ロ.
- 蠍壱 觚襦伎襷   .
- wait() : 螳豌伎 lock 螻 企 螳豌伎 磯襯 蠍一襦 .
- notify() : 蠍一 磯 譴 襯 蟾企.
- notifyAll() : 蠍一 覈 磯襯 蟾企. 語 螳豌伎 蠍 譴 磯襷 企 .
豢豌 http://gangzzang.tistory.com/m/post/75
Part3. Exception
3 Exception
1) 
譬襯 朱(Exception) / ろ(Runtime Exception)
誤企
java.lang.Exception企るゼ 覦 覈 企(java.lang.[ClassNotFound|Interrupted|Runt
ime|...]Exception)
ろ ろ碁 貉危朱螳 豌危讌 . 螳覦螳 語襴貊襯 曙伎 豌襴.
NullPointer
Exception
java.lang.NullPointerException, 螳豌伎宛譟郁 (null螳 螳)  谿語^覲襦 螳豌 蠏
一一襯(.)  覦
ArrayIndexOut
BoundsException
java.lang.ArrayIndexOutOfBoundsException, 覦一 碁煙 覯 豐螻  覦
NumberFromat
Exception
java.lang.NumberFormatException, 覓語 煙 一危磯ゼ 襦 覲蟆渚 覦.
Integet.parseInt(String s); Double.parseDouble(String s)襯 伎 覓語伎  れ襦
覲 る .
ClassCastException
覲(Casting) / 企  蟲企/誤壱伎 螳 覦.  蟯螻 語 蟆
一 貂ろ  覦.
3 Exception
2) 語襴貊
 try-catch-finally
焔逢覯
try{
碁貊;
}catch ( 誤企 e){
語襴;
}finally{
 ろ 貊;
}
3 Exception
3) 語襯覲 豌襴貊
れcatch try{;}catch(1 e){;}catch(2 e){;}finally{;}
catch   企る   企 襦 
覃catch catch(1 e || 2 e){;}
 襴 蠍
try-with-resources. close() 覃襦 蟆 襴るゼ 譬襭
try{;}catch( e){;}
finally{
if(fis!=null){
try{
fis.close();
}catch( e){ ; } } }
 蠍郁鍵
碁 覃襯 語 螻褐朱 碁ゼ 蟾.
public int method2() throws ClassNotFoundException{ ; }//catch覓語豌襴
 /碁    企  -> 覦

誤企れ

public class BalanceInsufficientException extends Exception{
public BalanceInsufficientException(){}
public BalanceInsufficientException(String msg){ super(msg);}
}
碁
throw new XXXException();
throw new XXXException("msg");
語覲伎至鍵
getMessage(), printStackTrace()襯 伎.
catch( e){
String msg = e.getMessage();
e.printStackTrace();}
Part4. Wrapper
4 Wrapper Class
1) Wrapper()企(1)
螳 蠍磯蓋 螳 螳 螳豌企ゼ (蠍磯蓋螳 企 螻 )
覦/碁 蠍磯蓋螳 リ豌企 襷蟆 覦, 蠏  碁煙企手.
蠍磯蓋 ロ企 碁焔
byte Byte num=obj.byteValue();
char Character ch=obj.charValue();
short Short num=obj.shortValue();
int Integet num=obj.intValue();
long Long num=obj.longValue();
float Float num=obj.floatValue();
double Double num=obj.doubleValue();
boolean Boolean bool=obj.booleanValue();
覦 ロ企ろ 蠍磯蓋螳  蟆曙 覦. Integer o=100;
碁 蠍磯蓋 リ豌願   覦. int val1=Integer o=new Integer(1);
4 Wrapper Class
2) Wrapper()企(2)
蠍磯蓋 覓語伎 蠍磯蓋 螳朱 覲 覃
byte num=Byte.parseByte("10");
short num=Short.parseShort("10");
int num=Integer.parseInteger("10");
long num=Long.parseLong("10");
float num=Float.parseFloat("10.0F");
double num=Double.parseDouble("10.0");
boolean bool=Boolean.parseBoolean("true");
リ 觜蟲
碁燕 觜蟲蟇磯 equals()覃襯 覃 企螳 觜蟲襦
る殊企 伎.
Java(2/4)

More Related Content

What's hot (19)

伎 覲襦蠏碁覦
伎 覲襦蠏碁覦伎 覲襦蠏碁覦
伎 覲襦蠏碁覦
Yong Joon Moon
覦 null 蟆 る 覦覯
覦 null 蟆 る 覦覯覦 null 蟆 る 覦覯
覦 null 蟆 る 覦覯
Sungchul Park
Java programming pdf
Java programming pdfJava programming pdf
Java programming pdf
Ji Hoon 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
=求メ =戟 求≡=
=求メ =戟 求≡= =求メ =戟 求≡=
=求メ =戟 求≡=
Yong Joon Moon
Realm 貊豺危 - 伎谿
Realm   貊豺危 - 伎谿Realm   貊豺危 - 伎谿
Realm 貊豺危 - 伎谿
Lee-Jong-Chan
Java 螳襭 ed11
Java 螳襭 ed11Java 螳襭 ed11
Java 螳襭 ed11
hungrok
Secrets of the JavaScript Ninja - Chapter 3. Functions are Fundamental
Secrets of the JavaScript Ninja - Chapter 3. Functions are FundamentalSecrets of the JavaScript Ninja - Chapter 3. Functions are Fundamental
Secrets of the JavaScript Ninja - Chapter 3. Functions are Fundamental
Hyuncheol Jeon
02 realm 覈 & 蟯螻
02   realm 覈 & 蟯螻02   realm 覈 & 蟯螻
02 realm 覈 & 蟯螻
Lee-Jong-Chan
Class Loader_Wh apm
Class Loader_Wh apmClass Loader_Wh apm
Class Loader_Wh apm
覦ろ磯 3 2
覦ろ磯 3 2覦ろ磯 3 2
覦ろ磯 3 2
jangpd007
譯朱 螳覦 危 Go - Scope ク
譯朱 螳覦 危    Go - Scope ク譯朱 螳覦 危    Go - Scope ク
譯朱 螳覦 危 Go - Scope ク
Darion Kim
Java null survival guide
Java null survival guideJava null survival guide
Java null survival guide
Sungchul Park
[D2 CAMPUS] 襦企 ろ ろ磯襭 - Http Request
[D2 CAMPUS] 襦企 ろ ろ磯襭 - Http Request[D2 CAMPUS] 襦企 ろ ろ磯襭 - Http Request
[D2 CAMPUS] 襦企 ろ ろ磯襭 - Http Request
NAVER D2
Introduction to Fork Join Framework_SYS4U I&C
Introduction to Fork Join Framework_SYS4U I&CIntroduction to Fork Join Framework_SYS4U I&C
Introduction to Fork Join Framework_SYS4U I&C
sys4u
Runtime Data Areas_Wh apm
Runtime Data Areas_Wh apmRuntime Data Areas_Wh apm
Runtime Data Areas_Wh apm
Objective-C Runtime Programming Guide
Objective-C Runtime Programming GuideObjective-C Runtime Programming Guide
Objective-C Runtime Programming Guide
Sung-Kwan Kim
Java(3/4)
Java(3/4)Java(3/4)
Java(3/4)
handfoot
=求メ 梶=梶 求≡=
=求メ 梶=梶 求≡= =求メ 梶=梶 求≡=
=求メ 梶=梶 求≡=
Yong Joon Moon
伎 覲襦蠏碁覦
伎 覲襦蠏碁覦伎 覲襦蠏碁覦
伎 覲襦蠏碁覦
Yong Joon Moon
覦 null 蟆 る 覦覯
覦 null 蟆 る 覦覯覦 null 蟆 る 覦覯
覦 null 蟆 る 覦覯
Sungchul Park
Java programming pdf
Java programming pdfJava programming pdf
Java programming pdf
Ji Hoon 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
=求メ =戟 求≡=
=求メ =戟 求≡= =求メ =戟 求≡=
=求メ =戟 求≡=
Yong Joon Moon
Realm 貊豺危 - 伎谿
Realm   貊豺危 - 伎谿Realm   貊豺危 - 伎谿
Realm 貊豺危 - 伎谿
Lee-Jong-Chan
Java 螳襭 ed11
Java 螳襭 ed11Java 螳襭 ed11
Java 螳襭 ed11
hungrok
Secrets of the JavaScript Ninja - Chapter 3. Functions are Fundamental
Secrets of the JavaScript Ninja - Chapter 3. Functions are FundamentalSecrets of the JavaScript Ninja - Chapter 3. Functions are Fundamental
Secrets of the JavaScript Ninja - Chapter 3. Functions are Fundamental
Hyuncheol Jeon
02 realm 覈 & 蟯螻
02   realm 覈 & 蟯螻02   realm 覈 & 蟯螻
02 realm 覈 & 蟯螻
Lee-Jong-Chan
Class Loader_Wh apm
Class Loader_Wh apmClass Loader_Wh apm
Class Loader_Wh apm
覦ろ磯 3 2
覦ろ磯 3 2覦ろ磯 3 2
覦ろ磯 3 2
jangpd007
譯朱 螳覦 危 Go - Scope ク
譯朱 螳覦 危    Go - Scope ク譯朱 螳覦 危    Go - Scope ク
譯朱 螳覦 危 Go - Scope ク
Darion Kim
Java null survival guide
Java null survival guideJava null survival guide
Java null survival guide
Sungchul Park
[D2 CAMPUS] 襦企 ろ ろ磯襭 - Http Request
[D2 CAMPUS] 襦企 ろ ろ磯襭 - Http Request[D2 CAMPUS] 襦企 ろ ろ磯襭 - Http Request
[D2 CAMPUS] 襦企 ろ ろ磯襭 - Http Request
NAVER D2
Introduction to Fork Join Framework_SYS4U I&C
Introduction to Fork Join Framework_SYS4U I&CIntroduction to Fork Join Framework_SYS4U I&C
Introduction to Fork Join Framework_SYS4U I&C
sys4u
Runtime Data Areas_Wh apm
Runtime Data Areas_Wh apmRuntime Data Areas_Wh apm
Runtime Data Areas_Wh apm
Objective-C Runtime Programming Guide
Objective-C Runtime Programming GuideObjective-C Runtime Programming Guide
Objective-C Runtime Programming Guide
Sung-Kwan Kim
Java(3/4)
Java(3/4)Java(3/4)
Java(3/4)
handfoot
=求メ 梶=梶 求≡=
=求メ 梶=梶 求≡= =求メ 梶=梶 求≡=
=求メ 梶=梶 求≡=
Yong Joon Moon

Similar to Java(2/4) (20)

襴 襴豌 Windows via C/C++ : 8 覈 る 蠍壱
襴 襴豌 Windows via C/C++ : 8  覈 る 蠍壱襴 襴豌 Windows via C/C++ : 8  覈 る 蠍壱
襴 襴豌 Windows via C/C++ : 8 覈 る 蠍壱
sung ki choi
襦企 觜: ろ 瑚
襦企 觜: ろ 瑚襦企 觜: ろ 瑚
襦企 觜: ろ 瑚
Leonardo YongUk Kim
[Hello world ろ碁碁]open api client螳覦
[Hello world ろ碁碁]open api client螳覦[Hello world ろ碁碁]open api client螳覦
[Hello world ろ碁碁]open api client螳覦
NAVER D2
[143] Modern C++ 覓伎^蟇 ?
[143] Modern C++ 覓伎^蟇  ?[143] Modern C++ 覓伎^蟇  ?
[143] Modern C++ 覓伎^蟇 ?
NAVER D2
Effective c++ chapter1 2_dcshin
Effective c++ chapter1 2_dcshinEffective c++ chapter1 2_dcshin
Effective c++ chapter1 2_dcshin
Dong Chan Shin
伎 namespace Binding 危危蠍
伎 namespace Binding 危危蠍 伎 namespace Binding 危危蠍
伎 namespace Binding 危危蠍
Yong Joon Moon
覦ろ磯(6蠍) 4
覦ろ磯(6蠍) 4覦ろ磯(6蠍) 4
覦ろ磯(6蠍) 4
Jina Lee
Concurrent Programming (Java thread る蠍)
Concurrent Programming (Java thread る蠍)Concurrent Programming (Java thread る蠍)
Concurrent Programming (Java thread る蠍)
JungGeun Lee
Javascript (function) 螳, 語, this, prototype, scope
Javascript (function) 螳, 語, this, prototype, scopeJavascript (function) 螳, 語, this, prototype, scope
Javascript (function) 螳, 語, this, prototype, scope
Young-Beom Rhee
Realm @Android
Realm @Android Realm @Android
Realm @Android
Theodore(Yongbin) Cha
Java script
Java scriptJava script
Java script
Start IoT with JavaScript - 6.
Start IoT with JavaScript - 6.Start IoT with JavaScript - 6.
Start IoT with JavaScript - 6.
Park Jonggun
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
Effective c++(chapter 5,6)
Effective c++(chapter 5,6)Effective c++(chapter 5,6)
Effective c++(chapter 5,6)
覓語
Lambda 覓伎瑚
Lambda  覓伎瑚Lambda  覓伎瑚
Lambda 覓伎瑚
Vong Sik Kong
朱 貊襴
朱  貊襴朱  貊襴
朱 貊襴
Park JoongSoo
Flyweight
FlyweightFlyweight
Flyweight
JDK 覲豌
JDK 覲豌JDK 覲豌
JDK 覲豌
SeungHyun Eom
Multi-thread : producer - consumer
Multi-thread : producer - consumerMulti-thread : producer - consumer
Multi-thread : producer - consumer
Chang Yoon Oh
Linq
LinqLinq
Linq
Ki Won Kim
襴 襴豌 Windows via C/C++ : 8 覈 る 蠍壱
襴 襴豌 Windows via C/C++ : 8  覈 る 蠍壱襴 襴豌 Windows via C/C++ : 8  覈 る 蠍壱
襴 襴豌 Windows via C/C++ : 8 覈 る 蠍壱
sung ki choi
[Hello world ろ碁碁]open api client螳覦
[Hello world ろ碁碁]open api client螳覦[Hello world ろ碁碁]open api client螳覦
[Hello world ろ碁碁]open api client螳覦
NAVER D2
[143] Modern C++ 覓伎^蟇 ?
[143] Modern C++ 覓伎^蟇  ?[143] Modern C++ 覓伎^蟇  ?
[143] Modern C++ 覓伎^蟇 ?
NAVER D2
Effective c++ chapter1 2_dcshin
Effective c++ chapter1 2_dcshinEffective c++ chapter1 2_dcshin
Effective c++ chapter1 2_dcshin
Dong Chan Shin
伎 namespace Binding 危危蠍
伎 namespace Binding 危危蠍 伎 namespace Binding 危危蠍
伎 namespace Binding 危危蠍
Yong Joon Moon
覦ろ磯(6蠍) 4
覦ろ磯(6蠍) 4覦ろ磯(6蠍) 4
覦ろ磯(6蠍) 4
Jina Lee
Concurrent Programming (Java thread る蠍)
Concurrent Programming (Java thread る蠍)Concurrent Programming (Java thread る蠍)
Concurrent Programming (Java thread る蠍)
JungGeun Lee
Javascript (function) 螳, 語, this, prototype, scope
Javascript (function) 螳, 語, this, prototype, scopeJavascript (function) 螳, 語, this, prototype, scope
Javascript (function) 螳, 語, this, prototype, scope
Young-Beom Rhee
Java script
Java scriptJava script
Java script
Start IoT with JavaScript - 6.
Start IoT with JavaScript - 6.Start IoT with JavaScript - 6.
Start IoT with JavaScript - 6.
Park Jonggun
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
Effective c++(chapter 5,6)
Effective c++(chapter 5,6)Effective c++(chapter 5,6)
Effective c++(chapter 5,6)
覓語
Flyweight
FlyweightFlyweight
Flyweight
Multi-thread : producer - consumer
Multi-thread : producer - consumerMulti-thread : producer - consumer
Multi-thread : producer - consumer
Chang Yoon Oh

Java(2/4)

  • 3. 1) 螳蟯伎(1) 1 Inheritance 覿覈企れ 覃る襯 企れ 覓朱れ 企 class 企 extends 覿覈企{;} 1螳 覿覈企る . 覿覈煙語 public DmbCellPhone(){super();} 襷れ (OverRiding) 覃襯 企れ 覃 る殊企 蠍磯. 覃 る殊企 譯殊 覿覈 覃 蠏碁豎襦 . 蠏殊 螳蟆 る殊企 覿螳. 襦 碁ゼ throws覿螳. 覿覈覃語 super.method(); final企 覿螳企(企ろル螳) final覃 る殊企 覿螳 覃
  • 4. 2) 螳蟯伎(2) 1 Protected 蠏 覿覈企れprotected覃る 煙 super()れ襦 語螳. 覲 (Promotion) 覿覈企 覲 = 企ろ; ろ 覿覈企れ 覲 朱 蟲 ろ 螳螳豌願 るジ螳豌企蟲豌企襦讌 襷り覲ろ 襷り覲 螳豌企ゼ 讌蟲. Vehicle veh=bus; 螳 覲(Casting) 企 覲=(企)覿覈企ろ; 螳覲 覿覈朱 覲覃 覿覈 覃 襷 螳. 覃螳 覃 螳 覲朱 朱 覲 覃 襯 . 螳豌危(instanceof) 螳豌危語 . Boolean result=螳豌instanceof;
  • 5. 3) 豢企 1 螳 abstract 企れ 螻牛 轟 豢豢 企 れ牡 企れ 螻牛給 /覃企 旧. れ牡 企 螳 . public abstarct class AbtractClass{;} れ牡企れ public class RealClass extends AbClass{;}
  • 6. 4) 誤壱伎(1) 1 螳 螳豌伎 覦覯 . 螳豌伎 蟲煙 譴. ろ煙 蟲 . 覦8 れ 誤壱伎れ 蟲螳豌企ゼ . 螳覦貊 螳豌願 襦 旧 覦 螳覦貊螳 誤壱伎れ 覃 語 ->誤壱伎り 螳豌伎 覃襯 語 螳覦貊 螳豌 覲蟆所ロ蟆. 貊覲蟆曙 ろ伎螻 襴願 れ. public interface RemoteControl{} 誤壱伎る豐蠍壱襷瑚. 豢覃 螳豌願 螳讌 覃襯 る蟆. 襴 覓伎語襷 譴. ろ覿 蟲螳豌願 螳讌螻 . 吴碁 誤壱伎れ 碁螻 蟲螳豌願 螳讌螻 語ろ伎 覃. 蠍一ヾ誤壱伎るゼ ロ伎 襦願鍵レ
  • 7. 5) 誤壱伎(2) 1 覃 覦8覿 炎, 吴 覃 襴 螳豌伎 誤壱伎る朱 語 螳. public static final int val=1; public interface RemoteControl{ public int MAX=10; public int MIN=0;} 豢覃 public abstract int remoteMethod(int a); 吴碁 public default int defualtMethod(int a); 覃 public static int staticMethod(int a); 誤壱伎 蟲 螳豌企 誤壱伎れ 豢覃 狩 蠏碁豎 覃襯 螳語狩. 企ゼ 誤壱伎れ 蟲(implement)螳豌企 覃, 蟲螳豌企ゼ 燕 企るゼ 蟲 企る手 . 蟲企 public class 蟲企 implements InterfaceClass{ //れ牡覃;} 覃 誤壱伎れ 覈 覃 public蠏殊
  • 8. 6) 誤壱伎(3) 1 給蟲螳豌 覦ろ殊煙 蟲螳豌企ゼ 襷れ 誤壱伎 覲 = new 誤壱伎(){ //誤壱伎 碁 豢覃 れ 覃 ;} れ誤壱伎 蟲 企 螳豌企 れ 誤壱伎 朱 . 誤壱伎A B螳 覃襯 語 朱る 誤壱伎るゼ 覈 蟲伎 覃, れ螻 螳 焔伎狩. Public class 蟲企る implements 誤壱伎A, 誤壱伎B{ //誤壱伎A B 碁 豢覃 れ牡 覃 } 誤壱伎れ RemoteControl rc;//rc 誤壱伎 rc=new TV(); rc=new Audio(); 豢覃 RemoteControl rc;//rc 誤壱伎 rc=new TV(); rc.turnOff();//TV turnOff()ろ 吴碁 RemoteControl rc;//rc 誤壱伎 rc=new TV(); rc.setMute(true);
  • 9. 7) 誤壱伎(4) 1 覃 RemoteControl.changeBattery(); 覲() 誤壱伎 覲=蟲螳豌 ろ() Tire[] tires={ new Htire(), new Htire()}; 螳覲 蟯螻 覿覈/企り 覲螻 螳 襷ル曙朱, 蟲企る 螳覲 朱 蟲企れ 覃襯 . 蟲企 覲=(蟲企)誤壱伎る; 螳豌危 (instanceof) if(vehicle instanceof Bus) {Bus bus=(bus)vehicle;} (れ螳) public interface 誤壱伎 extends 誤壱伎1, 誤壱伎2{;} 吴碁 蠍一ヾ誤壱伎 覦 蠍磯 豢螳. 吴碁襯 螳讌 誤壱伎 覦覯 吴 覃襯 . 吴 覃襯 . 吴 覃襯 豢覃襦 .
  • 11. 2 Memory II 1)RDA[Runtime Data Areas](1) 螳 JVM 襦蠏碁 蠍 OS襦覿 覦 覃覈襴 螻糾 蟲(5螳讌) thread覲襦 譟伎 - PC Registers, JVM-Stacks, NativeMethod Stacks 覈 thread螳 螻旧(蠍壱伎) - Method Area, Heap PC Register Thread螳 焔襷 . Thread螳 企る轟 ろ蟆 讌襯 蠍磯. JVM-Stack Operand襯 . Method Area 企 企 . 企 覲(語ろ伎る) Method Area 蟷 . new一一襦 企れ 覃 ろ 企 . Type覲, Runtime Constant Pool, 覲, 覃覲, 企 覲(static 覲)
  • 12. 2 Memory II 2)RDA[Runtime Data Areas](2) Heap 語ろ伎り 焔 螻糾. 螳豌企ゼ 燕覃 語ろ伎り Heap . 朱一 覲 Heap 誤郁 ル. GC . JVM-Stacks Thread企ゼ 螻糾. Thread襷 焔. Thread襷 method螳 語 覃覈襴 (push). Method螳 譬襭覃 覃覈襴 覦(pop). Method螳 語覃 method method覲願 stack . Method語 譬襭覃 stack point 蟇磯. Method覲企 襷り覲/讌覲/覲/企 煙 . 螳 る 螳螳 ろ 螳讌, Heap 螻旧. 覓語, Heapthread-unsafe. Native Method Stacks 覦 語伎 螻牛 method lib(DLL, conf)殊 . JNI襯 牛 譴螻 螳蟾 覦朱 蟲 螳.
  • 13. 2 Memory II 3) 襦 螳 java蟲 覈 貊螳 JVM 襷. 企る 谿語^ 螳 朱 JVM 襷螻 覃覈襴 襦. ClassLoader 企 襦 ClassLoader襯 牛 企伎. 蠍磯蓋 企 襦 java.lang.ClassLoader JVM 蟲覃, 覿語ろ碁 企 襦螳 焔. 襦 襦 企るゼ 襦 螻殊 朱 企るゼ 襦. (load-time dynamic loading) 壱 襦 企るゼ 襦 螳 貊襯 ろ 螳 企るゼ 襦. (run-time dynamic loading)
  • 14. 2 Memory II 4) 譴豌企, 譴豌誤壱伎 螳 轟企れ 蟯螻襯 襷埼 蟯蟆企るゼ 企 レ 企れ 覃る襯 襦 所蠏, 碁 蟯螻企るゼ 螳豢一 貊 覲旧°襯 豢. 語ろ伎 覃る企 class A{ class B{ ; } } //A螳豌伎燕伎 螳ロ B譴豌企 覃る企 class A{ static class B{ ; } } //A企る 覦襦 蠏 B 譴豌 企 襦貉企 class A{ void method() { class B ; } } //method()螳 ろ襷 B譴豌 企 覃る企 : A$B.class 襦貉企 : A$1B.class 蠏殊 語ろ伎るる企 - 覦蟾ロ企 語ろ伎 豐蠍郁/覃:O 豐蠍郁/覃 螳豌伎 :X 覦蟾ロ企れ 覈覃/蠏 :O 覃る企 - 覈 豐蠍郁/覃 螳豌 :O 覦蟾ロ企 /覃 蠏 :O 語ろ伎 /覃 蠏 :X 襦貉企 - final 襷り覲 襦貉覲襷 覦蟾ロ企れ宛譟一至鍵 譴豌企 企 覦蟾ロ企れ宛譟磯 覦蟾ロ企.this.||覃(); 譴豌企 企 譴豌企 谿語^ this.||覃();
  • 15. 2 Memory II 5) 襦語れ る(1) 襦語 ろ譴 襦蠏碁,,る襦 蟲 磯 襦語 伎 れ . 覈 襦語る 伎 磯襯 螳讌螻 . 炎磯 襦語: +磯, 磯螳 2螳伎 豌襴 覃一磯 襦語=+n螳 磯, 磯 1:1 - CPU襷 一一 螳 蟇碁Μ讌 炎磯螳 . - CPU伎語 蟆曙 覃一磯 襦語り 覃一磯 襦語る伎 磯螳 . CPU レ 旧 レ 覿襴 蠍壱/蟲谿 伎 螳 磯螳 蠏燕 覿襯 螳襦 讌ロ伎 . 磯 蠏碁9 襦 蟯 磯襯 蠏碁9朱 覓苦伎 . 磯 蠏碁9 るジ 磯 蠏碁9 螳. 磯 蠏碁9螻 磯 蠏碁9 覲蟆所. 蠏語 覿螳. 覈 磯 覦 磯 蠏碁9 . 磯 蠏碁9 讌讌 螻 焔 磯 覃語磯 蠏碁9 磯襯 磯 蠏碁9 るる thread 煙 .
  • 16. 2 Memory II 6) 襦語れ る(2) 磯 磯 non-daemon 磯(朱磯) 覲伎^. 朱 磯螳 譬襭覃 譬襭. GC, 襦語 , 覃願葦煙 . 覓危襭 譟郁唄覓語朱 ろ 蠍壱り 轟 譟郁唄 襷譟焔覃 螻 れ 蠍壱襦 焔. boolean isDaemon():磯螳 磯語 . void setDaemon(boolean on)る襯 磯磯襦 磯襦 覲蟆. 襷り覲 螳 true企 磯磯襦 覲蟆. setDaemon() 覦 start()語 ろ伎 . 磯 覈譯手鍵
  • 17. 2 Memory II 7) 襦語れ る(3) 覦 覃 る void interrupt() sleep()企 join() 殊讌 磯襯 ろ 蠍 襦 襷. 企 磯 InterruptedException 覦 朱 殊讌襯 覯企蟆 . void join() 讌 螳 磯螳 ろ襦 . 讌 螳 讌蟇磯 譬襭覃 join() 語 磯襦 れ ろ 螻. void join(long millis) void join(long millis, int nanos) void resume() suspend() 殊讌 磯襯 ろ蠍一襦 襷.
  • 18. 2 Memory II 8) 襦語れ る(4) static void sleep(long millis) 讌 螳(豌覿 殊 ) 磯襯 殊讌. 讌 螳 讌螻 覃, 朱 れ ろ蠍一螳 .static void sleep(long millis, int nanos) void stop() 磯襯 讀 譬襭. 蟲谿(dead-lock) 觜讌蠍 所鍵 覓語 deprecated . void suspend() 磯襯 殊 讌. resume() 語覃 螳 static void void yield() ろ 譴 るジ 磯蟆 覲(yield)螻 ろ蠍一螳 . 覦 覃 る
  • 19. 2 Memory II 9) 襦語れ る(5) る NEW 磯螳 焔螻 讌 start()螳 語讌 RUNNABLE ろ 譴 ろ 螳ロ BLOCKED 蠍壱觚 伎 殊讌 (LOCK 襴 蟾讌 蠍磯るΜ ) WAITING, TIMED_ WAITING 磯 譬襭讌 讌襷 ろ螳ロ讌 (unrunnable) 殊 讌, TIMED_WAITING 殊讌螳 讌 蟆曙磯ゼ 覩 TERMINATED 磯 譬襭 wait(), notify() - 蠍壱 願鍵 . - Object 企れ 朱襦, 覈 螳豌伎 語 螳ロ. - 蠍壱 觚襦伎襷 . - wait() : 螳豌伎 lock 螻 企 螳豌伎 磯襯 蠍一襦 . - notify() : 蠍一 磯 譴 襯 蟾企. - notifyAll() : 蠍一 覈 磯襯 蟾企. 語 螳豌伎 蠍 譴 磯襷 企 . 豢豌 http://gangzzang.tistory.com/m/post/75
  • 21. 3 Exception 1) 譬襯 朱(Exception) / ろ(Runtime Exception) 誤企 java.lang.Exception企るゼ 覦 覈 企(java.lang.[ClassNotFound|Interrupted|Runt ime|...]Exception) ろ ろ碁 貉危朱螳 豌危讌 . 螳覦螳 語襴貊襯 曙伎 豌襴. NullPointer Exception java.lang.NullPointerException, 螳豌伎宛譟郁 (null螳 螳) 谿語^覲襦 螳豌 蠏 一一襯(.) 覦 ArrayIndexOut BoundsException java.lang.ArrayIndexOutOfBoundsException, 覦一 碁煙 覯 豐螻 覦 NumberFromat Exception java.lang.NumberFormatException, 覓語 煙 一危磯ゼ 襦 覲蟆渚 覦. Integet.parseInt(String s); Double.parseDouble(String s)襯 伎 覓語伎 れ襦 覲 る . ClassCastException 覲(Casting) / 企 蟲企/誤壱伎 螳 覦. 蟯螻 語 蟆 一 貂ろ 覦.
  • 22. 3 Exception 2) 語襴貊 try-catch-finally 焔逢覯 try{ 碁貊; }catch ( 誤企 e){ 語襴; }finally{ ろ 貊; }
  • 23. 3 Exception 3) 語襯覲 豌襴貊 れcatch try{;}catch(1 e){;}catch(2 e){;}finally{;} catch 企る 企 襦 覃catch catch(1 e || 2 e){;} 襴 蠍 try-with-resources. close() 覃襦 蟆 襴るゼ 譬襭 try{;}catch( e){;} finally{ if(fis!=null){ try{ fis.close(); }catch( e){ ; } } } 蠍郁鍵 碁 覃襯 語 螻褐朱 碁ゼ 蟾. public int method2() throws ClassNotFoundException{ ; }//catch覓語豌襴 /碁 企 -> 覦 誤企れ public class BalanceInsufficientException extends Exception{ public BalanceInsufficientException(){} public BalanceInsufficientException(String msg){ super(msg);} } 碁 throw new XXXException(); throw new XXXException("msg"); 語覲伎至鍵 getMessage(), printStackTrace()襯 伎. catch( e){ String msg = e.getMessage(); e.printStackTrace();}
  • 25. 4 Wrapper Class 1) Wrapper()企(1) 螳 蠍磯蓋 螳 螳 螳豌企ゼ (蠍磯蓋螳 企 螻 ) 覦/碁 蠍磯蓋螳 リ豌企 襷蟆 覦, 蠏 碁煙企手. 蠍磯蓋 ロ企 碁焔 byte Byte num=obj.byteValue(); char Character ch=obj.charValue(); short Short num=obj.shortValue(); int Integet num=obj.intValue(); long Long num=obj.longValue(); float Float num=obj.floatValue(); double Double num=obj.doubleValue(); boolean Boolean bool=obj.booleanValue(); 覦 ロ企ろ 蠍磯蓋螳 蟆曙 覦. Integer o=100; 碁 蠍磯蓋 リ豌願 覦. int val1=Integer o=new Integer(1);
  • 26. 4 Wrapper Class 2) Wrapper()企(2) 蠍磯蓋 覓語伎 蠍磯蓋 螳朱 覲 覃 byte num=Byte.parseByte("10"); short num=Short.parseShort("10"); int num=Integer.parseInteger("10"); long num=Long.parseLong("10"); float num=Float.parseFloat("10.0F"); double num=Double.parseDouble("10.0"); boolean bool=Boolean.parseBoolean("true"); リ 觜蟲 碁燕 觜蟲蟇磯 equals()覃襯 覃 企螳 觜蟲襦 る殊企 伎.