Professional Documents
Culture Documents
net/software
BlueJ ﺁﻣﻮزش
Persian Support by: JEIC SOFT (Jafzar Engineering and Investigation Company)
Michael Kölling
Mærsk Institute
University of Southern Denmark
www.rasekhoon.net
www.rasekhoon.net/software
ﻓﺼﻞ ا – ﻣﻘﺪﻣﻪ
۵ ( ١ -١درﺑﺎرﻩ ............................................................................................................BlueJ
٨ ﻓﺼﻞ – ٣ﺷﺮوع ﮐﺮدن ) وﻳﺮاﻳﺶ ﮐﺮدن -ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدن – اﺝﺮاﻳﯽ ﮐﺮدن (
٢
www.rasekhoon.net
www.rasekhoon.net/software
٣
www.rasekhoon.net
www.rasekhoon.net/software
Copyright © M. Kölling
۴
www.rasekhoon.net
www.rasekhoon.net/software
ﻣﻘﺪﻣﻪ
( ١-١درﺑﺎرﻩ BlueJ
اﻳﻦ اﻣﻮزش ﻣﻘﺪﻣﻪ ای ﺑﺮای اﺳﺘﻔﺎدﻩ از ﻣﺤﻴﻂ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ BlueJﻣﻴﺒﺎﺷﺪ BlueJ .ﻣﺤﻴﻂ ﺗﻮﺳﻌﻪ ﺝﺎوا ﻣﻴﺒﺎﺷﺪ ﮐﻪ ﺑﻪ ﻃﻮر وﻳﮋﻩ
ﺑﺮای ﺁﻣﻮزش ﺝﺎوا در ﺳﻄﻮح ﻣﻘﺪﻣﺎﺗﯽ ﻃﺮاﺡﯽ ﺷﺪﻩ اﺳﺖ .اﻳﻦ ﻧﺮم اﻓﺰار ﺗﻮﺳﻂ ﺗﻴﻢ ﻃﺮاﺡﯽ و ﭘﻴﺎدﻩ ﺳﺎز در داﻧﺸﮕﺎﻩ Deakin
ﺷﻬﺮ ﻣﻠﺒﻮرن اﺳﺘﺮاﻟﻴﺎ و هﻤﭽﻨﻴﻦ داﻧﺸﮕﺎﻩ ﮐﻨﺖ ) (Kentﺷﻬﺮ ﮐﺎﻧﺘﺮﺑﺮی اﻧﮕﻠﺴﺘﺎن اﻳﺠﺎد ﺷﺪﻩ اﺳﺖ.
ﺑﺮای ﺑﺪﺳﺖ ﺁوردن اﻃﻼﻋﺎت ﺑﻴﺸﺘﺮ ﺑﻪ وب ﺳﺎﻳﺖ اﻳﻦ ﻧﺮم اﻓﺰار ﺑﻪ ﺁدرس زﻳﺮ ﻣﺮاﺝﻌﻪ ﻧﻤﺎﻳﻴﺪ :
Http://www.bluej.org
اﻳﻦ ﺁﻣﻮزش ﺑﺮای ﺗﻌﻠﻴﻢ دادن ﺝﺎوا ﻧﻤﯽ ﺑﺎﺷﺪ و در اﺻﻞ ﻣﺤﻴﻄﯽ ﺑﺮای اﻣﻮزش ﺝﺎوا ﻣﯽ ﺑﺎﺷﺪ.
ﻧﺮم اﻓﺰار BlueJو هﻤﭽﻨﻴﻦ اﻳﻦ ﺁﻣﻮزش هﻤﺎﻧﮕﻮﻧﻪ ﮐﻪ هﺴﺘﻨﺪ ) (as-isﺑﺮای اﺳﺘﻔﺎدﻩ هﺎی ﺷﺨﺼﯽ و ﻏﻴﺮ ﺗﺠﺎری ﺑﺼﻮرت راﻳﮕﺎن
ﻧﻈﺮات ،ﺳﻮاﻻت ،اﺻﻼﺡﺎت و اﻧﺘﻘﺎدات ﺷﻤﺎ در ﺧﺼﻮص ﻧﺮم اﻓﺰار و ﻳﺎ اﻣﻮزش BlueJﺑﺎﻋﺚ ﺧﻮﺷﺤﺎﻟﯽ و ﺗﺸﻮﻳﻖ ﻣﺎ
ﺧﻮاهﺪ ﺷﺪ .ﻟﻄﻔﺎ ﻣﻴﻞ ﮐﻨﻴﺪ ﺑﻪ ﻣﺎﻳﮑﻞ ﮐﻮﻟﻴﻨﮓ ) ( Michael Kollingﺑﻪ ﺁدرس زﻳﺮ :
mik@mip.sdu.dk
(۵-١ﺳﺨﻦ ﻣﺘﺮﺝﻢ
ﺁﻣﻮزﺷﯽ ﮐﻪ هﻤﺎﮐﻨﻮن در اﺧﺘﻴﺎر دارﻳﺪ ﺗﺮﺝﻤﻪ ﻣﺘﻦ اﻧﮕﻠﻴﺴﯽ ﺁﻣﻮزش BlueJﻣﯽ ﺑﺎﺷﺪ.ﮐﻪ در ﺳﺎﻳﺖ رﺳﻤﯽ اﻳﻦ ﻧﺮم اﻓﺰار ﻣﻮﺝﻮد
اﺳﺖ .اﻟﺒﺘﻪ اﻳﻦ ﻣﺘﻦ ﺗﺮﺝﻤﻪ ﻟﻐﺖ ﺑﻪ ﻟﻐﺖ ﺁﻣﻮزش اﻧﮕﻠﻴﺴﯽ ﻧﺮم اﻓﺰار ﻧﻴﺴﺖ ﺑﻠﮑﻪ ﺑﺮداﺷﺘﯽ ﺁزاد از ﺁن ﻣﺘﻦ اﺳﺖ ﮐﻪ ﮐﻮﺷﺶ ﺷﺪﻩ
ﺗﻤﺎم ﻣﺘﻦ اﺻﻠﯽ را ﭘﻮﺷﺶ دهﺪ .اﻣﻴﺪوارم ﮐﻪ اﻳﻦ اﺛﺮ ﮐﻪ از ﻃﺮف ﺷﺮﮐﺖ ﺗﺤﻘﻴﻘﺎﺗﯽ و ﻣﻬﻨﺪﺳﯽ ﺝﯽ اﻓﺰار ﭘﺸﺘﻴﺒﺎﻧﯽ ﻣﯽ ﺷﻮد ﻣﻘﺒﻮل
ﺷﻤﺎ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﺎن و ﺗﻮﺳﻌﻪ دهﻨﺪﮔﺎن اﻳﺮاﻧﯽ ﻗﺮار ﺑﮕﻴﺮد .در ﺻﻮرﺗﯽ ﮐﻪ ﺷﻤﺎ دوﺳﺘﺎن ﻋﺰﻳﺰ ﮐﺎﺳﺘﯽ در اﻳﻦ اﺛﺮ دﻳﺪﻳﺪ ﻟﻄﻔ ًﺎ
ﺑﺮای ﺑﺮﻃﺮف ﮐﺮدن ﺁن در ﻧﺴﺨﻪ هﺎی ﺑﻌﺪی اﻳﻦ ﺁﻣﻮزش ﺁﻧﺮا ﺑﺎ اﺳﺘﻔﺎدﻩ از اﻳﻤﻴﻞ زﻳﺮ ﺑﻪ ﺑﻨﺪﻩ اﻃﻼع دهﻴﺪ.
Persianshadow2003@yahoo.com
۵
www.rasekhoon.net
www.rasekhoon.net/software
ﺑﺮای دﻳﮕﺮ ﺳﻴﺴﺘﻢ هﺎ .ﻣﺮاﺡﻞ ﻧﺼﺐ اﻳﻦ ﻧﺮم اﻓﺰار ﮐﺎﻣﻼ ﺳﺮ راﺳﺖ و ﻣﺸﺨﺺ ﻣﯽ ﺑﺎﺷﺪ.
ﺷﻤﺎ ﺑﺮای اﺳﺘﻔﺎدﻩ از BlueJﺑﺎﻳﺪ J2SE1.4ﻳﺎ ﻧﺴﺨﻪ هﺎی ﺑﺎﻻﺗﺮ را ﻧﺼﺐ داﺷﺘﻪ ﺑﺎﺷﻴﺪ .ﻣﺎ ﺗﻮﺻﻴﻪ ﻣﯽ ﮐﻨﻴﻢ ﮐﻪ از ﻧﺴﺨﻪ هﺎی
ﻏﻴﺮ ﺑﺘﺎ ) (Betaﺝﺎوا اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ .اﮔﺮ ﺷﻤﺎ ﺝﺎوا ) (JDKرا ﻧﺪارﻳﺪ .ﻣﯽ ﺗﻮاﻧﻴﺪ از ﻃﺮﻳﻖ وب ﺳﺎﻳﺖ ﺷﺮﮐﺖ ﺳﺎن ﺁﻧﺮا ﺑﺼﻮرت
http://java.sun.com/j2se
در ﺳﻴﺴﺘﻢ ﻋﺎﻣﻞ MacOS Xﺁﺧﺮﻳﻦ ﻧﺴﺨﻪ ﺝﺎوا ﺑﺼﻮرت ﭘﻴﺶ ﻓﺮض ﻧﺼﺐ ﻣﻴﺒﺎﺷﺪ .و ﺷﻤﺎ ﻧﻴﺎز ﺑﻪ ﻧﺼﺐ ﻣﺠﺪد ﺝﺎوا ﺗﻮﺳﻂ
ﺧﻮدﺗﺎن ﻧﺪارﻳﺪ .در ﺿﻤﻦ اﮔﺮ در ﺻﻔﺤﻪ داﻧﻠﻮد ﺷﻤﺎ ﺑﺎ دو ﭘﻴﺸﻨﻬﺎد JREو ﻳﺎ SDKﺑﺮﺧﻮرد ﮐﺮدﻳﺪ .ﺷﻤﺎ ﺑﺎﻳﺪ SDKرا داﻧﻠﻮد
ﻓﺎﻳﻞ ﺗﻮزﻳﻊ ﺷﺪﻩ ﺑﺮای ﺳﻴﺴﺘﻢ ﻋﺎﻣﻞ وﻳﻨﺪوز ﺑﺎ اﻳﻦ ﻧﺎم ﻣﯽ ﺑﺎﺷﺪ . bluejsetup-xxx.exe :ﮐﻪ ﮐﻠﻤﺎت xxxﺷﻤﺎرﻩ ﻧﺴﺨﻪ
BlueJرا ﻣﺸﺨﺺ ﻣﯽ ﮐﻨﺪ .ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ﻓﺎﻳﻞ ﻧﺼﺐ ﮐﻨﻨﺪﻩ BlueJﻧﺴﺨﻪ 2.0.0ﺑﺪﻳﻦ ﺻﻮرت
ﺷﻤﺎ اﻳﻦ ﻓﺎﻳﻞ رو ﻣﯽ ﺗﻮاﻧﻴﺪ از ﻃﺮﻳﻖ ﻳﮏ دﻳﺴﮏ درﻳﺎﻓﺖ ﮐﺮدﻩ و ﻳﺎ اﻳﻨﮑﻪ از وب ﺳﺎﻳﺖ BlueJدرﻳﺎﻓﺖ ﮐﻨﻴﺪ .ﺑﺎ اﺳﺘﻔﺎدﻩ از اﻳﻦ
ﻧﺼﺐ ﮐﻨﻨﺪﻩ ) ( installerﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ .ﭘﻮﺷﻪ ای را ﮐﻪ ﻗﺼﺪ دارﻳﺪ BlueJ .در ﺁن ﻧﺼﺐ ﺷﻮد ﻣﺸﺨﺺ ﮐﻨﻴﺪ .هﻤﭽﻨﻴﻦ اﻳﻦ
ﻧﺼﺐ ﮐﻨﻨﺪﻩ ﮔﺰﻳﻨﻪ هﺎی ﺑﺮای ﻧﺼﺐ ﻣﻴﺎﻧﺒﺮ ) (shortcutدر ﻣﻨﻮی ﺷﺮوع و دﺳﮑﺘﺎپ ﺑﻪ ﺷﻤﺎ اراﺋﻪ ﻣﯽ دهﺪ.
ﺑﻌﺪ از اﻳﻨﮑﻪ ﻧﺼﺐ ﺗﻤﺎم ﺷﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺮﻧﺎﻣﻪ BlueJ.exeرا در ﭘﻮﺷﻪ ای ﮐﻪ BlueJﻧﺼﺐ ﺷﺪﻩ ﭘﻴﺪا ﮐﻨﻴﺪ.
اوﻟﻴﻦ ﺑﺎری ﮐﻪ ﺷﻤﺎ ﺑﺮﻧﺎﻣﻪ BlueJرا اﺝﺮا ﮐﻨﻴﺪ BlueJ .ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ را ﺑﺮای ﭘﻴﺪا ﮐﺮدن ﺝﺎوا ) (JDKﺝﺴﺘﺠﻮ
ﻣﯽ ﻧﻤﺎﻳﺪ .و اﮔﺮ ﭼﻨﺪ ورژن ﻣﻨﺎﺳﺐ از ﺝﺎوا ) ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل JDK1.4و ( JDK1.5را روی ﺳﻴﺴﺘﻢ ﺷﻤﺎ ﭘﻴﺪا ﮐﺮد.
ﭘﻨﺠﺮﻩ ای را ﺑﺎز ﻣﯽ ﮐﻨﺪ ﮐﻪ ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻳﮑﯽ از ﺁن ﻧﺴﺨﻪ هﺎی ﺝﺎوا را اﻧﺘﺨﺎب ﮐﻨﻴﺪ.
در ﺿﻤﻦ اﮔﺮ BlueJﻧﺘﻮاﻧﺴﺖ JDK .را روی ﺳﻴﺴﺘﻢ ﺷﻤﺎ ﭘﻴﺪا ﮐﻨﺪ .ﻣﺴﻴﺮ ﺁﻧﺮا از ﺷﻤﺎ ﺳﻮال ﺧﻮاهﺪ ﮐﺮد ) .دﻟﻴﻞ اﻳﻦ اﻣﺮ
ﻣﯽ ﺗﻮاﻧﺪ اﻳﻦ ﺑﺎﺷﺪ ﮐﻪ JDKروی ﺳﻴﺴﺘﻢ ﺷﻤﺎ ﻧﺼﺐ ﺷﺪﻩ ﺑﺎﺷﺪ .وﻟﯽ ﻣﻘﺪار ﻣﻮرد ﻧﻴﺎز از Registryوﻳﻨﺪوز ﭘﺎک ﺷﺪﻩ ﺑﺎﺷﺪ.
ﻧﺼﺐ ﮐﻨﻨﺪﻩ BlueJهﻤﭽﻨﻴﻦ ﺑﺮﻧﺎﻣﻪ vmselect.exeرا ﻧﺼﺐ ﻣﯽ ﮐﻨﺪ .و ﺷﻤﺎ ﺑﺎ اﺳﺘﻔﺎدﻩ از اﻳﻦ ﺑﺮﻧﺎﻣﻪ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻧﺴﺨﻪ
۶
www.rasekhoon.net
www.rasekhoon.net/software
ﻓﺎﻳﻞ هﺎی ﺗﻮزﻳﻊ ﺷﺪﻩ ﺑﺮای ﻣﮑﻴﻨﺘﺎش ﺑﻪ ﺷﮑﻞ blueJ-xxx.zipﻧﺎﻣﻴﺪﻩ ﻣﯽ ﺷﻮﻧﺪ xxx ،هﺎ ﺷﻤﺎرﻩ ﻧﺴﺨﻪ ﻧﺮم اﻓﺰار را ﻣﺸﺨﺺ
ﻣﯽ ﮐﻨﻨﺪ.ﺑﺮای ﻣﺜﺎل ﻧﺴﺨﻪ ، blueJ 2.0.0ﻓﺎﻳﻞ هﺎی ﺗﻮزﻳﻊ ﺷﺪﻩ اش ﺑﺼﻮرت BlueJ-200.zipﻣﻴﺒﺎﺷﺪ.ﺷﻤﺎ اﻳﻦ ﻓﺎﻳﻞ را
ﻣﯽ ﺗﻮاﻧﻴﺪ در ﻳﮏ دﻳﺴﮑﺖ درﻳﺎﻓﺖ ﮐﺮدﻩ و ﻳﺎ از وب ﺳﺎﻳﺖ BlueJﺑﻪ ﺁدرس زﻳﺮ داﻧﻠﻮد ﻧﻤﺎﻳﻴﺪ:
http://www.bluej.org
ﺳﻴﺴﺘﻢ ﻋﺎﻣﻞ MacOSﺑﻌﺪ از داﻧﻠﻮد ﻓﺎﻳﻞ ﺑﺼﻮرت ﺧﻮدﮐﺎر ﻓﺎﻳﻞ را از ﺡﺎﻟﺖ زﻳﭗ ﺷﺪﻩ ﺧﺎرج ﻣﯽ ﮐﻨﺪ .واﮔﺮ اﻳﻦ ﮐﺎر ﺻﻮرت
ﻧﮕﺮﻓﺖ.ﺑﺮ روی ﻓﺎﻳﻞ دوﺑﺎر ﮐﻠﻴﮏ ﮐﻨﻴﺪ ﺗﺎ ﻓﺎﻳﻞ از ﺡﺎﻟﺖ زﻳﭗ ﺧﺎرج ﺷﻮد.
ﺑﻌﺪ از اﻳﻦ ﮐﻪ ﻓﺎﻳﻞ از ﺡﺎﻟﺖ ﻓﺸﺮدﻩ ﺧﺎرج ﺷﺪ.ﺷﻤﺎ ﭘﻮﺷﻪ ای ﺑﺎ ﻧﺎم BlueJ-xxxﺧﻮاهﻴﺪ داﺷﺖ .اﻳﻦ ﭘﻮﺷﻪ را ﺑﻪ ﭘﻮﺷﻪ
ﺑﺮﻧﺎﻣﻪ هﺎی ﮐﺎرﺑﺮدی ﺗﺎن ﻣﻨﺘﻘﻞ ﻧﻤﺎﻳﻴﺪ) ﻳﺎ هﺮ ﭘﻮﺷﻪ ای ﮐﻪ ﺗﻤﺎﻳﻞ دارﻳﺪ در ﺁن ﻧﮕﻪ دارﻳﺪ(.ﺷﻤﺎ ﻧﻴﺎزی ﺑﻪ ﻧﺼﺐ ﻧﺪارﻳﺪ.
ﻓﺎﻳﻞ هﺎی ﻋﻤﻮﻣﯽ ﺗﻮزﻳﻊ ﺷﺪﻩ ﺑﺮای اﻳﻨﮑﺎر ﻳﮏ ﻓﺎﻳﻞ Jarاﺝﺮاﻳﯽ ﻣﯽ ﺑﺎﺷﺪ .اﻳﻦ ﻓﺎﻳﻞ BlueJ-xxx.jarﺧﻮاﻧﺪﻩ ﻣﯽ ﺷﻮد .ﮐﻪ
در ﺁن xxxﺷﻤﺎرﻩ ﻧﺴﺨﻪ ﻧﺮم اﻓﺰار ﻣﻴﺒﺎﺷﺪ.ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ﻓﺎﻳﻞ هﺎی ﺗﻮزﻳﻊ ﺷﺪﻩ BlueJ 2.0.0ﺑﺎ ﻧﺎم BlueJ-200.jar
ﻣﺸﺨﺺ ﻣﯽ ﺑﺎﺷﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ اﻳﻦ ﻓﺎﻳﻞ را در ﻳﮏ دﻳﺴﮑﺖ و ﻳﺎ از ﻃﺮﻳﻖ وب ﺳﺎﻳﺖ BlueJﺑﻪ ﺁدرس زﻳﺮ درﻳﺎﻓﺖ ﻧﻤﺎﻳﻴﺪ:
http://www.bluej.org
ﺑﺮﻧﺎﻣﻪ ﻧﺼﺐ ﮐﻨﻨﺪﻩ را ﺑﺎ اﺝﺮای دﺳﺘﻮر زﻳﺮ ﻓﺮاﺧﻮاﻧﯽ ﮐﻨﻴﺪ .ﺗﻮﺝﻪ :ﻣﺎ ﺑﺮای اﻳﻦ ﻣﺜﺎل از ﻓﺎﻳﻞ ﺗﻮزﻳﻊ ﺷﺪﻩ BlueJ-200.jar
اﺳﺘﻔﺎدﻩ ﮐﺮدﻩ اﻳﻢ –ﺷﻤﺎ ﻧﻴﺎز دارﻳﺪ ﺗﺎ از ﻧﺎم ﻓﺎﻳﻠﯽ ﮐﻪ در ﻳﺎﻓﺖ ﮐﺮدﻩ اﻳﺪ اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ.
> < j2se-pathﻣﺴﻴﺮ ﭘﻮﺷﻪ ای ﻣﻴﺒﺎﺷﺪ ﮐﻪ در ﺁن J2seﻧﺼﺐ ﻣﻴﺒﺎﺷﺪ .ﭘﻨﺠﺮﻩ ای ﺑﺎز ﻣﯽ ﺷﻮد ﮐﻪ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ
ﺗﺎ ﻣﺤﻞ ﻧﺼﺐ ﺑﺮﻧﺎﻣﻪ و هﻤﭽﻨﻴﻦ ﻧﺴﺨﻪ ﺝﺎوای ﮐﻪ ﺑﺮای اﺝﺮاﻳﯽ BlueJﻣﯽ ﺧﻮاهﻴﺪ از ﺁن اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ ﺗﻌﻴﻴﻦ ﻧﻤﺎﻳﻴﺪ .دﮐﻤﻪ
Installرا ﻓﺸﺎر دهﻴﺪ .ﺑﻌﺪ از اﺗﻤﺎم BlueJ ،ﺑﺮ روی ﺳﻴﺴﺘﻢ ﺷﻤﺎ ﻧﺼﺐ ﺷﺪﻩ اﺳﺖ.
اﮔﺮ ﺷﻤﺎ ﺑﺎ ﻣﺸﮑﻠﯽ ﺑﺮﺧﻮرد ﮐﺮدﻳﺪ .ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﻪ ﺑﺨﺶ FAQﺳﺎﻳﺖ BlueJﻣﺮاﺝﻌﻪ ﮐﻨﻴﺪ :
http://www.bluej.org/help/faq.html
و ﻳﺎ اﻳﻨﮑﻪ ﺑﺨﺶ " ﭘﺮﺳﺶ ﺑﺮای ﮐﻤﮏ " را ﻣﻄﺎﻟﻌﻪ ﻧﻤﺎﻳﻴﺪ:
http://www.bluej.org/help/ask-help.html
٧
www.rasekhoon.net
www.rasekhoon.net/software
ﻓﺼﻞ ﺳﻮم -ﺷﺮوع ﮐﺮدن – وﻳﺮاﻳﺶ ﮐﺮدن – ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدن – اﺝﺮاﻳﯽ ﮐﺮدن
در ﺳﻴﺴﺘﻢ ﻋﺎﻣﻞ وﻳﻨﺪوز و ﻣﮑﻴﻨﺘﺎش ﺑﺮﻧﺎﻣﻪ ﺑﺎ ﻧﺎم BlueJﻧﺼﺐ ﺷﺪﻩ .ﺑﺮای ﺷﺮوع ﺷﻤﺎ ﺑﺎﻳﺪ اﻳﻦ ﺑﺮﻧﺎﻣﻪ را اﺝﺮا ﮐﻨﻴﺪ.
در ﺳﻴﺴﺘﻢ هﺎی ﻳﻮﻧﻴﮑﺲ ﺑﺮﻧﺎﻣﻪ ﻧﺼﺐ ﮐﻨﻨﺪﻩ اﺳﮑﺮﻳﭙﺘﯽ ﺑﺎ ﻧﺎم BlueJرا ﻧﺼﺐ ﮐﺮدﻩ ﮐﻪ ﺷﻤﺎ ﺑﺮای اﺝﺮای ﻣﺤﻴﻂ ﮔﺮاﻓﻴﮑﯽ
روی اﻳﻦ ﻓﺎﻳﻞ دو ﺑﺎر ﮐﻠﻴﮏ ﮐﻨﻴﺪ .در ﺿﻤﻦ ﺑﺎ اﺳﺘﻔﺎدﻩ از ﺧﻂ ﻓﺮﻣﺎن هﻢ ﻣﯽ ﺗﻮاﻧﻴﺪ BlueJرا ﺑﺎ ﺁرﮔﻮﻣﺎن و ﻳﺎ ﺑﺪون ﺁرﮔﻮﻣﺎن
ﻓﺮاﺧﻮاﻧﯽ ﮐﻨﻴﺪ:
$ BlueJ
و ﺑﺎ ﺁرﮔﻮﻣﺎن :
٨
www.rasekhoon.net
www.rasekhoon.net/software
ﺑﻪ ﻃﻮر ﺧﻼﺻﻪ ﺑﺮای ﺑﺎز ﮐﺮدن ﭘﺮوژﻩ از ﻣﻨﻮی Projectﮔﺰﻳﻨﻪ Openرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
ﭘﺮوژﻩ هﺎی BlueJﻣﺎﻧﻨﺪ ﭘﮑﻴﺞ هﺎی اﺳﺘﺎﻧﺪارد ﺝﺎوا از ﭘﻮﺷﻪ هﺎی ﮐﻪ ﺷﺎﻣﻞ ﻓﺎﻳﻞ هﺎی ﭘﺮوژﻩ هﺴﺘﻨﺪ ﺗﺸﮑﻴﻞ ﺷﺪﻩ اﺳﺖ .
ﺑﻌﺪ از اﻳﻨﮑﻪ ﺑﺮﻧﺎﻣﻪ BlueJﺑﺎز ﺷﺪ .ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﻨﻮی Projectو ﮔﺰﻳﻨﻪ Openﭘﺮوژﻩ ﻣﻮرد ﻧﻈﺮ ﺧﻮد را ﺑﺎز ﮐﻨﻴﺪ.
ﭼﻨﺪ ﭘﺮوژﻩ ﻧﻤﻮﻧﻪ ﺑﻪ هﻤﺮاﻩ BlueJﺗﻮزﻳﻊ ﺷﺪﻩ اﺳﺖ ﮐﻪ ﺷﻤﺎ اﻳﻦ ﭘﺮوژﻩ هﺎی ﻧﻤﻮﻧﻪ را ﻣﯽ ﺗﻮاﻧﻴﺪ در ﭘﻮﺷﻪ examples
ﭘﻴﺪا ﻧﻤﺎﻳﻴﺪ.
ﺑﺮای اﻳﻦ ﺑﺨﺶ اﻣﻮزش ﺷﻤﺎ ﭘﺮوژﻩ Peopleرا ﮐﻪ در ﭘﻮﺷﻪ exampleﻗﺮار دارد.ﺑﺎز ﮐﻨﻴﺪ .ﭘﻮﺷﻪ exampleدر ﭘﻮﺷﻪ ای
ﮐﻪ BlueJﻧﺼﺐ ﺷﺪﻩ ﻗﺮار دارد .ﺑﻌﺪ از اﻳﻨﮑﻪ ﺷﻤﺎ ﭘﺮوژﻩ را ﺑﺎز ﮐﺮدﻳﺪ .ﭘﻨﺠﺮﻩ ﺷﻤﺎ ﺷﺒﻴﻪ ﻋﮑﺲ ١ﻣﯽ ﺷﻮد .اﻟﺒﺘﻪ ﺑﺮ اﺳﺎس
(٣-٣اﻳﺠﺎد اﺷﻴﺎ
ﺧﻼﺻﻪ :ﺑﺮای اﻳﺠﺎد ﻳﮏ ﺷﯽ ،ﺳﺎزﻧﺪﻩ ﻣﺮﺑﻮﻃﻪ را از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﮐﻼس اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
ﻳﮑﯽ از اﻋﻤﺎل ﭘﺎﻳﻪ و اﺑﺘﺪاﻳﯽ در BlueJاﻳﻦ اﺳﺖ ﮐﻪ ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺪون اﻳﻦ ﮐﻪ ﮐﻞ ﭘﺮوژﻩ را اﺝﺮا ﻧﻤﺎﻳﻴﺪ .ﺑﺎ ﻳﮏ ﺷﯽ از هﺮ ﮐﻼس
در ارﺗﺒﺎط ﺑﻮدﻩ و ﻣﺘﺪهﺎی ﻋﻤﻮﻣﯽ اﻧﺮا اﺝﺮا ﻧﻤﺎﻳﻴﺪ .ﻣﺮﺡﻠﻪ اﺝﺮا ﮐﺮدن در BlueJﻣﻌﻤﻮﻻ ﺑﺎ اﻳﺠﺎد ﻳﮏ ﺷﯽ و ﻓﺮاﺧﻮاﻧﯽ ﻳﮑﯽ از
ﻣﺘﺪهﺎی ﺷﯽ اﻧﺠﺎم ﻣﯽ ﺷﻮد .اﻳﻦ ﻣﻮرد در ﻃﻮل ﺗﻮﺳﻌﻪ ﻳﮏ ﺑﺮﻧﺎﻣﻪ ﻣﯽ ﺗﻮاﻧﺪ ﺧﻴﻠﯽ ﻣﻔﻴﺪ ﺑﺎﺷﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﮐﻼس هﺎی را ﮐﻪ
ﻣﯽ ﻧﻮﻳﺴﻴﺪ .ﺑﻪ ﻃﻮر ﻣﺠﺰا ﺁزﻣﺎﻳﺶ ﮐﻨﻴﺪ و ﻧﻴﺎزی ﺑﻪ ﻧﻮﺷﺘﻦ ﮐﺎﻣﻞ ﺑﺮﻧﺎﻣﻪ از اﺑﺘﺪا ﻧﺪارد.
ﻧﮑﺘﻪ :ﻣﺘﺪهﺎی Staticﻣﯽ ﺗﻮاﻧﻨﺪ ﺑﺪون اﻳﺠﺎد ﺷﯽ از اﺑﺘﺪا اﺝﺮا ﺷﻮﻧﺪ .ﻧﻤﻮﻧﻪ ای از اﻳﻦ ﻣﺘﺪهﺎی ، staticﻣﺘﺪ mainﻣﻴﺒﺎﺷﺪ.
ﺑﻨﺎﺑﺮاﻳﻦ ﻣﺎ ﻣﯽ ﺗﻮاﻧﻴﻢ هﻤﭽﻴﻦ ﮐﺎری را اﻧﺠﺎم دهﻴﻢ.هﻤﺎﻧﮕﻮﻧﻪ ﮐﻪ در ﺑﺮﻧﺎﻣﻪ هﺎی ﮐﺎرﺑﺮدی ﺝﺎوا اﺗﻔﺎق ﻣﯽ اﻓﺘﺪ .ﺑﺮای اﺝﺮا ﻳﮏ
ﻣﺎ ﺑﻌﺪا ﺑﻪ اﻳﻦ ﻣﻮﺿﻮع ﺑﺮ ﺧﻮاهﻴﻢ ﮔﺸﺖ .اﺑﺘﺪا ﻣﺎ ﻗﺼﺪ دارﻳﻢ ﺗﺎ ﮐﺎرهﺎی ﺝﺎﻟﺒﯽ را اﻧﺠﺎم دهﻴﻢ ﮐﻪ ﺑﻪ ﺻﻮرت ﻋﺎدی در ﺝﺎوا
ﻣﺮﺑﻊ هﺎی ﮐﻪ ﺷﻤﺎ در وﺳﻂ ﭘﻨﺠﺮﻩ اﺻﻠﯽ ﺑﺮﻧﺎﻣﻪ ﻣﯽ ﺑﻴﻨﻴﺪ ) (Database,person,staff,studentﺁﻳﮑﻮن هﺎی هﺴﺘﻨﺪ ﮐﻪ
ﮐﻼس هﺎی ﻣﻮﺝﻮد در اﻳﻦ ﭘﺮوژﻩ را ﻧﻤﺎﻳﺶ ﻣﯽ دهﻨﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺎ ﮐﻠﻴﮏ راﺳﺖ ﮐﺮدن ) در ﻣﮑﻴﻨﺘﺎش ( Ctrl-click :ﺑﺮ
روی اﻳﻦ ﺁﻳﮑﻮن هﺎ ﻣﻨﻮی از ﻋﻤﻠﻴﺎت ﻣﻮﺝﻮد ﺑﺮای ان ﮐﻼس را ﺑﺪﺳﺖ ﺁورﻳﺪ ) .ﺷﮑﻞ ( ٢
٩
www.rasekhoon.net
www.rasekhoon.net/software
اﻳﻦ اﻋﻤﺎل ﻧﻤﺎﻳﺶ دادﻩ ﺷﺪﻩ ﺷﺎﻣﻞ دﺳﺘﻮر newﺑﻪ هﻤﺮاﻩ ﺳﺎزﻧﺪﻩ هﺎی ﺗﻌﺮﻳﻒ ﺷﺪﻩ ﺑﺮای ﮐﻼس و هﻤﭽﻨﻴﻦ دﻳﮕﺮ اﻋﻤﺎﻟﯽ ﮐﻪ
ﻣﺎ ﻗﺼﺪ دارﻳﻢ ﺗﺎ از ﮐﻼس Staffﻳﮏ ﺷﯽ اﻳﺠﺎد ﻧﻤﺎﻳﻴﻢ .ﺑﻨﺎﺑﺮاﻳﻦ ﺑﺮ روی ﺁﻳﮑﻮن Staffﮐﻠﻴﮏ راﺳﺖ ﮐﺮدﻩ ) .هﻤﺎﻧﻨﺪ ﻣﻨﻮی
ﺑﺎزﺷﻮﻧﺪﻩ ﺷﮑﻞ .(٢ﻣﻨﻮی ﻧﻤﺎﻳﺶ دادﻩ ﺷﺪﻩ ﺷﺎﻣﻞ دو ﺳﺎزﻧﺪﻩ ﺑﺮای ﺳﺎﺧﺘﻦ ﺷﯽ Staffﻣﯽ ﺑﺎﺷﺪ .ﻳﮑﯽ ﺑﺎ ﭘﺎراﻣﺘﺮ و ﻳﮑﯽ ﺑﺪون
ﭘﺎراﻣﺘﺮ .ﻣﺎ در اﺑﺘﺪا ﺳﺎزﻧﺪﻩ ﺑﺪون ﭘﺎراﻣﺘﺮ را اﻧﺘﺨﺎب ﻣﯽ ﻧﻤﺎﻳﻴﻢ .ﭘﻨﺠﺮﻩ ﻧﺸﺎن دادﻩ ﺷﺪﻩ در ﺷﮑﻞ ٣ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد.
١٠
www.rasekhoon.net
www.rasekhoon.net/software
اﻳﻦ ﭘﻨﺠﺮﻩ ﻧﺎم ﺷﯽ زا ﮐﻪ ﻗﺼﺪ دارﻳﺪ اﻳﺠﺎد ﮐﻨﻴﺪ ﻣﯽ ﭘﺮﺳﺪ.ﻣﺎ دراﻳﻦ زﻣﺎن ﺑﺎ ﻧﺎم ﭘﻴﺶ ﻓﺮض ) (staff1ﻣﻮاﻓﻘﺖ ﻣﯽ ﻧﻤﺎﻳﻴﻢ.
اﻳﻦ ﻧﺎم ﺑﺮای ﺡﺎﻻ ﻣﻨﺎﺳﺐ ﻣﯽ ﺑﺎﺷﺪ .ﺷﻤﺎ ﺗﻨﻬﺎ ﮐﺎﻓﻴﺴﺖ دﮐﻤﻪ Okرا ﻓﺸﺎر دهﻴﺪ.ﺡﺎﻻ ﺷﯽ از ﮐﻼس Staffاﻳﺠﺎد ﻣﯽ ﺷﻮد.
هﻨﮕﺎﻣﯽ ﮐﻪ ﺷﻤﺎ ﺷﯽ را اﻳﺠﺎد ﮐﺮدﻳﺪ.ﺷﯽ در ﻗﺴﻤﺖ object benchﻗﺮار ﻣﯽ ﮔﻴﺮد )ﺷﮑﻞ .(۴
ﭘﺲ روش اﻳﺠﺎد ﺷﯽ :از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﮐﻼس ﺳﺎزﻧﺪﻩ را اﻧﺘﺨﺎب ﮐﺮدﻩ ،ﺁﻧﺮا اﺝﺮا ﮐﻨﻴﺪ .ﺡﺎﻻ ﺷﻤﺎ ﻳﮏ ﺷﯽ در ﻗﺴﻤﺖ
Object benchﺧﻮاهﻴﺪ داﺷﺖ .ﺷﻤﺎ ﺑﺎﻳﺪ دﻗﺖ ﮐﻨﻴﺪ ﮐﻪ ﮐﻼس Personﺑﺎ ﻧﺸﺎن >> <<abstractﻋﻼﻣﺖ ﮔﺬاری ﺷﺪﻩ
) ﻳﻌﻨﯽ ﮐﻼس abstractهﺴﺖ ( ﺷﻤﺎ ﺑﺎﻳﺪ دﻗﺖ ﮐﻨﻴﺪ ﮐﻪ ﺷﻤﺎ از ﻳﮏ ﮐﻼس abstractﻧﻤﯽ ﺗﻮاﻧﻴﺪ ﻳﮏ ﺷﯽ اﻳﺠﺎد ﮐﻨﻴﺪ
(۴-٣اﺝﺮا ﮐﺮدن
ﺧﻼﺻﻪ :ﺑﺮای اﻳﺠﺎد ﻳﮏ ﺷﯽ ،از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﺷﯽ ﻣﺘﺪ ﻣﺮﺑﻮﻃﻪ را اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
ﺡﺎﻻ ﮐﻪ ﺷﻤﺎ ﻳﮏ ﺷﯽ اﻳﺠﺎد ﮐﺮدﻳﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻋﻤﻠﻴﺎت ﻋﻤﻮﻣﯽ را روی ﺁن اﺝﺮا ﻧﻤﺎﻳﻴﺪ .روی ﺁﻳﮑﻮن ﺷﯽ ﮐﻠﻴﮏ راﺳﺖ ﮐﺮدﻩ
ﺗﺎ ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﺷﯽ ﻧﻤﺎﻳﺶ دادﻩ ﺷﻮد)ﺷﮑﻞ .(۵ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﻣﺘﺪهﺎی ﻣﻮﺝﻮد ﺑﺮای اﻳﻦ ﺷﯽ را ﺑﻪ هﻤﺮاﻩ دو ﻋﻤﻠﯽ ﮐﻪ ﺗﻮﺳﻂ
ﻣﺤﻴﻂ BlueJﺗﻮﺳﻌﻪ ﻳﺎﻓﺘﻪ اﻧﺪ ) (Inspect and Removeرا ﻧﻤﺎﻳﺶ ﻣﯽ دهﺪ .ﻣﺎ ﺑﻌﺪا ﺁﻧﻬﺎ را ﺗﻮﺿﻴﺢ ﺧﻮاهﻴﻢ داد .اﺑﺘﺪا اﺝﺎزﻩ
١١
www.rasekhoon.net
www.rasekhoon.net/software
ﺷﻤﺎ در ﺁﻧﺠﺎ ﻣﺘﺪهﺎی setRoomو getRoomرا ﻣﺸﺎهﺪﻩ ﻣﯽ ﻧﻤﺎﻳﻴﺪ.ﮐﻪ هﺮ ﮐﺪام ﺗﻨﻈﻴﻢ ﻣﯽ ﮐﻨﺪ و ﺑﺮ ﻣﯽ ﮔﺮداﻧﻨﺪ ﺷﻤﺎرﻩ
ﺧﺎﻧﻪ ﻣﺮﺑﻮط ﺑﻪ staffرا .ﺳﻌﯽ ﮐﻨﻴﺪ ﺗﺎ ﻣﺘﺪ getRoomرا ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ .ﺑﺮای اﻳﻦ ﮐﺎر از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﺷﯽ ﻣﺘﺪ
را اﻧﺘﺨﺎب ﮐﻨﻴﺪ ﺗﺎ اﺝﺮا ﺷﻮد .ﭘﻨﺠﺮﻩ ای ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد ﮐﻪ ﻧﺘﻴﺠﻪ اﻳﻦ ﻓﺮاﺧﻮاﻧﯽ را ﺑﻪ ﺷﻤﺎ ﻧﻤﺎﻳﺶ ﻣﯽ دهﺪ) .ﺷﮑﻞ (۶
در اﻳﻦ ﻣﻮرد ؛ ﻧﺎم ﺑﺮﮔﺸﺖ دادﻩ ﺷﺪﻩ " "unknown roomﻣﯽ ﺑﺎﺷﺪ .زﻳﺮا ﻣﺎ ﻳﮏ ﻧﺎم ﺧﺎص ﺑﺮای roomاﻳﻦ ﺷﺨﺺ
ﻣﺘﺪهﺎی ﮐﻪ از ﮐﻼس هﺎی دﻳﺮ ارث ﺑﺮدﻩ اﻧﺪ در زﻳﺮ ﻣﻨﻮ ﻣﻮﺝﻮد ﻣﯽ ﺑﺎﺷﻨﺪ .در ﺑﺎﻻی ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﺷﯽ دو زﻳﺮ
ﻣﻨﻮ ﻣﻮﺝﻮد ﻣﻴﺒﺎﺷﺪ .ﻳﮑﯽ ﺑﺮای ﻣﺘﺪهﺎی اﺳﺖ ﮐﻪ ازﮐﻼس Objectارث ﺑﺮدﻩ اﺗﺪ .و ﻳﮑﯽ ﺑﺮای ﻣﺘﺪهﺎی ﮐﻪ از ﮐﻼس . Person
ﺷﻤﺎ ﻣﻴﺘﻮاﻧﻴﺪ ﻣﺘﺪهﺎی ﮐﻼس ) Personﻣﺎﻧﻨﺪ (getName :را ﺑﺎ اﻧﺘﺨﺎب اﻧﻬﺎ از زﻳﺮ ﻣﻨﻮ ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ .اﻳﻦ ﮐﺎر را اﻧﺠﺎم دهﻴﺪ.
اﮔﺮ ﺗﻮﺝﻪ ﮐﻨﻴﺪ ﺧﻮاهﻴﺪ دﻳﺪ ﮐﻪ ﺝﻮاب ﺗﻮﻟﻴﺪ ﺷﺪﻩ ﻧﺎم ﻣﺸﺨﺺ ﻣﯽ ﺑﺎﺷﺪ ﻳﻌﻨﯽ ﭘﺎﺳﺦ ﺑﺮاﺑﺮ ﺑﺎ " "unknown nameﻣﻴﺒﺎﺷﺪ.
ﺡﺎﻻ ﺑﻪ ﻣﺎ اﺝﺎزﻩ ﺑﺪهﻴﺪ ﺗﺎ ﺑﺮای ﻳﮏ اﺗﺎق ) (roomﻳﮏ ﺷﻤﺎرﻩ ﺗﻌﻴﻴﻦ ﮐﻨﻴﻢ .اﻳﻦ ﮐﺎر ﺑﻪ ﻣﺎ ﻧﺸﺎن ﻣﯽ دهﺪ ﮐﻪ ﭼﮕﻮﻧﻪ ﻣﯽ ﺗﻮاﻧﻴﻢ
١٢
www.rasekhoon.net
www.rasekhoon.net/software
ﻳﮏ ﻓﺮاﺧﻮاﻧﯽ ﺑﺎ ﭘﺎراﻣﺘﺮ داﺷﺘﻪ ﺑﺎﺷﻴﻢ ) .ﻓﺮاﺧﻮاﻧﯽ getRoomو getNameﻓﻘﻂ ﻳﮏ ﻣﻘﺪار را ﺑﺮ ﻣﯽ ﮔﺮداﻧﺪ .اﻣﺎ ﭘﺎراﻣﺘﺮ
ﭘﺎراﻣﺘﺮ ﭘﺬﻳﺮ ﻧﻴﺴﺖ ( ﺗﺎﺑﻊ setRoomرا ﺑﺎ اﻧﺘﺨﺎب ﺁن از ﻣﻨﻮ ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ .ﭘﻨﺠﺮﻩ ای ﺑﺎز ﻣﯽ ﺷﻮد ﮐﻪ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ
در ﺑﺎﻻی ﭘﻨﺠﺮﻩ ای ﮐﻪ ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد .راﺑﻂ ﻣﺘﺪ ﻓﺮاﺧﻮاﻧﯽ ﺷﺪﻩ ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد).ﺷﺎﻣﻞ ﮐﺎﻣﻨﺖ و اﻣﻀﺎ ﻣﺘﺪ (
در زﻳﺮ اﻳﻦ ﻗﺴﻤﺖ ﻣﺤﻞ ورود ﻣﺘﻦ ﻣﯽ ﺑﺎﺷﺪ ﮐﻪ ﺷﻤﺎ ﺑﺎ اﺳﺘﻔﺎدﻩ از ان ﻣﯽ ﺗﻮاﻧﻴﺪ ﭘﺎراﻣﺘﺮ ﻣﺮﺑﻮﻃﻪ را وارد ﻧﻤﺎﻳﻴﺪ.
اﻣﻀﺎ ﻣﺘﺪ ﮐﻪ در ﻗﺴﻤﺖ ﺑﺎﻻی ﭘﻨﺠﺮﻩ ﻗﺮار دارد .ﺑﻪ ﻣﺎ ﻣﯽ ﮔﻮﻳﺪ ﮐﻪ ﺷﻤﺎ ﻳﮏ ﭘﺎراﻣﺘﺮ از ﻧﻮع رﺷﺘﻪ دارﻳﺪ.
ﻳﮏ اﺗﺎق ﺝﺪﻳﺪ از ﻧﻮع رﺷﺘﻪ ) ﺷﺎﻣﻞ ﮐﻮﺗﻴﺸﻦ هﺎ ( در ﻣﺤﻞ ورود ﻣﺘﻦ وارد ﻧﻤﺎﻳﺪ و دﮐﻤﻪ Okرا ﻓﺸﺎر دهﻴﺪ.
اﻳﻦ ﻣﺘﺪ ﻣﻘﺪار ﺑﺎزﮔﺸﺘﯽ ﻧﺪارد و در ﻧﺘﻴﺠﻪ ﭘﻨﺠﺮﻩ ای ﺑﻪ ﻋﻨﻮان ﻧﺘﻴﺠﻪ ﺑﺎز ﻧﺨﻮاهﺪ ﺷﺪ.ﺑﻠﮑﻪ ﺑﺮای اﻳﻦ ﮐﻪ ﺷﻤﺎ ﺗﻐﻴﻴﺮات
ﺳﻌﯽ ﮐﻨﻴﺪ اﺷﻴﺎی را اﻳﺠﺎد ﮐﻨﻴﺪ و ﻣﺘﺪهﺎی اﻧﻬﺎ را ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ .ﺳﻌﯽ ﮐﻨﻴﺪ ﮐﻪ ﺳﺎزﻧﺪﻩ را ﺑﺎ ﺁرﮔﻮﻣﺎن هﺎﻳﺶ ﻓﺮاﺧﻮاﻧﯽ
ﻧﻤﺎﻳﻴﺪ .هﻤﭽﻨﻴﻦ ﻣﺘﺪهﺎی ﻣﺮﺑﻮط ﺑﻪ اﻧﻬﺎ را ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ ﺗﺎ ﺑﺎ اﻧﺠﺎم اﻳﻢ ﮐﺎرهﺎ ﺑﺎ اﻳﻦ اﻋﻤﺎل ﺁﺷﻨﺎﻳﯽ ﺑﻴﺸﺘﺮی ﭘﻴﺪا ﻧﻤﺎﻳﻴﺪ.
(۵-٣وﻳﺮاﻳﺶ ﮐﻼس
ﺧﻼﺻﻪ :ﺑﺮای وﻳﺮاﻳﺶ ﮐﺪ ﮐﻼس ،ﺑﺮ روی ﺁﻳﮑﻮن ﮐﻼس دو ﺑﺎر ﮐﻠﻴﮏ ﻧﻤﺎﻳﻴﺪ.
ﺗﺎ اﻳﻨﺠﺎ ،ﻣﺎ ﻓﻘﻂ ﺑﺎ راﺑﻂ اﺷﻴﺎ ﺳﺮو ﮐﺎر داﺷﺘﻴﻢ .اﻣﺎ ﺡﺎﻻ وﻗﺖ اوﻧﻪ ﮐﻪ ﻧﮕﺎهﯽ ﺑﻪ ﺑﺨﺶ داﺧﻠﯽ ﺑﺮﻧﺎﻣﻪ داﺷﺘﻪ ﺑﺎﺷﻴﻢ.
ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﭘﻴﺎدﻩ ﺳﺎزی ﻳﮏ ﮐﻼس را ﺑﺎ اﻧﺘﺨﺎب Open Editorاز ﺗﻮاﺑﻊ ﮐﻼس ﺑﺒﻴﻨﻴﺪ.
) ﻳﺎد ﺁوری :ﺑﺎ ﮐﻠﻴﮏ راﺳﺖ ﮐﺮدن ﺑﺮ روی ﺁﻳﮑﻮن ﮐﻼس ﻣﯽ ﺗﻮاﻧﻴﺪ ﺗﻮاﺑﻊ و اﻋﻤﺎل ﻣﺮﺑﻮط ﺑﻪ ﮐﻼس را ﻣﺸﺎهﺪﻩ ﻧﻤﺎﻳﺪ(
ﺑﺎ دوﺑﺎر ﮐﻠﻴﮏ ﮐﺮدن ﺑﺮ روی ﺁﻳﮑﻮن ﮐﻼس ﺷﻤﺎ ﺑﻪ ﻃﻮر ﻣﻴﺎن ﺑﺮ ﺑﻪ ﺗﻮاﺑﻊ ﻣﺸﺎﺑﻬﯽ دﺳﺘﺮﺳﯽ ﺧﻮاهﻴﺪ ﻳﺎﻓﺖ .ﺝﺰﺋﻴﺎت ﻣﺮﺑﻮط
ﺑﻪ اﺳﺘﻔﺎدﻩ از ادﻳﺘﻮر در اﻳﻦ ﺁﻣﻮزش ﺑﻪ ﺷﺮح دادﻩ ﻧﺸﺪﻩ وﻟﯽ اﺳﺘﻔﺎدﻩ از ان ﺑﺴﻴﺎر ﺳﺮ راﺳﺖ ﻣﯽ ﺑﺎﺷﺪ .ﺝﺰﺋﻴﺎت ادﻳﺘﻮر ﺑﻪ ﻃﻮر
ﻣﺸﺨﺺ ﺑﻌﺪا ﺗﻮﺿﻴﺢ دادﻩ ﺧﻮاهﺪ ﺷﺪ .ﺑﺮای ﺡﺎﻻ ،ﭘﻴﺎدﻩ ﺳﺎزی ﻣﺮﺑﻮط ﺑﻪ ﮐﻼس Staffرا ﺑﺎز ﻧﻤﺎﻳﻴﺪ .ﭘﻴﺎدﻩ ﺳﺎزی ﻣﺮﺑﻮط ﺑﻪ
ﻣﺘﺪ getRoomرا ﭘﻴﺪا ﻧﻤﺎﻳﻴﺪ .اﻳﻦ ﻣﺘﺪ ﺷﻤﺎرﻩ اﺗﺎق اﻋﻀﺎ ﻋﻀﻮ را ﺑﺮ ﻣﯽ ﮔﺮداﻧﺪ .ﺑﻪ ﻣﺎ اﺝﺎزﻩ دهﻴﺪ ﺗﺎ ﺑﺎ اﺿﺎﻓﻪ ﮐﺮدن ﭘﻴﺸﻮﻧﺪ
" "roomﺑﻪ ﻣﺘﺪ ﻧﺘﻴﺠﻪ ﻧﻬﺎﻳﯽ ﺗﺎﺑﻊ را ﺗﻐﻴﻴﺮ دهﻴﻢ )ﺑﻨﺎﺑﺮاﻳﻦ ﻣﺘﺪ ﻣﻘﺪار " "room M.3.18را ﺑﻪ ﺝﺎی ﻣﻘﺪار " "M.3.18ﺑﺮ ﻣﯽ
١٣
www.rasekhoon.net
www.rasekhoon.net/software
ﮔﺮداﻧﺪ( .ﻣﺎ اﻳﻨﮑﺎر را ﺑﺎ ﺗﻐﻴﻴﺮ اﻳﻦ ﺧﻂ ﺑﺮﻧﺎﻣﻪ اﻧﺠﺎم ﺧﻮاهﻴﻢ داد :
;Return room
و ﺗﻐﻴﻴﺮ ان ﺑﻪ :
;Return "room"+room
ﺑﺮﻧﺎﻣﻪ BlueJﺑﻄﻮر ﮐﺎﻣﻞ ،دﺳﺘﻮرات ﺝﺎوا را ﭘﺸﺘﻴﺒﺎﻧﯽ ﻣﯽ ﮐﻨﺪ.در ﻧﺘﻴﺠﻪ در اﻳﻦ ﺝﺎ ﭼﻴﺰ ﺧﺎﺻﯽ ﺑﺮای ﻧﺤﻮﻩ ﭘﻴﺎدﻩ ﺳﺎزی ﮐﻼس
(۶-٣ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدن
ﺧﻼﺻﻪ :ﺑﺮای ﮐﺎﻣﭙﺎﻳﻞ ﻳﮏ ﮐﻼس ،دﮐﻤﻪ Compileدر وﻳﺮاﻳﺶ ﮔﺮ را ﻓﺸﺎر دهﻴﺪ .و ﺑﺮای ﮐﺎﻣﭙﺎﻳﻞ ﻳﮏ ﭘﺮوژﻩ دﮐﻤﻪ Compile
ﺑﻌﺪ از اﻳﻨﮑﻪ ﺷﻤﺎ ﻣﺘﻦ را وارد ﮐﺮدﻳﺪ )و ﻗﺒﻞ از اﻳﻦ ﮐﻪ ﮐﺎر دﻳﮕﺮی اﻧﺠﺎم دهﻴﺪ( .ﻧﻤﺎی ﭘﺮوژﻩ ﺗﺎن را ﺑﺮرﺳﯽ ﻧﻤﺎﻳﻴﺪ ) ﭘﻨﺠﺮﻩ اﺻﻠﯽ(
ﺷﻤﺎ اﮔﺮ دﻗﺖ ﮐﻨﻴﺪ ﺧﻮاهﻴﺪ دﻳﺪ ﮐﻪ ﺁﻳﮑﻮن ﮐﻼس Staffﺗﻐﻴﻴﺮ ﮐﺮدﻩ اﺳﺖ .و ﺁﻳﮑﻮن ﮐﻼس ﺷﺎﻣﻞ ﺧﻄﻮط راﻩ راهﯽ ﺷﺪﻩ اﺳﺖ.
اﻳﻦ ﺧﻄﻮط را ﻩ راﻩ ﻧﺸﺎن ﻣﯽ دهﻨﺪ ﮐﻪ ﮐﻼس ﺑﻌﺪ از ﺁﺧﺮﻳﻦ ﺗﻐﻴﻴﺮات ﮐﺎﻣﭙﺎﻳﻞ ﻧﺸﺪﻩ اﺳﺖ.
ﺗﻮﺝﻪ :ﺷﺎﻳﺪ ﺷﻤﺎ ﺗﻌﺠﺐ ﮐﻨﻴﺪ ﮐﻪ ﭼﺮا ﺑﺮای اوﻟﻴﻦ ﺑﺎر ﮐﻪ اﻳﻦ ﭘﺮوژﻩ را ﺑﺎز ﮐﺮدﻳﺪ ﺁﻳﮑﻮن هﺎی ﮐﻼس ﺧﻂ دار ﻧﺒﻮدن .اﻳﻦ
ﻣﻮﺿﻮع ﺑﻪ اﻳﻦ دﻟﻴﻞ ﻣﯽ ﺑﺎﺷﺪ ﮐﻪ ﮐﻼس هﺎی ﭘﺮوژﻩ peopleﺑﺼﻮرت ﮐﺎﻣﭙﺎﻳﻞ ﺷﺪﻩ ﺗﻮزﻳﻊ ﺷﺪﻩ اﻧﺪ .اﻟﺒﺘﻪ اﮐﺜﺮ ﭘﺮوژﻩ
هﺎی BlueJﺑﺼﻮرت ﮐﺎﻣﭙﺎﻳﻞ ﻧﺸﺪﻩ ﺗﻮزﻳﻊ ﻣﯽ ﺷﻮﻧﺪ .ﺑﻨﺎﺑﺮاﻳﻦ از اﻳﻦ ﺑﻪ ﺑﻌﺪ ،ﺑﻪ ﺁﻳﮑﻮن ﮐﻼس هﺎی ﭘﺮوژﻩ هﺎی ﮐﻪ ﺑﺎز
در ﻣﻨﻮی اﺑﺰار واﻗﻊ در ﺑﺎﻻی وﻳﺮاﻳﺸﮕﺮ ﭼﻨﺪﻳﻦ دﮐﻤﻪ ﻗﺮار دارﻧﺪ ﮐﻪ ﻣﺎ از ﺁﻧﻬﺎ ﻣﺮﺗﺒﺎ اﺳﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻴﻢ .ﻳﮑﯽ از اﻳﻦ دﮐﻤﻪ هﺎ
دﮐﻤﻪ Compileﻣﯽ ﺑﺎﺷﺪ .اﻳﻦ ﺗﺎﺑﻊ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ ﺗﺎ ﮐﻼس ﺗﺎن را ﻣﺴﺘﻘﻴﻤﺎ از درون وﻳﺮاﻳﺸﮕﺮ ﮐﺎﻣﭙﺎﻳﻞ ﻧﻤﺎﻳﻴﺪ.
ﺡﺎﻻ دﮐﻤﻪ Compileرا ﻓﺸﺎر دهﻴﺪ .اﮔﺮ ﺷﻤﺎ اﺷﺘﺒﺎهﯽ ﻣﺮﺗﮑﺐ ﻧﺸﺪﻩ ﺑﺎﺷﻴﺪ .ﭘﻴﻐﺎم " " the class has been compiledدر
ﺑﺨﺶ اﻃﻼﻋﺎت واﻗﻊ در اﻧﺘﻬﺎی وﻳﺮاﻳﺸﮕﺮ ﺑﻪ ﻧﻤﺎﻳﺶ در ﻣﯽ ﺁﻳﺪ .اﮔﺮ ﺷﻤﺎ ﺧﻄﺎﻳﯽ اﻧﺠﺎم دهﻴﺪ ﮐﻪ ﻣﻨﺠﺮ ﺑﻪ ﺗﻮﻟﻴﺪ ﻳﮏ ﺧﻄﺎی ﻧﺤﻮی
ﺷﻮد .ﺧﻂ ﮐﺪی ﮐﻪ ﺧﻄﺎ در ﺁن اﺗﻔﺎق اﻓﺘﺎدﻩ ﻣﺸﺨﺺ )( ﻣﯽ ﺷﻮد و هﻤﭽﻨﻴﻦ ﭘﻴﻐﺎم ﺧﻄﺎﻳﯽ در ﺑﺨﺶ اﻃﻼﻋﺎت ﺑﺮﻧﺎﻣﻪ ﺑﻪ ﻧﻤﺎﻳﺶ
در ﻣﯽ ﺁﻳﺪ ) .در ﻣﻮرد اوﻟﯽ ﮐﻪ ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدﻳﺪ.ﺳﻌﯽ ﮐﻨﻴﺪ ﻳﮏ ﺧﻄﺎی ﻧﺤﻮی اﻳﺠﺎد ﮐﻨﻴﺪ ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ﻳﮏ ﺳﻴﻤﯽ ﮐﻠﻮن را ﺡﺬف
ﮐﻨﻴﺪ .ﺡﺎﻻ ﺁﻧﺮا ﻣﺠﺪدا ﮐﺎﻣﭙﺎﻳﻞ ﻧﻤﺎﻳﻴﺪ ﺗﺎ ﺑﺒﻴﻨﻴﺪ ﭼﻪ اﺗﻔﺎﻗﯽ ﻣﯽ اﻓﺘﺪ ( .ﺑﻌﺪ از اﻳﻦ ﮐﻪ ﮐﻼس را ﺑﺎ ﻣﻮﻓﻘﻴﺖ ﮐﺎﻣﭙﺎﻳﻞ ﻧﻤﻮدﻳﺪ.
وﻳﺮاﻳﺸﮕﺮ را ﺑﺒﻨﺪﻳﺪ.
١۴
www.rasekhoon.net
www.rasekhoon.net/software
ﺗﻮﺝﻪ :ﺷﻤﺎ ﻧﻴﺎز ﺑﻪ ذﺧﻴﺮﻩ ﮐﺪ ﮐﻼس ﻧﺪارﻳﺪ ﮐﺪهﺎ در زﻣﺎن هﺎی ﻣﻮرد ﻧﻴﺎز ﻳﻪ ﺻﻮرت ﺧﻮدﮐﺎر ذﺧﻴﺮﻩ ﻣﯽ ﺷﻮﻧﺪ ) .ﻣﺎﻧﻨﺪ هﻨﮕﺎﻣﯽ
ﮐﻪ وﻳﺮاﻳﺸﮕﺮ را ﻣﯽ ﺑﻨﺪﻳﺪ و ﻳﺎ ﻗﺒﻞ از اﻳﻦ ﮐﻪ ﮐﻼس را ﮐﺎﻣﭙﺎﻳﻞ ﻧﻤﺎﻳﻴﺪ .ﺷﻤﺎ اﮔﺮ دوﺳﺖ دارﻳﺪ ﻣﯽ ﺗﻮاﻧﻴﺪ ﮐﺪهﺎ را ذﺧﻴﺮﻩ ﮐﻨﻴﺪ
) ﺗﺎﺑﻊ ﻣﻮرد ﻧﻴﺎز در وﻳﺮاﻳﺸﮕﺮ ﻣﺮﺑﻮط ﺑﻪ ﮐﻼس وﺝﻮد دارد ( اﻟﺒﺘﻪ ﺷﻤﺎ در ﺡﺎﻟﺘﯽ ﺑﻪ اﻳﻦ ﮐﺎر ﻧﻴﺎز دارﻳﺪ ﮐﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺗﺎن ﺑﻪ ﺻﻮرت
ﻣﮑﺮر ﮐﺮش ) (crashﻣﯽ ﮐﻨﺪ .و ﺷﻤﺎ ﻧﮕﺮاﻧﻴﺪ ﮐﻪ ﮐﺎرﺗﺎن از ﺑﻴﻦ ﺑﺮود.
ﻣﻨﻮی اﺑﺰار ﭘﻨﺠﺮﻩ ﭘﺮوژﻩ ﻧﻴﺰ ﺷﺎﻣﻞ دﮐﻤﻪ Compileﻣﯽ ﺑﺎﺷﺪ .ﺑﺎ ﻓﺸﺮدن اﻳﻦ دﮐﻤﻪ ﮐﻞ ﭘﺮوژﻩ ﮐﺎﻣﭙﺎﻳﻞ ﻣﯽ ﺷﻮد ) .اﻳﻦ دﮐﻤﻪ
ﺗﺸﺨﻴﺺ ﻣﯽ دهﺪ ﮐﻪ ﮐﺪاﻣﻴﮏ از ﮐﻼس هﺎ ﻧﻴﺎز ﺑﻪ ﮐﺎﻣﭙﺎﻳﻞ ﻣﺠﺪد دارﻧﺪ .و ﺳﭙﺲ ﺑﻌﺪ از ﮐﺎﻣﭙﺎﻳﻞ ﻣﺠﺪد اﻧﻬﺎ را ﻣﺮﺗﺐ ﻣﯽ ﮐﻨﺪ ( .اﻳﻦ
ﮐﺎر را ﺑﺎ اﻳﺠﺎد ﺗﻐﻴﻴﺮ در دو ﻳﺎ ﭼﻨﺪ ﮐﻼس )ﺑﻨﺎﺑﺮاﻳﻦ ﺷﻤﺎ ﺑﺎﻳﺪ دو ﻳﺎ ﭼﻨﺪ ﮐﻼس در ﺻﻔﺤﻪ ﺗﺮﺳﻴﻢ ﮐﻼس هﺎ داﺷﺘﻪ ﺑﺎﺷﻴﺪ ﮐﻪ
ﺑﺎ ﺧﻄﻮط راﻩ راﻩ ﻣﺸﺨﺺ ﺷﺪﻩ ﺑﺎﺷﺪ (اﻣﺘﺤﺎن ﮐﻨﻴﺪ وﺳﭙﺲ دﮐﻤﻪ Compileرا ﻓﺸﺎر دهﻴﺪ .اﮔﺮ در ﺡﻴﻦ ﮐﺎﻣﭙﺎﻳﻞ ﺧﻄﺎﻳﯽ در ﻳﮑﯽ از
ﮐﻼس هﺎ ﺗﺸﺨﻴﺺ دادﻩ ﺷﻮد .وﻳﺮاﻳﺸﮕﺮ ﺑﺎز ﺷﺪﻩ و ﻣﺤﻞ ﺧﻄﺎ و هﻤﭽﻨﻴﻦ ﭘﻴﻐﺎم ﻣﻨﺎﺳﺐ را ﻧﻤﺎﻳﺶ ﻣﯽ دهﺪ .ﺷﻤﺎ اﮔﺮ دﻗﺖ ﮐﻨﻴﺪ ﺧﻮاهﻴﺪ
دﻳﺪ ﮐﻪ ﻣﺤﻞ اﺷﻴﺎ ) (object benchﻣﺠﺪدا ﺧﺎﻟﯽ ﻣﯽ ﺷﻮد .هﻨﮕﺎﻣﯽ ﮐﻪ در ﭘﻴﺎدﻩ ﺳﺎزی ﺗﻐﻴﻴﺮ اﻳﺠﺎد ﺷﻮد اﺷﻴﺎ ﭘﺎک ﻣﯽ ﺷﻮﻧﺪ .چ
ﺧﻼﺻﻪ :ﺑﺮای راهﻨﻤﺎﻳﯽ ﮔﺮﻓﺘﻦ درﺑﺎرﻩ ﭘﻴﻐﺎم ﺧﻄﺎﻳﯽ ﮐﺎﻣﭙﺎﻳﻠﺮ ،ﺑﺮ روی ﻋﻼﻣﺖ ﺳﻮال ﮐﻪ ﺑﻌﺪ از ﭘﻴﻐﺎم ﺧﻄﺎ ﻗﺮار دارد ﮐﻠﻴﮏ ﮐﻨﻴﺪ.
اﻏﻠﺐ اوﻗﺎت ،داﻧﺸﺠﻮﻳﺎن ﻣﺒﺘﺪی ﺑﻪ ﺳﺨﺘﯽ ﻣﺘﻮﺝﻪ ﭘﻴﻐﺎم هﺎی ﺧﻄﺎ ﻣﯽ ﺷﻮﻧﺪ .ﻣﺎ ﺗﻼش ﮐﺮدﻳﻢ ﺗﺎ ﻳﮏ راهﻨﻤﺎ ﻧﻴﺰ اﻳﺠﺎد ﻧﻤﺎﻳﻴﻢ.
وﻳﺮاﻳﺸﮕﺮ را ﻣﺠﺪدا ﺑﺎز ﮐﻨﻴﺪ و در ان ﻳﮏ ﺧﻄﺎ اﻳﺠﺎد ﮐﺮدﻩ و ﮐﻼس را دوﺑﺎرﻩ ﮐﺎﻣﭙﺎﻳﻞ ﻧﻤﺎﻳﻴﺪ .در ﺑﺨﺶ اﻃﻼﻋﺎت وﻳﺮاﻳﺸﮕﺮ ﺑﺎﻳﺪ
ﭘﻴﻐﺎم ﺧﻄﺎ ﻧﻤﺎﻳﺶ دادﻩ ﺷﻮد .در اﻧﺘﻬﺎی ﺳﻤﺖ راﺳﺖ ﺑﺨﺶ اﻃﻼﻋﺎت ﻋﻼﻣﺖ ﺳﻮال ﻣﺸﺨﺺ ﻣﯽ ﺑﺎﺷﺪ ﮐﻪ ﺷﻤﺎ ﺑﺎ ﮐﻠﻴﮏ ﮐﺮدن ﺑﺮ روی
ﺁن ﻣﯽ ﺗﻮاﻧﻴﺪ اﻃﻼﻋﺎت ﺑﻴﺸﺘﺮی درﺑﺎرﻩ ان ﺧﻄﺎ ﺑﺪﺳﺖ ﺁورﻳﺪ ).ﻋﮑﺲ ﺷﻤﺎرﻩ (٨
در اﻳﻦ ﻣﺮﺡﻠﻪ ،ﻣﺘﻦ هﺎی راهﻨﻤﺎ ﺑﺮای ﺗﻤﺎم ﭘﻴﻐﺎم هﺎی ﺧﻄﺎ ﻣﻮﺝﻮد ﻧﻤﯽ ﺑﺎﺷﺪ .ﻣﻘﺪاری از ﻣﺘﻦ هﺎی راهﻨﻤﺎ هﻨﻮز در ﺡﺎل
ﻧﻮﺷﺘﻪ ﺷﺪن ﻣﯽ ﺑﺎﺷﻨﺪ .اﻣﺎ اﻳﻦ ﺧﺎﺻﻴﺖ ارزش اﻣﺘﺤﺎن ﮐﺮدن را دارد.ﺗﻌﺪاد زﻳﺎدی از ﺧﻄﺎ هﺎ ﺗﻮﺿﻴﺢ دادﻩ ﺷﺪﻩ اﻧﺪ .ﻣﻮارد
ﺑﺎﻗﯽ ﻣﺎﻧﺪﻩ ﻧﻴﺰ ﻧﮕﺎﺷﺘﻪ ﺷﺪﻩ و در وﻳﺮاﻳﺶ هﺎی ﺑﻌﺪی BlueJﺑﻪ ﺁن اﺿﺎﻓﻪ ﺧﻮاهﻨﺪ ﺷﺪ.
١۵
www.rasekhoon.net
www.rasekhoon.net/software
(١-۴ﻧﺎﻇﺮ
ﺧﻼﺻﻪ :ﻧﺎﻇﺮ ﺷﯽ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ ﺗﺎ ﺑﻪ رﻓﻊ ﺧﻄﺎهﺎی ﺳﺎدﻩ ﺑﭙﺮدازﻳﺪ ﺑﺎ ﻧﺸﺎن دادن وﺿﻌﻴﺖ داﺧﻠﯽ ﺷﯽ.
هﻨﮕﺎﻣﯽ ﮐﻪ ﺷﻤﺎ ﻣﺘﺪهﺎی ﻳﮏ ﺷﯽ را اﺝﺮا ﻣﯽ ﮐﻨﻴﺪ .ﺷﻤﺎ ﻣﯽ ﺑﻴﻨﻴﺪ ﮐﻪ ﺗﺎﺑﻊ Inspectﺑﺮای اﺷﻴﺎی ﮐﻪ ﺷﺎﻣﻞ ﻣﺘﺪهﺎی ﺗﻌﺮﻳﻒ
ﺷﺪﻩ ﺗﻮﺳﻂ ﮐﺎرﺑﺮ هﺴﺘﻨﺪ ﻣﻮﺝﻮد اﺳﺖ)ﺷﮑﻞ .(۵اﻳﻦ ﺗﺎﺑﻊ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ ﺗﺎ وﺿﻌﻴﺖ ﻣﺘﻐﻴﺮهﺎی ) ﻓﻴﻠﺪهﺎ ( ﺷﯽ را ﺑﺮرﺳﯽ
ﻧﻤﺎﻳﻴﺪ .ﻳﮏ ﺷﯽ ﺑﺎ ﭼﻨﺪ ﻣﻘﺪار ﺗﻌﺮﻳﻔﯽ ﺗﻮﺳﻂ ﮐﺎرﺑﺮ اﻳﺠﺎد ﻧﻤﺎﻳﻴﺪ ) ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ﺷﯽ Staffﺑﺎ ﺳﺎزﻧﺪﻩ هﺎی ﮐﻪ ﭘﺎراﻣﺘﺮ
ﻣﯽ ﭘﺬﻳﺮﻧﺪ( .ﺳﭙﺲ ﺗﺎﺑﻊ Inspectرا از ﻣﻨﻮی ﺷﯽ اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ .ﭘﻨﺠﺮﻩ ای ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد ﮐﻪ ﻓﻴﻠﺪ هﺎی ﺷﯽ را
ﻧﺎﻇﺮ ﺑﺮای ﺑﺮرﺳﯽ ﺳﺮﻳﻊ اﻋﻤﺎﻟﯽ ﮐﻪ ﺗﻐﻴﻴﺮ ﻣﯽ ﮐﻨﻨﺪ ﺑﺴﻴﺎر ﻣﻔﻴﺪ ﻣﯽ ﺑﺎﺷﺪ) اﻋﻤﺎﻟﯽ ﮐﻪ ﻣﻮﻗﻌﻴﺖ اﺷﻴﺎ در ان ﺗﻐﻴﻴﺮ ﻣﯽ ﻧﻤﺎﻳﺪ(
در ﻣﺜﺎل ، Staffهﻤﻪ ﻓﻴﻠﺪ هﺎ از ﻧﻮع ﺳﺎدﻩ ﻣﯽ ﺑﺎﺷﻨﺪ ) ﻏﻴﺮ ﺷﯽ ﻳﺎ رﺷﺘﻪ هﺎ ( .ﻣﻘﺪار اﻳﻦ اﻧﻮاع ﻣﯽ ﺗﻮاﻧﺪ ﻣﺴﺘﻘﻴﻤﺎ ﻧﻤﺎﻳﺶ
دادﻩ ﺷﻮد .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻓﻮرا ﺑﺒﻴﻨﻴﺪ ﮐﻪ ﮐﺪام ﺳﺎزﻧﺪﻩ ﺷﺎﻣﻞ ﻣﺘﻐﻴﺮ ﻧﻬﺎﻳﯽ ﻣﯽ ﺑﺎﺷﺪ.
در ﺑﺴﻴﺎری از ﻧﻤﻮﻧﻪ ای ﭘﻴﭽﻴﺪﻩ ،ﻣﻘﺎدﻳﺮ ﻓﻴﻠﺪ هﺎ ﻣﯽ ﺗﻮاﻧﺪ ﺑﻪ اﺷﻴﺎ ﮐﻪ ﺗﻮﺳﻂ ﮐﺎرﺑﺮان ﺗﻌﺮﻳﻒ ﮐﺮدﻩ اﻧﺪ ﻣﺮاﺝﻌﻪ ﮐﻨﺪ .ﺑﺮای ﻣﺸﺎهﺪﻩ
ﭼﻨﻴﻦ ﺡﺎﻟﺘﯽ ﻣﺎ ﺑﺎﻳﺪ از ﻳﮏ ﭘﺮوژﻩ دﻳﮕﺮ اﺳﺘﻔﺎدﻩ ﮐﻨﻴﻢ .ﭘﺮوژﻩ people2را ﺑﺎز ﮐﻨﻴﺪ.اﻳﻦ ﭘﺮوژﻩ هﻤﺮاﻩ ﺗﻮزﻳﻊ اﺳﺘﺎﻧﺪارد BlueJ
ﻣﻮﺝﻮد ﻣﻴﺒﺎﺷﺪ .ﺑﻌﺪ از ﺑﺎز ﮐﺮدن ﭘﺮوژﻩ people2ﻧﻤﺎی ﭘﻨﺠﺮﻩ ﭘﺮوژﻩ ﺷﺒﻴﻪ ﺷﮑﻞ ١٠ﺧﻮاهﺪ ﺷﺪ.
در ﻣﺜﺎل دوم ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺒﻴﻨﻴﺪ ﮐﻪ ﮐﻼس Addressﺑﻪ ﮐﻼس هﺎی ﻣﺜﺎل ﻗﺒﻠﯽ اﺿﺎﻓﻪ ﺷﺪﻩ اﺳﺖ .ﻳﮑﯽ از ﻓﻴﻠﺪهﺎی ﮐﻼس
١۶
www.rasekhoon.net
www.rasekhoon.net/software
ﮐﺎر ﺑﻌﺪی ﮐﻪ ﻗﺮار اﺳﺖ ﮐﺎ اﻧﺠﺎم دهﻴﻢ .ﻧﺎﻇﺮ ﺑﺎ ﻓﻴﻠﺪهﺎی ﻧﻮع ﺷﯽ ﻣﯽ ﺑﺎﺷﺪ .ﻳﮏ ﺷﯽ Staffاﻳﺠﺎد ﮐﻨﻴﺪ و ﺳﭙﺲ ﻣﺘﺪ
)( setAddressاﻳﻦ ﺷﯽ را ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ ) ﺷﻤﺎ اﻳﻦ ﻣﺘﺪ را ﻣﯽ ﺗﻮاﻧﻴﺪ در زﻳﺮ ﻣﻨﻮی personﭘﻴﺪا ﻧﻤﺎﻳﻴﺪ (.
ﺁدرس را وارد ﻧﻤﺎﻳﻴﺪ .ﺑﻪ ﻃﻮر داﺧﻠﯽ ،ﮐﺪ Staffﺷﯽ ﮐﻼس Addressرا اﻳﺠﺎد ﻣﯽ ﮐﻨﺪ.و ﺁﻧﺮا در ﻓﻴﻠﺪ address
ذﺧﻴﺮﻩ ﻣﯽ ﻧﻤﺎﻳﺪ .ﺡﺎﻻ ،ﻧﺎﻇﺮ ﺷﯽ Staffرا ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﺪ .ﺷﮑﻞ ﺷﻤﺎرﻩ ١١ﻧﺘﻴﺠﻪ را ﺑﻪ ﻣﺎ ﻧﺸﺎن ﻣﯽ دهﺪ.
ﺡﺎﻻ ﻓﻴﻠﺪهﺎی درون ﺷﯽ Staffﺷﺎﻣﻞ addressﻣﯽ ﺑﺎﺷﻨﺪ .ﺷﻤﺎ هﻤﭽﻨﻴﻦ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺒﻴﻨﻴﺪ ﮐﻪ ﻣﻘﺪار اﻳﻦ ﻓﻴﻠﺪ ﺑﺎ ﻳﮏ
ﭘﻴﮑﺎن ﻧﻤﺎﻳﺶ دادﻩ ﺷﺪﻩ ﮐﻪ اﻳﻦ ﺑﺪﻳﻦ ﻣﻌﻨﯽ اﺳﺖ ﮐﻪ ﻣﻘﺪار ان ﺑﻪ ﻳﮏ ﺷﯽ دﻳﮕﺮ ﻣﺮاﺝﻌﻪ ﻣﯽ ﻧﻤﺎﻳﺪ .ﺧﺐ ﺗﺎ اﻳﻨﺠﺎ اﻳﻦ ﻣﻮﺿﻮع
ﭘﻴﭽﻴﺪﻩ ﻣﯽ ﺑﺎﺷﺪ .زﻳﺮا ﻣﻘﺪار ﺷﯽ هﺎی ﺗﻌﺮﻳﻔﯽ ﺗﻮﺳﻂ ﮐﺎرﺑﺮ را ﻧﻤﯽ ﺗﻮان ﻣﺴﺘﻘﻴﻤﺎ در اﻳﻦ ﻟﻴﺴﺖ ﻣﺸﺎهﺪﻩ ﮐﺮد.
ﺑﺮای اﻣﺘﺤﺎن ﮐﺮدن ﻣﻘﺎدﻳﺮ ﻣﺮﺑﻮط ﺑﻪ ، addressﻓﻴﻠﺪ Addressرا در ﻟﻴﺴﺖ اﻧﺘﺨﺎب ﮐﺮدﻩ و دﮐﻤﻪ Inspectﻣﺮﺑﻮط ﺑﻪ
ﭘﻨﺠﺮﻩ را ﻓﺸﺎر دهﻴﺪ ) ﺷﻤﺎ هﻤﭽﻨﻴﻦ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺮ روی ﻓﻴﻠﺪ addressدو ﺑﺎر ﮐﻠﻴﮏ ﮐﻨﻴﺪ ( ﭘﻨﺠﺮﻩ ﻧﺎﻇﺮ دﻳﮕﺮی ﺑﺎز ﺷﺪﻩ و
١٧
www.rasekhoon.net
www.rasekhoon.net/software
اﮔﺮ ﻓﻴﻠﺪ اﻧﺘﺨﺎب ﺷﺪﻩ از ﻧﻮع publicﻣﻴﺒﺎﺷﺪ ﺷﻤﺎ ﺑﻪ ﺝﺎی ﻓﺸﺎر دادن دﮐﻤﻪ Inspectﻣﯽ ﺗﻮاﻧﻴﺪ ،ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻓﻴﻠﺪ
Addressرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ و دﮐﻤﻪ Getرا ﻓﺸﺎر دهﻴﺪ .ﺑﺎ اﻳﻦ ﻋﻤﻞ ﺷﯽ اﻧﺘﺨﺎب ﺷﺪﻩ در object benchﻣﺸﺨﺺ
ﻣﯽ ﺷﻮد.ﺷﻤﺎ در اﻧﺠﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺎ ﻓﺮاﺧﻮاﻧﯽ ﻣﺘﺪهﺎی ﺷﯽ ﺑﻪ ﺁزﻣﺎﻳﺶ ﺧﻮد اداﻣﻪ دهﻴﺪ.
ﺧﻼﺻﻪ :ﻳﮏ ﺷﯽ را ﻣﯽ ﺗﻮان ﺑﻪ ﻋﻨﻮان ﭘﺎراﻣﺘﺮ ﺑﺮای ﻓﺮاﺧﻮاﻧﯽ ﻳﮏ ﻣﺘﺪ ارﺳﺎل ﮐﺮد .ﺑﺮای اﻳﻨﮑﺎر ﺑﺮ روی ﺁﻳﮑﻮن ﺷﯽ ﮐﻠﻴﮏ ﮐﻨﻴﺪ.
١٨
www.rasekhoon.net
www.rasekhoon.net/software
اﺷﻴﺎ ﻣﯽ ﺗﻮاﻧﻨﺪ ﺑﻪ ﻋﻨﻮان ﭘﺎراﻣﺘﺮهﺎ ﺑﻪ ﻣﺘﺪهﺎی ﭘﺮوژﻩ هﺎی دﻳﮕﺮ ارﺳﺎل ﺷﻮﻧﺪ .اﺝﺎزﻩ دهﻴﺪ ﺗﺎ ﺑﺎ ﻳﮏ ﻣﺜﺎل اﻳﻦ ﮐﺎر را اﻧﺠﺎم دهﻴﻢ
ﻳﮏ ﺷﯽ از ﮐﻼس Databaseاﻳﺠﺎد ﻧﻤﺎﻳﻴﺪ ) ﺷﻤﺎ ﺑﺎﻳﺪ ﺗﻮﺝﻪ ﻧﻤﺎﻳﻴﺪ ﮐﻪ ﮐﻼس Databaseﺷﺎﻣﻞ ﻳﮏ ﺳﺎزﻧﺪﻩ ﻣﯽ ﺑﺎﺷﺪ ﮐﻪ ﭘﺎراﻣﺘﺮی
را درﻳﺎﻓﺖ ﻧﻤﯽ ﮐﻨﺪ ﺑﻨﺎﺑﺮاﻳﻦ ﺳﺎﺧﺖ ﺷﯽ ﺳﺮ راﺳﺖ ﻣﻴﺒﺎﺷﺪ ( ﺷﯽ Databaseﻗﺎدر اﺳﺖ ﺗﺎ ﻟﻴﺴﺘﯽ از اﺷﺨﺎص را در ﺧﻮد ﻧﮕﻪ دارد.
اﻳﻦ ﺷﯽ ﺷﺎﻣﻞ اﻋﻤﺎﻟﯽ ﺑﺮای اﺿﺎﻓﻪ ﮐﺮدن اﺷﻴﺎ ﺷﺨﺺ و هﻤﭽﻨﻴﻦ ﻧﻤﺎﻳﺶ ﺷﺨﺺ هﺎی ﮐﻪ ﺗﺎ ﮐﻨﻮن ذﺧﻴﺮﻩ ﺷﺪﻩ اﻧﺪ ﻣﯽ ﺑﺎﺷﺪ.
) در ﺡﻘﻴﻘﺖ ﻧﺎم Databaseﻳﮏ اﻏﺮاق ﮐﻮﭼﮏ ﻣﯽ ﺑﺎﺷﺪ !!! ( اﮔﺮ ﺷﻤﺎ در ﺡﺎل ﺡﺎﺿﺮ ﺷﯽ Staffو ﻳﺎ Studentرا در
Object benchﻧﺪارﻳﺪ .ﻳﮑﯽ از اﻳﻦ دو ﺷﯽ را اﻳﺠﺎد ﻧﻤﺎﻳﻴﺪ .ﺑﺮای اداﻣﻪ ﺷﻤﺎ ﻧﻴﺎز دارﻳﺪ ﺗﺎ ﺷﯽ Databaseو ﺷﯽ
Staffو ﻳﺎ Studentدر ﻳﮏ زﻣﺎن در object benchﻗﺮار داﺷﺘﻪ ﺑﺎﺷﻨﺪ.ﺡﺎﻻ ﻣﺘﺪ addPersonرا از ﺷﯽ Database
ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ اﻣﻀﺎ ﻣﺘﺪ ﺑﻪ ﺷﻤﺎ ﻣﯽ ﮔﻮﻳﺪ ﮐﻪ ﭘﺎراﻣﺘﺮ ﻧﻮع Personﻣﻮرد اﻧﺘﻈﺎر ﻣﯽ ﺑﺎﺷﺪ ) .ﻳﺎد ﺁوری :ﮐﻼس Personاز ﻧﻮع
اﻧﺘﺰاﻋﯽ ) (abstractﻣﯽ ﺑﺎﺷﺪ ﺑﻨﺎﺑﺮاﻳﻦ اﻧﺠﺎ اﺷﻴﺎﻳﯽ ﮐﻪ ﻣﺴﺘﻘﻴﻤﺎ از ﻧﻮع personﺑﺎﺷﻨﺪ ﻧﻴﺴﺖ .اﻣﺎ ﻳﮑﯽ از
زﻳﺮ اﻧﻮاع ﺷﯽ Staffو ﻳﺎ Studentﻣﯽ ﺗﻮاﻧﺪ ﺝﺎﻳﮕﺰﻳﻦ ﻣﻨﺎﺳﺒﯽ ﺑﺮای ﺷﯽ Personﺑﺎﺷﺪ .ﺑﻨﺎﺑﺮاﻳﻦ اﻳﻦ ﻗﺎﻧﻮﻧﯽ اﺳﺖ ﮐﻪ ﻣﺎ
اﺷﻴﺎ Staffو ﻳﺎ Studentرا ﺑﻪ ﻋﻨﻮان ﭘﺎراﻣﺘﺮ ارﺳﺎل ﮐﻨﻴﻢ هﺮ ﺝﺎ ﮐﻪ Personﻣﻮرد اﻧﺘﻈﺎر ﻣﯽ ﺑﺎﺷﺪ (.ﺑﺮای ارﺳﺎل ﺷﯽ
ﺑﻪ ﻋﻨﻮان ﭘﺎراﻣﺘﺮ ﺑﺮ روی ﺷﯽ ﻣﻮﺝﻮد در object benchﮐﻠﻴﮏ ﮐﺮدﻩ و از ﭘﻨﺠﺮﻩ ﺑﺎز ﺷﺪﻩ ﻧﺎم ﮐﻼس ﻣﻮرد ﻧﻈﺮ را در ﻓﻴﻠﺪهﺎی
ﻣﺮﺑﻮﻃﻪ وارد ﻣﯽ ﻧﻤﺎﻳﻴﻢ .دﮐﻤﻪ Okرا ﻓﺸﺎر دهﻴﺪ ﺗﺎ ﻓﺮاﺧﻮاﻧﯽ ﻣﺮﺑﻮﻃﻪ اﻧﺠﺎم ﭘﺬﻳﺮد.از ﺁﻧﺠﺎﻳﯽ ﮐﻪ اﻳﻦ ﻣﺘﺪ ﻣﻘﺪار ﺑﺎزﮔﺸﺘﯽ ﻧﺪارد ﻣﺎ
ﻧﻤﯽ ﺗﻮاﻧﻴﻢ ﻓﻮرا ﻧﺘﻴﺠﻪ را ﻣﺸﺎهﺪﻩ ﻧﻤﺎﻳﻴﻢ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻣﺘﺪ listAllرا از ﺷﯽ Databaseﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ ﺗﺎ ﺑﺮرﺳﯽ ﮐﻨﻴﺪ ﮐﻪ
اﻳﻦ ﻋﻤﻞ ﺑﺮای ﺷﯽ اﻧﺠﺎم ﺷﺪﻩ اﺳﺖ.دﺳﺘﻮر listAllاﻃﻼﻋﺎت ﺷﺨﺺ را در ﺧﺮوﺝﯽ اﺳﺘﺎﻧﺪارد ﭼﺎپ ﻣﯽ ﮐﻨﺪ ﺷﻤﺎ ﺑﺎﻳﺪ ﺗﻮﺝﻪ ﮐﻨﻴﺪ
ﮐﻪ ﺻﻔﺤﻪ ﻣﺘﻦ )( ﺑﻪ ﻃﻮر ﺧﻮدﮐﺎر ﺑﺎز ﺷﺪﻩ و ﻣﺘﻦ را ﻧﻤﺎﻳﺶ ﻣﯽ دهﺪ.
١٩
www.rasekhoon.net
www.rasekhoon.net/software
اﻳﻦ ﻓﺼﻞ ﺑﻪ ﺷﻤﺎ ﻳﮏ ﺁﻣﻮزش ﺳﺮﻳﻊ ﺑﺮای ﺗﻨﻈﻴﻢ ﻳﮏ ﭘﺮوژﻩ ﺝﺪﻳﺪ ﻣﯽ دهﺪ.
ﺑﺮای اﻳﺠﺎد ﻳﮏ ﭘﺮوژﻩ ﺝﺪﻳﺪ از ﻣﻨﻮی Projectﮔﺰﻳﻨﻪ New….را اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ .ﭘﻨﺠﺮﻩ اﻧﺘﺨﺎب ﻓﺎﻳﻞ ﺑﺎز ﺷﺪﻩ و ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ
ﻣﯽ دهﺪ ﺗﺎ ﻧﺎم و ﻣﺤﻞ ذﺧﻴﺮﻩ ﺳﺎزی ﭘﺮوژﻩ ﺝﺪﻳﺪ را ﻣﺸﺨﺺ ﻧﻤﺎﻳﻴﺪ.اﻳﻦ ﮐﺎر را ﺡﺎﻻ اﻣﺘﺤﺎن ﻧﻤﺎﻳﻴﺪ.ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ هﺮ ﮔﻮﻧﻪ ﻧﺎﻣﯽ
ﺑﺮای ﭘﺮوژﻩ ﺗﺎن اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.ﺑﻌﺪ از اﻳﻨﮑﻪ ﺷﻤﺎ دﮐﻤﻪ Okرا ﻓﺸﺎر دادﻳﺪ .در ﻣﺴﻴﺮ ﻣﻮرد ﻧﻈﺮ ﭘﻮﺷﻪ ای هﻤﻨﺎم ﺑﺎ ﻧﺎﻣﯽ ﮐﻪ ﺷﻤﺎ
اﻧﺘﺨﺎب ﮐﺮدﻩ اﻳﺪ اﻳﺠﺎد ﻣﯽ ﺷﻮد .و ﭘﻨﺠﺮﻩ اﺻﻠﯽ ﺑﺮﻧﺎﻣﻪ ﺑﺼﻮرت ﺧﺎﻟﯽ ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد.
(٢-۵اﻳﺠﺎد ﮐﻼﺳﻬﺎ
ﺧﻼﺻﻪ :ﺑﺮای اﻳﺠﺎد ﻳﮏ ﮐﻼس ،دﮐﻤﻪ New Classرا ﻓﺸﺎر ﻣﯽ دهﻴﻢ.و ﺑﺮای ﮐﻼس ﻳﮏ ﻧﺎم ﻗﺮار ﻣﯽ دهﻴﻢ.
ﺷﻤﺎ اﮐﻨﻮن ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺎ ﮐﻠﻴﮏ ﮐﺮدن ﺑﺮ روی دﮐﻤﻪ New Classواﻗﻊ در ﻣﻨﻮی اﺑﺰار ﻳﮏ ﮐﻼس ﺝﺪﻳﺪ اﻳﺠﺎد ﮐﻨﻴﺪ.ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ
ﺳﻮال ﮐﻨﻴﺪ ﺑﺮای ﺗﻬﻴﻪ ﮐﺮدن ﻳﮏ ﻧﺎم ﺑﺮای ﮐﻼس -اﻳﻦ ﻧﺎم ﻣﯽ ﺗﻮاﻧﺪ ﻳﮏ ﺷﻨﺎﺳﻪ ﻣﻌﺘﺒﺮ ﺝﺎوا ﺑﺎﺷﺪ.
ﺷﻤﺎ هﻤﭽﻨﻴﻦ ﻣﯽ ﺗﻮاﻧﻴﺪ ۴ﻧﻮع ﮐﻼس را اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ standard ، applet ، abstract ، interface :
اﻳﻦ اﻧﺘﺨﺎب ﻣﺸﺨﺺ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﺑﺪﻧﻪ اوﻟﻴﻪ ﮐﺪهﺎی ﮐﻪ ﺑﺮاﻳﺘﺎن ﺗﻮﻟﻴﺪ ﻣﯽ ﺷﻮد ﭼﮕﻮﻧﻪ ﺑﺎﺷﺪ .ﺷﻤﺎ ﺑﻌﺪا ﻣﯽ ﺗﻮاﻧﻴﺪ ﻧﻮع ﮐﻼس را ﺑﺎ
ﺗﻐﻴﻴﺮ در ﮐﺪهﺎی ان وﻳﺮاﻳﺶ ﮐﻨﻴﺪ )ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ،ﺑﺎ اﺿﺎﻓﻪ ﮐﺮدن ﮐﻠﻤﻪ ﮐﻠﻴﺪی abstractدر ﺑﻴﻦ ﮐﺪهﺎ ( .
ﺑﻌﺪ از اﻳﻦ ﮐﻪ ﺷﻤﺎ ﮐﻼس را اﻳﺠﺎد ﻧﻤﻮدﻳﺪ.ﮐﻼس ﺑﻪ وﺳﻴﻠﻪ ﻳﮏ ﺁﻳﮑﻮن در ﺻﻔﺤﻪ ﻧﻤﺎﻳﺶ ،ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد .اﮔﺮ ﮐﻼس ﺷﻤﺎ از
ﻧﻮع اﺳﺘﺎﻧﺪارد ﻧﻴﺴﺖ ) ( abstract,applet,interfaceاﻳﻦ ﻣﻮﺿﻮع در ﺁﻳﮑﻮن ﮐﻼس ﻧﻤﺎﻳﺶ دادﻩ ﺧﻮاهﺪ ﺷﺪ.
هﻨﮕﺎﻣﯽ ﮐﻪ وﻳﺮاﻳﺸﮕﺮ را ﺑﺮای ﮐﻼس ﺝﺪﻳﺪ ﺑﺎز ﻣﯽ ﮐﻨﻴﺪ ﺧﻮاهﻴﺪ دﻳﺪ ﮐﻪ ﮐﺪهﺎی اوﻟﻴﻪ ﺑﺮای اﻳﻦ ﮐﻼس اﻳﺠﺎد ﺷﺪﻩ اﺳﺖ.
اﻳﻦ ﻣﻮﺿﻮع ،ﮐﺎر ﺷﻤﺎ ﺑﺮای ﺷﺮوع را ﺁﺳﺎن ﺗﺮ ﺧﻮاهﺪ ﮐﺮد .ﮐﺪهﺎی ﭘﻴﺶ ﻓﺮض از ﻟﺤﺎظ ﻧﺤﻮی ﺻﺤﻴﺢ ﻣﯽ ﺑﺎﺷﺪ.ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ
ﺁﻧﺮا ﮐﺎﻣﭙﺎﻳﻞ ﻧﻤﺎﻳﺪ ) اﻣﺎ اﻳﻦ ﮐﻼس هﺎ ﮐﺎری اﻧﺠﺎم ﻧﻤﯽ دهﻨﺪ ( .ﺳﻌﯽ ﮐﻨﻴﺪ ﭼﻨﺪ ﮐﻼس اﻳﺠﺎد ﮐﻨﻴﺪ و ﺁﻧﻬﺎ را ﮐﺎﻣﭙﺎﻳﻞ ﻧﻤﺎﻳﻴﺪ.
ﺧﻼﺻﻪ :ﺑﺮای اﻳﺠﺎد ﻳﮏ ﭘﻴﮑﺎن ،ﺑﺮ روی دﮐﻤﻪ ﭘﻴﮑﺎن ﮐﻠﻴﮏ ﮐﺮدﻩ و ﺁﻧﺮا ﺑﺮ روی ﺻﻔﺤﻪ ﺗﺮﺳﻴﻢ درگ ﻧﻤﺎﻳﺪ .و ﻳﺎ ﻓﻘﻂ در
در ﺻﻔﺤﻪ ﺗﺮﺳﻴﻢ ﮐﻼس هﺎ ،ﻋﻼﻣﺖ ﭘﻴﮑﺎن رواﺑﻂ ﻣﺎ ﺑﻴﻦ ﮐﻼس هﺎ را ﻣﺸﺨﺺ ﻣﯽ ﻧﻤﺎﻳﺪ.
رواﺑﻂ ارث ﺑﺮی ) ( Implement ، extendﺑﻮﺳﻴﻠﻪ ﭘﻴﮑﺎﻧﯽ ﺑﺎ ﺳﺮ ﺗﻮ ﺧﺎﻟﯽ )ﺳﺮ ﺑﺴﺘﻪ( ﻣﺸﺨﺺ ﻣﯽ ﺷﻮد .رواﺑﻂ ""uses
ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ رواﺑﻂ را ﻣﺴﺘﻘﻴﻤﺎ در ﺻﻔﺤﻪ ﺗﺮﺳﻴﻢ و ﻳﺎ ﺑﻮﺳﻴﻠﻪ ﻧﻮﺷﺘﻦ ﮐﺪ در وﻳﺮاﻳﺸﮕﺮ ﻣﺸﺨﺺ ﻧﻤﺎﻳﺪ .ﺷﻤﺎ اﮔﺮ واﺑﺴﺘﮕﯽ هﺎ
را ﺑﻮﺳﻴﻠﻪ ﮔﺮاﻓﻴﮑﯽ اﻳﺠﺎد ﮐﻨﻴﺪ .ﮐﺪهﺎ ﺑﺼﻮرت ﺧﻮدﮐﺎر ﺑﺮوز رﺳﺎﻧﯽ ﻣﯽ ﺷﻮﻧﺪ و اﮔﺮ ﺷﻤﺎ واﺑﺴﺘﮕﯽ هﺎ را ﺑﻮﺳﻴﻠﻪ ﮐﺪهﺎ اﻳﺠﺎد ﮐﻨﻴﺪ.
٢٠
www.rasekhoon.net
www.rasekhoon.net/software
ﺑﺮای اﺿﺎﻓﻪ ﮐﺮدن ﻳﮏ ﭘﻴﮑﺎن ﺑﺼﻮرت ﮔﺮاﻓﻴﮑﯽ ،ﺑﺮ روی دﮐﻤﻪ ﭘﻴﮑﺎن ﻣﻘﺘﻀﯽ)ﭘﻴﮑﺎن ﺳﺮ ﺑﺴﺘﻪ ﺑﺮای رواﺑﻂ ارث ﺑﺮی و ﭘﻴﮑﺎن
ﻧﻘﻄﻪ ﺝﻴﻦ ﺑﺮای (usesﮐﻠﻴﮏ ﮐﺮدﻩ و ﺁﻧﺮا از ﺑﻴﻦ دو ﮐﻼس ﻣﺮﺑﻮﻃﻪ درگ ﻣﯽ ﻧﻤﺎﻳﻴﻢ.
ﺑﺎ اﺿﺎﻓﻪ ﮐﺮدن ﻳﮏ ﭘﻴﮑﺎن ﻣﺮﺑﻮط ﺑﻪ ارث ﺑﺮی ﮐﺪ ﺗﻮﺿﻴﺤﯽ ﻣﺮﺑﻮط ﺑﻪ extendو ﻳﺎ implementﺑﻪ ﮐﺪهﺎی ﮐﻼس ﺗﺎن اﺿﺎﻓﻪ
ﻣﯽ ﺷﻮد ) .اﻳﻦ ﺑﺴﺘﮕﯽ ﺑﻪ ﻣﻘﺼﺪ دارد ﮐﻪ از ﻧﻮع ﮐﻼس ﺑﺎﺷﺪ و ﻳﺎ .( interface
اﺿﺎﻓﻪ ﮐﺮدن ﭘﻴﮑﺎن usesﺑﻼﻓﺎﺻﻠﻪ ﺗﻐﻴﻴﺮی در ﮐﺪهﺎ اﻳﺠﺎد ﻧﻤﯽ ﮐﻨﺪ )ﻣﮕﺮ اﻳﻨﮑﻪ ﻣﻘﺼﺪ ﮐﻼﺳﯽ در ﻳﮏ ﭘﮑﻴﺞ دﻳﮕﺮ ﺑﺎﺷﺪ ،در اﻳﻦ
ﻧﻤﻮﻧﻪ دﺳﺘﻮر Importﺗﻮﻟﻴﺪ ﻣﯽ ﺷﻮد .اﻣﺎ ﻣﺎ ﻓﻌﻼ ﺁﻧﺮا در ﺑﻴﻦ ﻣﺜﺎل هﺎﻳﻤﺎن ﻧﺪارﻳﻢ (.اﺳﺘﻔﺎدﻩ از ﭘﻴﮑﺎن usesﺑﺮای ﮐﻼﺳﯽ ﮐﻪ
ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﻧﮕﺮﻓﺘﻪ در ﺡﻴﻦ ﮐﺎﻣﭙﺎﻳﻞ اﺧﻄﺎری اﻳﺠﺎد ﻣﯽ ﮐﻨﺪ ﻣﺒﻨﯽ ﺑﺮ اﻳﻦ ﮐﻪ ﺷﻤﺎ از ارﺗﺒﺎط usesﺑﻴﻦ ﮐﻼس هﺎ ﺗﻌﺮﻳﻒ ﺷﺪﻩ
اﺿﺎﻓﻪ ﮐﺮدن ﭘﻴﮑﺎن هﺎ ﺑﺮای ارﺗﺒﺎط در ﺡﺎﻟﺖ ﻣﺘﻨﯽ ﺑﺴﻴﺎر ﺳﺎدﻩ ﻣﯽ ﺑﺎﺷﺪ :ﺷﻤﺎ ﮐﺎﻓﯽ اﺳﺖ ﮐﻪ ﺑﻪ ﺻﻮرت ﻣﻌﻤﻮﻟﯽ ﮐﺪهﺎ را ﺗﺎﻳﭗ
ﻧﻤﺎﻳﺪ.هﻨﮕﺎﻣﯽ ﮐﻪ ﮐﻼس را ذﺧﻴﺮﻩ ﮐﻨﻴﺪ.ﺻﻔﺤﻪ ﺗﺮﺳﻴﻢ ﺑﺮوز رﺳﺎﻧﯽ ﻣﯽ ﺷﻮد)ﻳﺎدﺁوری :ﺑﺎ ﺑﺴﺘﻦ وﻳﺮاﻳﺸﮕﺮ ،ﮐﻼس ﺑﻪ ﺻﻮرت
ﺧﻼﺻﻪ :ﺑﺮای ﺡﺬف ﻳﮏ ﮐﻼس و ﻳﺎ ﻳﮏ ﭘﻴﮑﺎن ،از ﻣﻨﻮی ﺑﺎز ﺷﻮﻧﺪﻩ ﮔﺰﻳﻨﻪ removeرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﺪ.
ﺑﺮای ﺡﺬف ﻳﮏ ﮐﻼس از ﺻﻔﺤﻪ ﺗﺮﺳﻴﻢ ،ﮐﻼس را اﻧﺘﺨﺎب ﻧﻤﺎﻳﺪ و از ﻣﻨﻮی ، Editﮔﺰﻳﻨﻪ removeرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﺪ .ﺷﻤﺎ هﻤﭽﻨﻴﻦ
ﻣﯽ ﺗﻮاﻧﻴﺪ از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﮐﻼس ﮔﺰﻳﻨﻪ removeرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ .هﺮ دو ﻣﻮرد ﺗﻮﺿﻴﺢ دادﻩ ﺷﺪﻩ ﺑﺮای ﮐﻼس ﺑﺮای ﻳﮏ ﭘﻴﮑﺎن
٢١
www.rasekhoon.net
www.rasekhoon.net/software
ﺑﺎاﺳﺘﻔﺎدﻩ از Code Padﻣﺤﻴﻂ BlueJﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺎ ﺳﺮﻋﺖ و ﺑﻪ ﺳﺎدﮔﯽ ﺑﻪ ﺁزﻣﺎﻳﺶ دﺳﺘﻮرات و ﻋﺒﺎرات ﻳﮏ ﺗﮑﻪ ﮐﺪ ﺝﺎوا
ﺑﭙﺮدازﻳﺪ .ﺑﻨﺎﺑﺮاﻳﻦ ،ﮐﺪ ﭘﺪ ﻣﯽ ﺗﻮاﻧﺪ ﺑﺮای ﺑﺮرﺳﯽ دﺳﺘﻮرات و ﻗﻮاﻋﺪ زﺑﺎن ﺝﺎوا ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﺑﮕﻴﺮد.
(١-۶ﻧﻤﺎﻳﺶ ﮐﺪ ﭘﺪ
ﺧﻼﺻﻪ :ﺑﺮای ﻧﻤﺎﻳﺶ ﮐﺪ ﭘﺪ از ﻣﻨﻮی Viewﮔﺰﻳﻨﻪ Show Code Padرا ﻓﺸﺎر دهﻴﺪ.
ﮐﺪ ﭘﺪ ﺑﺼﻮرت ﭘﻴﺶ رض ﻧﻤﺎﻳﺶ دادﻩ ﻧﻤﯽ ﺷﻮد.ﺑﺮای دﻳﺪن ﺁن از ﻣﻨﻮی Viewﮔﺰﻳﻨﻪ Show Code Padرا ﻓﺸﺎر دهﻴﺪ.
ﭘﻨﺠﺮﻩ اﺻﻠﯽ ﺡﺎﻻ ﺷﺎﻣﻞ ﮐﺪ ﭘﺪ در ﮔﻮﺷﻪ ﺳﻤﺖ راﺳﺖ و ﺑﻌﺪ از object benchﺧﻮد ﻣﯽ ﺑﺎﺷﺪ ) ﺷﮑﻞ ( ١٣
اﻧﺪازﻩ ﭘﻨﺠﺮﻩ ﮐﺪ ﭘﺪ و هﻤﭽﻨﻴﻦ Object Benchﺑﺎ اﺳﺘﻔﺎدﻩ از ﺧﻄﻮط ﻋﻤﻮدی و اﻓﻘﯽ ﻗﺎﺑﻞ ﺗﻐﻴﻴﺮ ﻣﯽ ﺑﺎﺷﺪ .ﮐﺪ ﭘﺪ ﺡﺎﻻ ﻣﯽ ﺗﻮاﻧﺪ
ﺑﺮای ورود دﺳﺘﻮرات و ﻋﺒﺎرات ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﺑﮕﻴﺮد .ب اﻓﺸﺎر دادن دﮐﻤﻪ Enterهﺮ ﺧﻂ اﺝﺮا ﺷﺪﻩ و ﻧﺘﻴﺠﻪ ان ﻧﻤﺎﻳﺶ
دادﻩ ﻣﯽ ﺷﻮد.
ﺧﻼﺻﻪ :ﺑﺮای اﺝﺮای ﻳﮏ ﻋﺒﺎرت ﺝﺎوا ؛ ﺗﻨﻬﺎ ﮐﺎﻓﻴﺴﺖ ﮐﻪ اﻧﺮا در ﮐﺪ ﭘﺪ ﺗﺎﻳﭗ ﻧﻤﺎﻳﻴﺪ.
ﮐﺪ ﭘﺪ ﻣﯽ ﺗﻮاﻧﺪ ﺑﺮای اﺝﺮا و اﻣﺘﺤﺎن ﮐﺮدن ﻋﺒﺎرات ﺳﺎدﻩ ﺑﮑﺎر ﺑﺮود .ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ،ﻋﺒﺎرات زﻳﺮ را اﻣﺘﺤﺎن ﻧﻤﺎﻳﻴﺪ:
٢٢
www.rasekhoon.net
www.rasekhoon.net/software
4 + 45
)("hello".length
)Math.max(33, 4
(int) 33.7
)"javax.swing.JOptionPane.showInputDialog(null, "Name:
ﻋﺒﺎرات ﻣﯽ ﺗﻮاﻧﻨﺪ ﺑﻪ ﻣﻘﺪارهﺎی اﺳﺘﺎﻧﺪارد ﺝﺎوا ﻣﺮاﺝﻌﻪ ﮐﻨﻨﺪ و اﺷﻴﺎ ﻣﯽ ﺗﻮاﻧﻨﺪ ﺑﻪ ﮐﻼس هﺎی ﻣﻮﺝﻮد در ﭘﺮوژﻩ ﻣﺮاﺝﻌﻪ داﺷﺘﻪ
ﺑﺎﺷﻨﺪ.ﮐﺪ ﭘﺪ ﻧﺘﺎﻳﺞ را ﻧﻤﺎﻳﺶ ﺧﻮاهﺪ داد و اﮔﺮ ﻋﺒﺎرت ﺷﻤﺎ اﺷﺘﺒﺎﻩ ﺑﺎﺷﺪ ﭘﻴﺎم ﺧﻄﺎﻳﯽ ﻧﺸﺎن ﺧﻮاهﺪ داد.
ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ از اﺷﻴﺎﻳﯽ ﮐﻪ در object benchﻗﺮار دارﻧﺪ ﻧﻴﺰ اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ.ﺑﺮای ﻧﻤﻮﻧﻪ :ﻳﮏ ﺷﯽ از ﮐﻼس studentدر
Object benchﻗﺮار دهﻴﺪ )ﺑﺎاﺳﺘﻔﺎدﻩ از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﮐﻼس ﮐﻪ ﻗﺒﻼ ﺗﻮﺿﻴﺢ دادﻩ ﺷﺪ ( .ﻧﺎم ﺷﯽ student1هﺴﺖ.
ﺑﻪ ﻃﻮر ﻣﺸﺎﺑﻪ ،ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﻪ ﺗﻤﺎم ﻣﺘﺪهﺎی در دﺳﺘﺮس ﮐﻼس هﺎی ﭘﺮوژﻩ ﺗﺎن دﺳﺘﺮﺳﯽ ﭘﻴﺪا ﻧﻤﺎﻳﻴﺪ.
(٣-۶درﻳﺎﻓﺖ اﺷﻴﺎ
ﺧﻼﺻﻪ :ﺑﺮای اﻧﺘﻘﺎل اﺷﺒﺎ از ﮐﺪ ﭘﺪ ﺑﻪ ﻣﺤﻴﻂ ، object benchﺁﻳﮑﻮن ﮐﻮﭼﮏ ﺷﯽ را ﺑﻪ ﺁن ﻣﺤﻴﻂ درگ ﮐﻨﻴﺪ.
ﻧﺘﻴﺠﻪ ﺑﻌﻀﯽ از ﻋﺒﺎرات )دﺳﺘﻮرات( ﻳﮏ ﺷﯽ ﻣﯽ ﺑﺎﺷﺪ .ﮐﻪ ﺷﺎﻣﻞ ﻣﻘﺪارهﺎی ﺳﺎدﻩ ای هﺴﺘﻨﺪ .در اﻳﻦ ﻣﺜﺎل ،ﻧﺘﻴﺠﻪ
ﻧﻤﺎﻳﺶ دادﻩ ﺷﺪﻩ > <object referenceﻳﮏ ﻧﻮع ﺷﯽ ﻣﯽ ﺑﺎﺷﺪ .ﮐﻪ ﺑﻪ وﺳﻴﻠﻪ ﺁﻳﮑﻮﻧﯽ ﮐﻪ در ﮐﻨﺎر ﺁن ﺗﺮﺳﻴﻢ ﺷﺪﻩ در ﺧﻂ ﺑﻌﺪ از
اﮔﺮ ﻧﺘﻴﺠﻪ ﻳﮏ رﺷﺘﻪ ﺑﺎﺷﺪ ﺷﻤﺎ ﻣﻘﺪار اﻧﺮا ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺒﻴﻨﺪ .در ﺿﻤﻦ ﺑﺎز هﻢ ﻳﮏ اﻳﮑﻮن در ﮐﻨﺎر ان ﺗﺮﺳﻴﻢ ﺷﺪﻩ اﺳﺖ
) زﻳﺮا رﺷﺘﻪ هﺎ ﻧﻴﺰ ﺷﯽ هﺴﺘﻨﺪ ( .ﺗﻌﺪادی از دﺳﺘﻮراﺗﯽ ﮐﻪ ﺷﻤﺎ ﺑﺎ اﺳﺘﻔﺎدﻩ از ان هﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺷﯽ اﻳﺠﺎد ﻧﻤﺎﻳﻴﺪ:
)(new Student
)"marmelade".substring(3,8
)(new java.util.Random
""hello" + "world
ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺁﻳﮑﻮن ﮐﻮﭼﮏ ﺷﯽ را درون Object Benchدرگ ﮐﻨﻴﺪ ﺗﺎ ﺑﺎ اﺳﺘﻔﺎدﻩ از ﺷﯽ ﻧﺘﻴﺠﻪ ﺷﺪﻩ ﮐﺎر را اداﻣﻪ دهﻴﺪ.
٢٣
www.rasekhoon.net
www.rasekhoon.net/software
)ﺷﮑﻞ ( ١۵
( ۴-۶ﺑﺮرﺳﯽ اﺷﻴﺎ
ﺧﻼﺻﻪ :ﺑﺮای ﺑﺮرﺳﯽ ﻧﺘﻴﺠﻪ اﺷﻴﺎ در ﮐﺪ ﭘﺪ ﺑﺮ روی ﺁﻳﮑﻮن ﮐﻮﭼﮏ ﺷﯽ دوﺑﺎر ﮐﻠﻴﮏ ﻧﻤﺎﻳﻴﺪ.
اﮔﺮ ﺷﻤﺎ ﻣﯽ ﺧﻮاهﻴﺪ ﻳﮏ ﺷﯽ را ﮐﻪ ﺑﻪ ﻋﻨﻮان ﻧﺘﻴﺠﻪ ﺑﺮﮔﺸﺖ دادﻩ ﺷﺪﻩ را از ﻃﺮﻳﻖ ﮐﺪ ﭘﺪ ﺑﺮرﺳﯽ ﻧﻤﺎﻳﺪ ﺑﺪون اﻳﻨﮑﻪ ﺷﯽ را در
Object benchﻗﺮار دهﻴﺪ .ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺮ روی ﺁﻳﮑﻮن ﺷﯽ دوﺑﺎر ﮐﻠﻴﮏ ﮐﺮدﻩ ﺗﺎ ﻧﺎﻇﺮ ﺷﯽ ﺑﺎز ﺷﻮد.
ﺷﻤﺎ هﻤﭽﻨﻴﻦ ﻣﯽ ﺗﻮاﻧﻴﺪ از ﮐﺪ ﭘﺪ ﺑﺮای اﺝﺮا ﮐﺮدن دﺳﺘﻮرات اﺳﺘﻔﺎدﻩ ﻧﻤﺎﻳﻴﺪ ) اﻳﻦ ﻣﻮﺿﻮع ﺑﺮای دﺳﺘﻮرات ﺝﺎوای ﻣﯽ ﺑﺎﺷﺪ ﮐﻪ
ﻣﻘﺪاری را ﺑﺮ ﻧﻤﯽ ﮔﺮداﻧﺪ ( .اﻳﻦ ﮐﺎر را اﻧﺠﺎم دهﻴﺪ.ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل :
;)"System.out.println("Gurkensalat
;))System.out.println(new java.util.Random().nextInt(10
دﺳﺘﻮراﺗﯽ ﮐﻪ اﺝﺮا ﻣﯽ ﺷﻮﻧﺪ ﺑﻪ درﺳﺘﯽ اﺝﺮا ﻣﯽ ﺷﻮﻧﺪ ﺧﻮاﻩ در اﻧﺘﻬﺎی اﻧﻬﺎ ﺳﻴﻤﯽ ﮐﺎﻟﻮن ﺑﺎﺷﺪ ﺑﺎ ﻧﻪ.
ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺗﻮاﻟﯽ از دﺳﺘﻮرات و ﻳﺎ دﺳﺘﻮرات ﭼﻨﺪ ﺧﻄﯽ را ﺑﺎ اﺳﺘﻔﺎدﻩ از Enter-shiftدر اﻧﺘﻬﺎی هﺮ ﺧﻂ اﻳﺠﺎد ﻧﻤﺎﻳﻴﺪ.
ﺑﺎ ﻓﺸﺮدن enter-shiftﻧﺸﺎﻧﮕﺮ ﻣﻮس ﺑﻪ اﺑﺘﺪای ﺧﻂ ﺑﻌﺪی ﻣﻨﺘﻘﻞ ﻣﯽ ﺷﻮد ﺑﺪون اﻳﻦ ﮐﻪ ﺧﻂ ﻗﺒﻠﯽ اﺝﺮا ﺷﻮد .در اﻧﺘﻬﺎی ﺧﻂ اﺧﺮ
Enterرا ﻓﺸﺎر دهﻴﺪ ﺗﺎ ﮐﻞ ﺧﻂ هﺎی ﺑﺎ هﻢ اﺝﺮا ﺷﻮﻧﺪ .ﺑﺮای ﻧﻤﻮﻧﻪ ﮐﺪ زﻳﺮ را اﺝﺮا ﻧﻤﺎﻳﻴﺪ:
(٧-۶ﮐﺎر ﺑﺎ ﻣﺘﻐﻴﻴﺮهﺎ
٢۴
www.rasekhoon.net
www.rasekhoon.net/software
ﺧﻼﺻﻪ :ﻣﺘﻐﻴﻴﺮهﺎی ﻣﺤﻠﯽ را ﻣﯽ ﺗﻮان در دﺳﺘﻮرات ﻳﮏ ﺧﻄﯽ و ﻳﺎ ﭼﻨﺪ ﺧﻄﯽ ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار داد .اﺳﺎﻣﯽ اﺷﻴﺎ ﻣﻮﺝﻮد
ﻣﺘﻐﻴﻴﺮهﺎ )ﻣﺤﻠﯽ و ﻳﺎ ﺷﯽ ( ﻣﯽ ﺗﻮاﻧﻨﺪ ﺑﻪ ﺻﻮرت ﻣﺤﺪود در ﮐﺪ ﭘﺪ ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار ﺑﮕﻴﺮﻧﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻣﺘﻐﻴﻴﺮهﺎی ﻣﺤﻠﯽ
را در ﮐﺪ ﭘﺪ ﺗﻌﺮﻳﻒ ﻧﻤﺎﻳﻴﺪ -اﻣﺎ اﻳﻦ ﻓﻘﻂ ﺑﺮای ﺑﺨﺸﯽ از دﺳﺘﻮرات ﺗﻮاﻟﯽ ﭼﻨﺪ ﺧﻄﯽ ﻣﻨﺎﺳﺐ ﻣﯽ ﺑﺎﺷﺪ .ﺑﺮای ﻣﺜﺎل ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ
ﺑﻠﻮک دﺳﺘﻮرات زﻳﺮ را وارد ﻧﻤﺎﻳﻴﺪ و اﻳﻦ دﺳﺘﻮرات درﺳﺖ ﮐﺎر ﮐﻨﻨﺪ :
;int sum
;sum = 0
{ )for (int i=0; i<100; i++
;sum += i
}
;)System.out.println("The sum is: " + sum
ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺎ درگ ﮐﺮدن ﺷﯽ از ﮐﺪ ﭘﺪ ﺑﻪ object benchﻳﮏ ﻓﻴﻠﺪ ﺷﯽ ﺝﺪﻳﺪ اﻳﺠﺎد ﻧﻤﺎﻳﻴﺪ.
ﺧﻼﺻﻪ :ﺑﺎ اﺳﺘﻔﺎدﻩ از دﮐﻤﻪ هﺎی ﺑﺎﻻ و ﭘﺎﻳﻴﻦ روی ﺻﻔﺤﻪ ﮐﻠﻴﺪ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﻪ ﺗﺎرﻳﺨﭽﻪ ورودی هﺎ در ﮐﺪ ﭘﺪ دﺳﺖ ﭘﻴﺪا ﮐﻨﻴﺪ.
ﮐﺪ ﭘﺪ ﺳﺎﺑﻘﻪ ای از ورودی هﺎی ﻗﺒﻠﯽ ﺷﻤﺎ را ﻧﮕﻪ داری ﻣﯽ ﮐﻨﺪ .ﺷﻤﺎ ﺑﺎ اﺳﺘﻔﺎدﻩ از دﮐﻤﻪ هﺎی ﺑﺎﻻ و ﭘﺎﻳﻴﻦ روی ﺻﻔﺤﻪ ﮐﻠﻴﺪ
ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﻪ ﺧﻂ هﺎی ورودی ﻗﺒﻠﯽ دﺳﺖ ﭘﻴﺪا ﮐﻨﻴﺪ و ﻣﯽ ﺗﻮاﻧﻴﺪ ﻗﺒﻞ از اﺝﺮا ﻣﺠﺪد ﺁﻧﻬﺎ ﺑﻪ وﻳﺮاﻳﺶ ﺁﻧﻬﺎ ﺑﭙﺮدازﻳﺪ.
٢۵
www.rasekhoon.net
www.rasekhoon.net/software
اﻳﻦ ﺑﺨﺶ ﻣﻘﺪﻣﻪ ای اﺳﺖ ﺑﺮ ﻣﻬﻤﺘﺮﻳﻦ اﻋﻤﺎل ﻣﺮﺑﻮط ﺑﻪ رﻓﻊ ﺧﻄﺎ در . BlueJ
ﺑﺴﻴﺎری از اﺳﺎﺗﻴﺪ ﻋﻠﻮم ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻌﺘﻘﺪﻧﺪ ﮐﻪ اﺳﺘﻔﺎدﻩ از ﻧﺮم اﻓﺰارهﺎی رﻓﻊ ﺧﻄﺎ ) (Debuggerدر ﺳﺎل اول ﺁﻣﻮزش ﻣﯽ ﺗﻮاﻧﺪ
ﺝﺎﻟﺐ و ﻣﻔﻴﺪ ﺑﺎﺷﺪ .اﻣﺎ ﻓﺮﺻﺘﯽ ﺑﺮای ﻣﻌﺮﻓﯽ ﭼﻨﻴﻦ ﭼﻴﺰی را ﺑﻪ داﻧﺸﺠﻮﻳﺎن ﻧﺪارﻧﺪ .داﻧﺸﺠﻮﻳﺎن ﺑﻪ ﺳﺨﺘﯽ در ﺗﻘﻼی ﮐﺎر ﮐﺮدن ﺑﺎ
وﻳﺮاﻳﺸﮕﺮ ،ﮐﺎﻣﭙﺎﻳﻠﺮ و اﺝﺮا ﮐﻨﻨﺪﻩ هﺴﺘﻨﺪ .و ﻓﺮﺻﺘﯽ ﺑﺮای ﺁﺷﻨﺎﻳﯽ ﺑﺎ ﻳﮏ اﺑﺰار ﭘﻴﭽﻴﺪﻩ دﻳﮕﺮ را ﻧﺪارﻧﺪ.
ﺑﺮ هﻤﻴﻦ اﺳﺎس ﻣﺎ ﻣﺼﻤﻢ ﺷﺪﻳﻢ ﺗﺎ ﻳﮏ دﻳﺒﺎﮔﺮ ﺳﺎدﻩ ﻃﺮاﺡﯽ ﮐﻨﻴﻢ .هﺪف اﻳﻦ ﺑﻮد ﮐﻪ دﻳﺒﺎﮔﺮ ﺗﻬﻴﻪ ﺷﻮد ﮐﻪ ﺷﻤﺎ ﻇﺮف
١۵دﻗﻴﻘﻪ ﮐﻞ ﺧﺼﻮﺻﻴﺎت ﺁن را ﺷﺮح دهﻴﺪ.و داﻧﺸﺠﻮﻳﺎن ﺑﺘﻮاﻧﻨﺪ ﺑﺪون اﻣﻮزش ﺧﺎﺻﯽ از ان اﺳﺘﻔﺎدﻩ ﻧﻤﺎﻳﻨﺪ.
در اﺑﺘﺪا اﻣﺮ ،ﻣﺎ اﻋﻤﺎل دﻳﺒﺎﮔﺮ هﺎی ﻗﺪﻳﻤﯽ را ﺑﻪ ٣وﻇﻴﻔﻪ ﮐﺎهﺶ دادﻳﻢ :
.١ﺗﻨﻈﻴﻢ breakpoint
.٢ﮐﺎﻣﭙﺎﻳﻞ ﺧﻂ ﺑﻪ ﺧﻂ ﮐﺪهﺎ
در واﻗﻊ اﻳﻦ ٣ﻋﻤﻞ ﺑﺴﻴﺎر ﺳﺎدﻩ ﻣﯽ ﺑﺎﺷﻨﺪ .در اداﻣﻪ ﻣﺎ ﺑﺎ ﺁﻧﻬﺎ ﮐﺎر ﺧﻮاهﻴﻢ ﮐﺮد.
ﺑﺮای ﺷﺮوع ﮐﺎر ،ﭘﺮوژﻩ debug demoرا از ﭘﻮﺷﻪ examplesاﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ .اﻳﻦ ﭘﺮوژﻩ ﺷﺎﻣﻞ ﮐﻼس هﺎی ﺑﺮای
ﺁزﻣﺎﻳﺶ ﮐﺮدن ﺗﻮاﺑﻊ و اﻋﻤﺎل دﻳﺒﺎﮔﺮ ﻣﯽ ﺑﺎﺷﻨﺪ .و ﻧﻤﯽ ﺗﻮاﻧﻨﺪ ﮐﺎر دﻳﮕﺮی اﻧﺠﺎم دهﻨﺪ.
ﺧﻼﺻﻪ :ﺑﺮای ﻗﺮار دادن ﻳﮏ ، break pointدر ﻣﺤﻞ ﻣﺮﺑﻮط ﺑﻪ break pointهﺎ در ﺳﻤﺖ ﭼﭗ ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ
ﮐﻠﻴﮏ ﮐﻨﻴﺪ.
ﺑﺎ ﺗﻨﻈﻴﻢ ﻳﮏ break pointﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ در اﺝﺮای ﺑﺮﻧﺎﻣﻪ در اﻳﻦ ﻧﻘﻄﻪ ﻣﻌﻴﻦ از ﮐﺪ وﻗﻔﻪ اﻳﺠﺎد ﮐﻨﻴﺪ .و ﺑﺮﻧﺎﻣﻪ در ان
ﻗﺴﻤﺖ ﻣﺘﻮﻗﻒ ﺷﻮد .هﻨﮕﺎﻣﯽ ﮐﻪ اﺝﺮا ﺑﺮﻧﺎﻣﻪ ﻣﺘﻮﻗﻒ ﺷﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ وﺿﻌﻴﺖ اﺷﻴﺎ ﺑﺮﻧﺎﻣﻪ ﺧﻮد را ﺑﺮرﺳﯽ ﮐﻨﻴﺪ .اﻳﻦ
ﮐﺎر در اﻏﻠﺐ اوﻗﺎت ﺑﻪ ﺷﻤﺎ ﮐﻤﮏ ﻣﯽ ﮐﻨﺪ .ﺗﺎ ﺑﺘﻮاﻧﻴﺪ ﺑﻔﻬﻤﻴﺪ ﮐﻪ در ﮐﺪهﺎی ﺷﻤﺎ ﭼﻪ اﺗﻔﺎﻗﯽ ﻣﯽ اﻓﺘﺪ.
هﻤﺎﻧﮕﻮﻧﻪ ﮐﻪ در ﺷﮑﻞ ١۶ﻣﺸﺨﺺ ﻣﯽ ﺑﺎﺷﺪ .ﺳﻤﺖ ﭼﭗ ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ ﻣﺤﻞ ﻣﺮﺑﻮط ﺑﻪ break pointهﺎ ﻣﯽ ﺑﺎﺷﺪ.
ﺷﻤﺎ ﺑﺎ ﮐﻠﻴﮏ ﮐﺮدن در اﻳﻦ ﻣﺤﻴﻂ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻳﮏ break pointاﻳﺠﺎد ﻧﻤﺎﻳﻴﺪ .ﻋﻼﻣﺖ ﮐﻮﭼﮏ " " stopﻧﻘﻄﻪ
Break pointﺷﻤﺎ را ﻣﺸﺨﺺ ﻣﯽ ﻧﻤﺎﻳﺪ .ﻣﯽ ﺗﻮاﻧﻴﺪ هﻤﻴﻦ ﺡﺎﻻ اﻣﺘﺤﺎن ﻧﻤﺎﻳﻴﺪ.
ﮐﻼس Demoرا ﺑﺎز ﮐﻨﻴﺪ .ﻣﺘﺪ loopرا ﭘﻴﺪا ﻧﻤﺎﻳﺪ .و ﻧﻘﻄﻪ breakpointﺧﻮد را در ﺝﺎﻳﯽ از ﻣﺘﺪ ﮐﻪ ﺷﺎﻣﻞ ﺡﻠﻘﻪ
Forﻣﯽ ﺑﺎﺷﺪ .ﻗﺮار دهﻴﺪ .ﻋﻼﻣﺖ " " stopدر ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ ﻧﻤﺎﻳﺶ دادﻩ ﺧﻮاهﺪ ﺷﺪ.
٢۶
www.rasekhoon.net
www.rasekhoon.net/software
هﻨﮕﺎﻣﯽ ﮐﻪ ﺧﻄﻮط ﺑﺮﻧﺎﻣﻪ را ﺑﻮﺳﻴﻠﻪ ﻧﻘﺎط break pointﻣﺸﺨﺺ ﮐﺮدﻳﺪ .اﺝﺮا ﺑﺮﻧﺎﻣﻪ در ان ﻗﺴﻤﺖ هﺎ ﻣﺘﻮﻗﻒ ﻣﯽ ﺷﻮد .اﺝﺎزﻩ
ﺑﺪﻳﺪ اﻳﻦ ﮐﺎر رو اﻧﺠﺎم ﺑﺪهﻴﻢ .ﺷﯽ ای از ﮐﻼس Demoاﻳﺠﺎد ﮐﻨﻴﺪ .و ﻣﺘﺪ Loopﺁﻧﺮا ﺑﺎ ﭘﺎراﻣﺘﺮ ١٠ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ .ﺑﻪ زودی
ﻧﻘﻄﻪ break pointاﺛﺮ ﮐﺮدﻩ .ﻣﺤﻴﻂ ﮐﺪ ﻧﻮﻳﺴﯽ ﺑﺮﻧﺎﻣﻪ ﺑﺎز ﻣﯽ ﺷﻮد .و ﺧﻂ ﺝﺎری را ﻧﻤﺎﻳﺶ ﻣﯽ دهﺪ .هﻤﭽﻨﻴﻦ دﻳﺒﺎﮔﺮ ﺑﺮﻧﺎﻣﻪ ﻧﻴﺰ
ﺧﻄﯽ از ﺑﺮﻧﺎﻣﻪ ﮐﻪ در ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ ﻣﺸﺨﺺ ) (high Lightﺷﺪﻩ ،ﺧﻄﯽ اﺳﺖ ﮐﻪ ﻗﺮار اﺳﺖ اﺝﺮا ﺷﻮد .ﻳﻌﻨﯽ ﺑﺮﻧﺎﻣﻪ در ﺧﻂ
٢٧
www.rasekhoon.net
www.rasekhoon.net/software
( ٢-٧اﺝﺮا ﺧﻂ ﺑﻪ ﺧﻂ ﮐﺪهﺎ
ﺑﺮای اﺝﺮا ﺧﻂ ﺑﺦ ﺧﻂ ﮐﺪهﺎ ﻳﺘﺎن دﮐﻤﻪ Step and Step Intoرا در دﻳﺒﺎﮔﺮ ﻓﺸﺎر دهﻴﺪ .ﺡﺎل ﮐﻪ ﻣﺎ ﺑﺮﻧﺎﻣﻪ را ﻣﺘﻮﻗﻒ ﮐﺮدﻳﻢ.
ﻣﯽ ﺗﻮاﻧﻴﻢ اﺝﺮا ﻳﮏ ﻣﺮﺡﻠﻪ از ﮐﺪهﺎ را ﻣﺸﺎهﺪﻩ ﮐﻨﻴﻢ .و ﺑﺒﻴﻨﻴﻢ ﮐﻪ در ﺡﻴﻦ اﺝﺮا ﭼﻪ اﺗﻔﺎﻗﯽ ﻣﯽ اﻓﺘﺪ .ﺑﺮای اﻧﺠﺎم اﻳﻦ ﮐﺎر ،ﺑﺼﻮرت
ﺗﮑﺮاری ،دﮐﻤﻪ Stepرا از ﭘﻨﺠﺮﻩ دﻳﺒﺎﮔﺮ ﻓﺸﺎر دهﻴﺪ .ﺷﻤﺎ ﺑﺎﻳﺪ ﺗﻐﻴﻴﺮاﺗﯽ در ﺧﻄﻮط ﺑﺮﻧﺎﻣﻪ ﺗﺎن ﺑﺒﻴﻨﻴﺪ ) ﺧﻂ واﺿﺢ ﺷﺪﻩ ﺑﻪ ﺧﻄﯽ ﮐﻪ
اﺝﺮا ﺷﺪﻩ ﻣﻨﺘﻘﻞ ﻣﯽ ﺷﻮد ( هﺮ وﻗﺖ ﮐﻪ ﺷﻤﺎ دﮐﻤﻪ Stepرا ﻓﺸﺎر دهﻴﺪ .ﻳﮏ ﺧﻂ از ﺑﺮﻧﺎﻣﻪ اﺝﺮا ﺷﺪﻩ و اﺝﺮا ﺑﺮﻧﺎﻣﻪ ﻣﺘﻮﻗﻒ ﻣﯽ
ﺷﻮد .ﺗﻮﺝﻪ ﮐﻨﻴﺪ ﮐﻪ ﻣﻘﺪار ﻣﺘﻐﻴﻴﺮهﺎی درون ﭘﻨﺠﺮﻩ دﻳﺒﺎﮔﺮ ﻧﻴﺰ ﺗﻐﻴﻴﺮ ﻣﯽ ﮐﻨﺪ ) ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ﻣﻘﺪار ﻣﺘﻐﻴﻴﺮ ( sum
ﺑﻨﺎﺑﺮاﻳﻦ ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻣﺮﺡﻠﻪ ﺑﻪ ﻣﺮﺡﻠﻪ ﺑﺮﻧﺎﻣﻪ ﺗﺎن را اﺝﺮا ﮐﻨﻴﺪ و ﺑﺒﻴﻨﻴﺪ ﮐﻪ ﭼﻪ اﺗﻔﺎﻗﯽ ﻣﯽ اﻓﺘﺪ .ﺑﺮای اﻳﻦ ﮐﻪ ﺑﻪ اﻳﻦ ﮐﺎر ﺧﺎﺗﻤﻪ
دهﻴﺪ .ﺑﺮ روی ﻧﻘﺎط breakpointﮐﻠﻴﮏ ﮐﻨﻴﺪ .ﺗﺎ ﭘﺎک ﺷﻮﻧﺪ و هﻤﭽﻨﻴﻦ دﮐﻤﻪ Continueﻣﻮﺝﻮد در دﻳﺒﺎﮔﺮ را ﻓﺸﺎر دهﻴﺪ ﺗﺎ اﺝﺮا
ﺑﺮﻧﺎﻣﻪ ﺑﺼﻮرت ﻋﺎدی ﭘﻴﮕﻴﺮی ﺷﻮد .اﺝﺎزﻩ دهﻴﺪ ﺗﺎ اﻳﻦ ﻣﺮاﺡﻞ را ﺑﺎ ﻳﮏ ﻣﺘﺪ دﻳﮕﺮ اﻣﺘﺤﺎن ﻧﻤﺎﻳﻴﻢ .ﻧﻘﻄﻪ Breakpointرا ﺑﺮ روی
ﺧﻂ
( ٣-٧ﺑﺮرﺳﯽ ﻣﺘﻐﻴﻴﺮهﺎ
ﺧﻼﺻﻪ :ﺑﺮرﺳﯽ ﻣﺘﻐﻴﻴﺮهﺎ ﺑﺴﻴﺎر ﺳﺎدﻩ ﻣﯽ ﺑﺎﺷﻨﺪ .ﻣﺘﻐﻴﻴﺮهﺎ ﺑﺼﻮرت ﺧﻮدﮐﺎر در دﻳﺒﺎﮔﺮ ﺑﻪ ﻧﻤﺎﻳﺶ در ﻣﯽ ﺁﻳﻨﺪ .هﻨﮕﺎﻣﯽ ﮐﻪ ﺷﻤﺎ
ﮐﺪهﺎﻳﺘﺎن را رﻓﻊ ﺧﻄﺎ ) (debugﻣﯽ ﻧﻤﺎﻳﺪ .ﺑﺴﻴﺎر ﻣﻬﻢ ﻣﯽ ﺑﺎﺷﺪ ﮐﻪ ﻗﺎدر ﺑﺎﺷﻴﺪ .از وﺿﻌﻴﺖ اﺷﻴﺎ ﺑﺎﺧﺒﺮ ﺑﺎﺷﻴﺪ ) ﻣﺜﻼ :ﻣﺘﻐﻴﻴﺮهﺎی
ﻣﺤﻠﯽ و ﻣﺘﻐﻴﻴﺮهﺎی ﻧﻤﻮﻧﻪ ( .اﻧﺠﺎم اﻳﻦ ﮐﺎر ﺑﺴﻴﺎر ﺳﺎدﻩ و ﺝﺰﺋﯽ ﻣﯽ ﺑﺎﺷﺪ .ﺷﻤﺎ ﻧﻴﺎز ﺑﻪ ﻳﮏ دﺳﺘﻮر ﺧﺎص ﺑﺮای ﺑﺮرﺳﯽ ﻣﺘﻐﻴﻴﺮهﺎ
ﻧﺪارﻳﺪ .ﻣﺘﻐﻴﻴﺮهﺎی اﺳﺘﺎﺗﻴﮏ ،ﻣﺘﻐﻴﻴﺮهﺎی ﻧﻤﻮﻧﻪ از ﺷﯽ ﺝﺎری ،ﻣﺘﻐﻴﻴﺮهﺎی ﻣﺤﻠﯽ ﻣﺘﺪ ﺝﺎری هﻤﻮارﻩ ﺑﻪ ﺻﻮرت ﺧﻮدﮐﺎر ﻧﻤﺎﻳﺶ دادﻩ
ﺷﺪﻩ و هﻤﭽﻨﻴﻦ ﺑﺮوز رﺳﺎﻧﯽ ﻧﻴﺰ ﻣﯽ ﺷﻮﻧﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻣﺘﺪهﺎ را در ﻓﺮاﺧﻮاﻧﯽ ﻣﺘﻮاﻟﯽ اﻧﺘﺨﺎب ﮐﻨﻴﺪ .ﺗﺎ ﻣﺘﻐﻴﻴﺮهﺎی دﻳﮕﺮ اﺷﻴﺎ و
ﻣﺘﺪهﺎی ﻓﻌﺎل ﺝﺎری را ﻣﺸﺎهﺪﻩ ﻧﻤﺎﻳﻴﺪ .ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ،ﻣﺠﺪدا ﻳﮏ ﻧﻘﻄﻪ break pointدر ﻣﺘﺪ )( carTestﻗﺮار دهﻴﺪ .در ﺳﻤﺖ
ﭼﭗ ﭘﻨﺠﺮﻩ دﻳﺒﺎﮔﺮ ﺷﻤﺎ ﻓﺮاﺧﻮاﻧﯽ ﻣﺘﻮاﻟﯽ ) ( call sequenceرا ﻣﺸﺎهﺪﻩ ﺧﻮاهﻴﺪ ﮐﺮد .ﮐﻪ در ﺡﺎل ﺡﺎﺿﺮ ﻣﻮارد زﻳﺮ را ﻧﻤﺎﻳﺶ
ﻣﯽ دهﺪ:
Car.seats
Demo.carTest
اﻳﻦ اﺷﺎرﻩ ﻣﯽ ﮐﻨﺪ ﺑﻪ اﻳﻦ ﮐﻪ Car.Seatsﺑﻮﺳﻴﻠﻪ Demo.carTestﻓﺮاﺧﻮاﻧﯽ ﺷﺪﻩ اﺳﺖ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ از اﻳﻦ ﻟﻴﺴﺖ ﮔﺰﻳﻨﻪ
Demo.carTestرا ﺑﺮای ﺑﺮرﺳﯽ ﮐﺪ ﻣﺮﺑﻮﻃﻪ و هﻤﭽﻨﻴﻦ ﻣﻘﺪار ﻣﺘﻐﻴﻴﺮهﺎی ﺝﺎری اﻳﻦ ﻣﺘﺪ اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
اﮔﺮ ﺷﻤﺎ از ﺧﻄﯽ ﮐﻪ ﺷﺎﻣﻞ ﺳﺎﺧﺘﺎر )…( new Carﻣﯽ ﺑﺎﺷﺪ .ﻋﺒﻮر ﮐﻨﻴﺪ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻣﻘﺪار ﻣﺘﻐﻴﻴﺮ ﻣﺤﻠﯽ my carرا ﮐﻪ ﺑﺼﻮرت
> <object refrenceﻣﯽ ﺑﺎﺷﺪ ﻣﺸﺎهﺪﻩ ﻧﻤﺎﻳﻴﺪ .ﻣﻘﺪار ﺗﻤﺎم اﻧﻮاع اﺷﻴﺎ ) ﺑﻪ ﺝﺰ رﺷﺘﻪ هﺎ ( از اﻳﻦ راﻩ ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد .ﺷﻤﺎ
ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺎ دو ﺑﺎر ﮐﻠﻴﮏ ﮐﺮدن ﺑﺮ روی ﻣﺘﻐﻴﻴﺮهﺎ اﻧﻬﺎ را ﺑﺮرﺳﯽ ﻧﻤﺎﻳﻴﺪ .اﻧﺠﺎم اﻳﻦ ﮐﺎر ﺷﺒﻴﻪ ﺑﺎز ﮐﺮدن ﭘﻨﺠﺮﻩ ﺑﺮرﺳﯽ ﺷﯽ
٢٨
www.rasekhoon.net
www.rasekhoon.net/software
ﺧﻼﺻﻪ :ﮔﺰﻳﻨﻪ هﺎی Haltو Terminateﻣﻮﺝﻮد در دﻳﺒﺎﮔﺮ ﺑﺮای اﻳﺠﺎد ﺗﻮﻗﻒ ﺑﻄﻮر ﻣﻮﻗﺖ ﻳﺎ داﺋﻢ در ﺑﺮﻧﺎﻣﻪ ﺑﮑﺎر ﻣﯽ روﻧﺪ.
ﮔﺎهﯽ اوﻗﺎت اﺝﺮا ﺑﺮﻧﺎﻣﻪ ﺑﺴﻴﺎر ﻃﻮل ﻣﯽ ﮐﺸﺪ .و ﻣﺎ ﻣﺘﻌﺠﺐ از اﻳﻦ ﮐﻪ هﻤﻪ ﭼﻴﺰ درﺳﺖ هﺴﺖ .ﺷﺎﻳﺪ ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ در ﻳﮏ ﺡﻠﻘﻪ
ﻧﺎﻣﺘﻨﻬﺎهﯽ ﮔﺮﻓﺘﺎر اﻣﺪﻩ و ﺑﻪ هﻤﻴﻦ دﻟﻴﻞ اﺝﺮا ﺑﺮﻧﺎﻣﻪ ﺑﻪ ﻃﻮل ﻣﯽ اﻧﺠﺎﻣﺪ .ﺧﺐ ﻣﺎ اﻳﻦ ﻣﻮرد را ﺑﺮرﺳﯽ ﻣﯽ ﮐﻨﻴﻢ .ﻣﺘﺪ )( longloopرا
از ﮐﻼس Demoاﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ .ﺡﺎﻻ ﻣﺎ ﻗﺼﺪ دارﻳﻢ ﺑﺒﻴﻨﻴﻢ ﮐﻪ ﺑﺮﻧﺎﻣﻪ ﺑﻪ ﮐﺠﺎ ﻣﻨﺘﻘﻞ ﻣﯽ ﺷﻮد .ﭘﻨﺠﺮﻩ دﻳﺒﺎﮔﺮ را ﻧﮕﺎﻩ ﮐﻨﻴﺪ اﮔﺮ هﻨﻮز ﺑﺮ
روی ﺻﻔﺤﻪ ﻧﻤﺎﻳﺶ ﻇﺎهﺮ ﻧﺸﺪﻩ اﺳﺖ .ﺡﺎﻻ دﮐﻤﻪ Haltرا ﻓﺸﺎر دهﻴﺪ .اﺝﺮا ﺑﺮﻧﺎﻣﻪ اﮔﺮ ﻣﺎ ﻧﻘﻄﻪ break pointﺗﻌﻴﻴﻦ ﮐﺮدﻩ ﺑﺎﺷﻴﻢ
ﻣﺘﻮﻗﻒ ﻣﯽ ﺷﻮد .ﺷﻤﺎ ﺡﺎﻻ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻣﺮﺡﻠﻪ ﺑﻪ ﻣﺮﺡﻠﻪ ﭘﻴﺶ ﺑﺮوﻳﺪ و از ﻣﺘﻐﻴﻴﺮهﺎ رو ﻣﺸﺎهﺪﻩ ﮐﻨﻴﺪ ﮐﻪ هﻤﻪ ﻣﻘﺪار درﺳﺘﯽ دارﻧﺪ.اﻳﻦ
ﻋﻤﻞ ﻓﻘﻂ ﻧﻴﺎز ﺑﻪ ﻣﻘﺪاری زﻣﺎن ﺑﺮای ﺗﮑﻤﻴﻞ ﺷﺪن دارد .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﻪ دﻓﻌﺎت زﻳﺎد از دﮐﻤﻪ هﺎی Continueو Haltاﺳﺘﻔﺎدﻩ
ﮐﻨﻴﺪ ﺗﺎ ﺑﺘﻮاﻧﻴﺪ ﺳﺮﻳﻌﺘﺮ ﭘﻴﺶ ﺑﺮوﻳﺪ.اﮔﺮ ﺷﻤﺎ ﻗﺼﺪ ﻧﺪارﻳﺪ ﮐﻪ اداﻣﻪ دهﻴﺪ )ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ﺝﺎی واﻗﻌﯽ ﺡﻠﻘﻪ ﺑﯽ ﻧﻬﺎﻳﺖ را ﭘﻴﺪا ﮐﺮدﻩ اﻳﺪ (
ﻣﯽ ﺗﻮاﻧﻴﺪ دﮐﻤﻪ terminateرا ﻓﺸﺎر دهﻴﺪ ﺗﺎ اﺝﺮای ﺑﺮﻧﺎﻣﻪ ﻣﺘﻮﻗﻒ ﺷﻮد .ﺷﻤﺎ ﻧﻤﯽ ﺗﻮاﻧﻴﺪ ازدﮐﻤﻪ Terminateﻣﮑﺮرا اﺳﺘﻔﺎدﻩ
ﻧﻤﺎﻳﺪ.
٢٩
www.rasekhoon.net
www.rasekhoon.net/software
ﺧﻼﺻﻪ :ﺑﺮای اﻳﺠﺎد ﻳﮏ ﺑﺮﻧﺎﻣﻪ ﺧﻮد اﺗﮑﺎ از ﻣﻨﻮی projectﮔﺰﻳﻨﻪ create jar fileرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
BlueJﻣﯽ ﺗﻮاﻧﺪ ﻓﺎﻳﻞ هﺎی Jarﻗﺎﺑﻞ اﺝﺮا ﺗﻮﻟﻴﺪ ﻧﻤﺎﻳﺪ .ﻓﺎﻳﻞ هﺎی Jarاﺝﺮاﻳﯽ ،در ﺳﻴﺴﺘﻢ هﺎی ﻧﻈﻴﺮ وﻳﻨﺪوز و ﻣﮑﻴﻨﺘﺎش ﺑﺎ
دو ﺑﺎر ﮐﻠﻴﮏ ﮐﺮدن ﺑﺮ روی ﻓﺎﻳﻞ اﺝﺮا ﻣﯽ ﺷﻮﻧﺪ .و در ﺳﻴﺴﺘﻢ هﺎی ﻧﻈﻴﺮ Dosو Unixﺑﺎ ﺗﺎﻳﭗ دﺳﺘﻮر زﻳﺮ :
ﻣﺎ اﻳﻦ ﮐﺎر را ﺑﺮای ﭘﺮوژﻩ peopleﮐﻪ در ﭘﻮﺷﻪ examplesﻗﺮار دارد .اﻧﺠﺎم ﻣﯽ دهﻴﻢ .ﭘﺮوژﻩ را ﺑﺎز ﮐﻨﻴﺪ .ﻣﻄﻤﺌﻦ ﺷﻮﻳﺪ ﮐﻪ ﭘﺮوژﻩ
ﮐﺎﻣﭙﺎﻳﻞ ﺷﺪﻩ و ﺑﻌﺪ از ﻣﻨﻮی Projectﮔﺰﻳﻨﻪ create jar fileرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
ﭘﻨﺠﺮﻩ ای ﺑﺎز ﻣﯽ ﺷﻮد.ﮐﻪ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ ﺗﺎ ﮐﻼس mainرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ ) ﻋﮑﺲ . (١٨اﻳﻦ ﮐﻼس ﺑﺎﻳﺪ ﺷﺎﻣﻞ ﻳﮏ
ﻣﺘﺪ ) mainﮐﻪ اﻣﻀﺎ ﺁن ﺑﺪﻳﻦ ﺷﮑﻞ ﺑﺎﺷﺪ ( public static void main(String[] args) :ﺑﺎﺷﺪ.
در ﻣﺜﺎل ﻣﺎ اﻧﺘﺨﺎب ﮐﻼس mainﺳﺎدﻩ ﻣﯽ ﺑﺎﺷﺪ .زﻳﺮا ﻣﺎ ﺗﻨﻬﺎ ﻳﮏ ﮐﻼس دارﻳﻢ .ﺑﻨﺎﺑﺮاﻳﻦ از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ Helloرا اﻧﺘﺨﺎب
ﻧﻤﺎﻳﻴﺪ.
ﻣﻌﻤﻮﻻ ﺷﻤﺎ ﺳﻮرس ﺑﺮﻧﺎﻣﻪ را ﺑﻪ هﻤﺮاﻩ ﻓﺎﻳﻞ اﺝﺮاﻳﯽ ﻗﺮار ﻧﻤﯽ دهﻴﺪ .وﻟﯽ اﮔﺮ ﻗﺼﺪ دارﻳﺪ ﮐﻪ ﺑﺮﻧﺎﻣﻪ ﺗﺎن ﺷﺎﻣﻞ ﺳﻮرس ﺑﺮﻧﺎﻣﻪ هﻢ
ﺑﺎﺷﺪ .ﻣﯽ ﺗﻮاﻧﻴﺪ ﮔﺰﻳﻨﻪ include sourceرا ﺗﻴﮏ ﺑﺰﻧﻴﺪ ) .ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﮐﻞ ﭘﺮوژﻩ ﺗﺎن را ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻓﺮﻣﺖ
jarدر ﻗﺎﻟﺐ ﻳﮏ ﻓﺎﻳﻞ ﺑﻮﺳﻴﻠﻪ اﻳﻤﻴﻞ ﺑﺮای دﻳﮕﺮان ارﺳﺎل ﻧﻤﺎﻳﻴﺪ ( .
از ) user libraryﺑﺮای اﻳﻨﮑﺎر ﻣﺴﻴﺮ Tools / performance / librariesرا ﻃﯽ ﮐﻨﻴﺪ ( اﺳﺘﻔﺎدﻩ ﮐﻨﺪ .در وﺳﻂ اﻳﻦ
ﭘﻨﺠﺮﻩ ﺷﻤﺎ ﻧﺎﺡﻴﻪ ای را ﺑﺎ اﻳﻦ ﻋﻨﻮان ﻣﺸﺎهﺪﻩ ﺧﻮاهﻴﺪ ﮐﺮد ) . "Include user libraries" :اﮔﺮ ﺷﻤﺎ از ﮐﺘﺎﺑﺨﺎﻧﻪ هﺎ اﺳﺘﻔﺎدﻩ
٣٠
www.rasekhoon.net
www.rasekhoon.net/software
ﻧﮑﺮدﻩ اﻳﺪ .اﻳﻦ ﻧﺎﺡﻴﻪ ﻧﻤﺎﻳﺶ دادﻩ ﻧﻤﯽ ﺷﻮد ( .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ اﻧﺘﺨﺎب ﮐﻨﻴﺪ ﮐﺘﺎﺑﺨﺎﻧﻪ هﺎی ﻣﺨﺘﻠﻔﯽ را ﮐﻪ ﭘﺮوژﻩ ﺷﻤﺎ از ان هﺎ اﺳﺘﻔﺎدﻩ
ﻣﯽ ﮐﻨﺪ Continue .را ﻓﺸﺎر دهﻴﺪ ﺗﺎ ﺑﻪ ﻣﺮﺡﻠﻪ ﺑﻌﺪ ﺑﺮوﻳﺪ .در اﻳﻦ ﺑﺨﺶ ﻳﮏ ﭘﻨﺠﺮﻩ اﻧﺘﺨﺎب ﮐﻨﻨﺪﻩ ﻓﺎﻳﻞ ) (file chooserﻧﻤﺎﻳﺶ
دادﻩ ﻣﯽ ﺷﻮد .ﮐﻪ ﺷﻤﺎ ﺑﺎ اﺳﺘﻔﺎدﻩ از ان ﻧﺎم ﻓﺎﻳﻞ Jarرا ﺗﺎﻳﭗ ﮐﺮدﻩ و دﮐﻤﻪ Createرا ﻓﺸﺎر دهﻴﺪ .ﺑﺮای اﻳﻦ ﻣﺜﺎل ﺷﻤﺎ ﺗﺎﻳﭗ ﮐﻨﻴﺪ:
Helloو دﮐﻤﻪ createرا ﻓﺸﺎر دهﻴﺪ .اﮔﺮ ﺷﻤﺎ ﺑﻪ ﻓﺎﻳﻞ ﺗﺎن ﮐﺘﺎﺑﺨﺎﻧﻪ ای را اﺿﺎﻓﻪ ﻧﮑﺮدﻩ ﺑﺎﺷﻴﺪ .ﻓﺎﻳﻞ hello.jarاﻳﺠﺎد ﻣﯽ ﺷﻮد.
و اﮔﺮ ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ ﺷﺎﻣﻞ ﮐﺘﺎﺑﺨﺎ ﻧﻪ ای ﺑﺎﺷﺪ .ﭘﻮﺷﻪ ای ﺑﺎ ﻧﺎم helloاﻳﺠﺎد ﺷﺪﻩ ﮐﻪ ﻓﺎﻳﻞ hello.jarدر ﺁن ﻗﺮار دارد .هﻤﭽﻨﻴﻦ اﻳﻦ
ﭘﻮﺷﻪ ﺷﺎﻣﻞ ﺗﻤﺎﻣﯽ ﮐﺘﺎﺑﺨﺎﻧﻪ هﺎی ﻣﻮرد ﻧﻴﺎز ﻣﯽ ﺑﺎﺷﺪ .ﻓﺎﻳﻞ Jarﺷﻤﺎ ﮐﺘﺎﺑﺨﺎﻧﻪ هﺎی ﻣﻮرد ﻧﻴﺎز ﺧﻮد را در ﭘﻮﺷﻪ ای هﻤﻨﺎم ﺑﺎ ﺧﻮدش
ﻣﯽ ﻳﺎﺑﺪ .ﺑﻨﺎﺑﺮاﻳﻦ هﻤﻮارﻩ ﻓﺎﻳﻞ Jarرا ﻳﺎ اﻳﻦ ﭘﻮﺷﻪ ﺝﺎﺑﺠﺎ ﮐﻨﻴﺪ .ﺗﺎ ﻓﺎﻳﻞ Jarﺑﺘﻮاﻧﺪ ﮐﺘﺎﺑﺨﺎﻧﻪ هﺎی ﻣﻮرد ﻧﻴﺎز را ﭘﻴﺪا ﻧﻤﺎﻳﺪ.
اﮔﺮ ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ ﺷﺎﻣﻞ ﻳﮏ راﺑﻂ ﮔﺮاﻓﻴﮑﯽ ﮐﺎرﺑﺮ ) (GUIﻣﯽ ﺑﺎﺷﺪ .ﺑﺎ دو ﺑﺎر ﮐﻠﻴﮏ ﺑﺮ روی ﻓﺎﻳﻞ Jarﻣﯽ ﺗﻮاﻧﻴﺪ ﺁﻧﺮا اﺝﺮا ﮐﻨﻴﺪ.
و اﮔﺮ ﻣﺎﻧﻨﺪ ﻣﺜﺎل ﻣﺎ ﻓﺎﻳﻞ Jarﺗﻨﻬﺎ ﺷﺎﻣﻞ ﻳﮏ I/Oﻣﯽ ﺑﺎﺷﺪ .ﺷﻤﺎ ﺑﺎ اﺳﺘﻔﺎدﻩ از Text Terminalو ﻳﺎ ﭘﻨﺠﺮﻩ داس ﻣﯽ ﺗﻮاﻧﻴﺪ اﻧﺮا
در ﭘﻨﺠﺮﻩ داس ﻳﺎ Text Terminalﺑﻪ ﻣﺤﻠﯽ ﮐﻪ ﻓﺎﻳﻞ .jarﻗﺮار دارد رﻓﺘﻪ و دﺳﺘﻮر زﻳﺮ را ﺗﺎﻳﭗ ﮐﻨﻴﺪ:
٣١
www.rasekhoon.net
www.rasekhoon.net/software
ﺧﻼﺻﻪ :ﺑﺮای اﺝﺮا ﮐﺮدن اﭘﻠﺖ هﺎ از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ appletﮔﺰﻳﻨﻪ Run Appletرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
BlueJﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ ﮐﻪ اﭘﻠﺖ هﺎ را ﻣﺎﻧﻨﺪ اﭘﻠﻴﮑﻴﺸﻦ هﺎ اﻳﺠﺎد و اﺝﺮا ﮐﻨﻴﺪ .ﺑﻪ هﻤﺮاﻩ BlueJو در ﭘﻮﺷﻪ Examplesﻳﮏ
ﻧﻤﻮﻧﻪ اﭘﻠﺖ وﺝﻮد دارد .ﻣﺎ در اﺑﺘﺪا ﻗﺼﺪ دارﻳﻢ ﺗﺎ اﭘﻠﺖ را اﺝﺮا ﻧﻤﺎﻳﻴﻢ .ﺑﺮای اﻳﻨﮑﺎر ﭘﺮوژﻩ Appletdemoرا از ﭘﻮﺷﻪ
examplesاﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
ﺷﻤﺎ ﺧﻮاهﻴﺪ دﻳﺪ ﮐﻪ اﻳﻦ ﭘﺮوژﻩ ﺗﻨﻬﺎ ﺷﺎﻣﻞ ﻳﮏ ﮐﻼس ﺑﺎ ﻧﺎم CaseConvertorﻣﻴﺒﺎﺷﺪ .اﻳﻦ ﮐﻼس ﺑﻮﺳﻴﻠﻪ ﺗﮓ >><<applet
ﻣﺸﺨﺺ ﺷﺪﻩ اﺳﺖ .ﺑﻌﺪ از ﮐﺎﻣﭙﺎﻳﻞ ﭘﺮوژﻩ ،ﮔﺰﻳﻨﻪ Run Appletرا از ﻣﻨﻮی ﺑﺎز ﺷﻮﻧﺪﻩ ﮐﻼس اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
ﭘﻨﺠﺮﻩ ای ﺑﺎز ﻣﯽ ﺷﻮد ﮐﻪ ﺑﻪ ﺷﻤﺎ ﻳﮏ ﺳﺮی ﮔﺰﻳﻨﻪ اراﺋﻪ ﻣﯽ دهﺪ ) ﻋﮑﺲ .( ١٩
ﺷﻤﺎ در اﻳﻦ ﭘﻨﺠﺮﻩ ﻣﯽ ﺑﻴﻨﻴﺪ ﮐﻪ ﻣﯽ ﺗﻮاﻧﻴﺪ اﻧﺘﺨﺎب ﮐﻨﻴﺪ ﮐﻪ اﭘﻠﺖ در ﻳﮏ ﻣﺮورﮔﺮ ﻧﻤﺎﻳﺶ دادﻩ ﺷﻮد و ﻳﺎ اﻳﻨﮑﻪ در Applet viewer
وﻳﺎ اﻳﻨﮑﻪ ﺗﻨﻬﺎ webpageﻣﺮﺑﻮﻃﻪ ﺗﻮﻟﻴﺪ ﺷﺪﻩ و اﭘﻠﺖ اﺝﺮا ﻧﺸﻮد .ﺗﻨﻈﻴﻤﺎت ﭘﻴﺶ ﻓﺮض را دﺳﺖ ﻧﺰﻧﻴﺪ و دﮐﻤﻪ Okرا ﻓﺸﺎر دهﻴﺪ.
ﺑﻌﺪ از ﭼﻨﺪ ﺛﺎﻧﺒﻪ Applet viewerﻧﻤﺎﻳﺶ دادﻩ ﺷﺪﻩ و اﭘﻠﺖ ﺷﻤﺎ را ﻧﻤﺎﻳﺶ ﻣﯽ دهﺪ.
Applet Viewerﺑﻬﻤﺮاﻩ j2seﺑﺮ روی ﺳﻴﺴﺘﻢ ﺷﻤﺎ ﻧﺼﺐ ﺷﺪﻩ و هﻤﻮارﻩ اﻳﻦ ﺗﻀﻤﻴﻦ وﺝﻮد دارد ﮐﻪ ﻧﺴﺨﻪ ﮐﺎﻣﭙﺎﻳﻠﺮ ﺝﺎوای
ﺷﻤﺎ و Applet viewerﻳﮑﺴﺎن ﺑﺎﺷﺪ .در ﻣﻮرد ﻣﺮورﮔﺮ وب ﺷﻤﺎ اﻣﮑﺎن دارد .ﮐﻪ ﻣﺮورﮔﺮ از ﻧﺴﺨﻪ دﻳﮕﺮی از ﺝﺎوا اﺳﺘﻔﺎدﻩ
ﮐﻨﺪ و اﻳﻦ ﻣﻮرد ﺑﺎﻋﺚ ﺑﺮوز ﻳﮏ ﺳﺮی ﻣﺸﮑﻞ ﺷﻮد .اﻟﺒﺘﻪ در ﺡﺎل ﺡﺎﺿﺮ اﮐﺜﺮ ﻣﺮورﮔﺮ هﺎ ﺑﺨﻮﺑﯽ ﺑﺎ ﺝﺎوا ﮐﺎر ﻣﯽ ﮐﻨﻨﺪ.
در ﺳﻴﺴﺘﻢ ﻋﺎﻣﻞ وﻳﻨﺪوز و ﻣﮑﻴﻨﺘﺎش BlueJ ،از ﻣﺮورﮔﺮ ﭘﻴﺶ ﻓﺮض ﺳﻴﺴﺘﻢ ﻋﺎﻣﻞ اﺳﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﺪ .اﻣﺎ در ﺳﻴﺴﺘﻢ هﺎی
٣٢
www.rasekhoon.net
www.rasekhoon.net/software
ﺧﻼﺻﻪ :ﺑﺮای اﻳﺠﺎد اﭘﻠﺖ ﺑﺮ روی دﮐﻤﻪ New Classﮐﻠﻴﮏ ﮐﺮدﻩ و Appletرا از ﻧﻮع ﮐﻼس اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
ﺑﻌﺪ از اﻳﻦ ﮐﻪ ﻣﺸﺎهﺪﻩ ﮐﺮدﻳﺪ ﭼﮕﻮﻧﻪ ﻣﯽ ﺗﻮان ﻳﮏ اﭘﻠﺖ را اﺝﺮا ﮐﺮد .ﺡﺎﻻ ﻗﺼﺪ دارﻳﻢ ﺗﺎ ﺧﻮدﻣﺎن ﻳﮏ اﭘﻠﺖ اﻳﺠﺎد ﻧﻤﺎﻳﻴﻢ.
ﻳﮏ ﮐﻼس ﺝﺪﻳﺪ ﺑﺎ ﻓﺮﻣﺖ Appletاﻳﺠﺎد ﮐﻨﻴﺪ .اﻧﺮا ﮐﺎﻣﭙﺎﻳﻞ ﮐﻨﻴﺪ .و در ﻧﻬﺎﻳﺖ اﺝﺮا ﮐﻨﻴﺪ .اﻳﻦ ﮐﺎر اﻧﺠﺎم ﺷﺪ !!!
ﺡﺎﻻ ﻣﯽ ﺗﻮاﻧﻴﺬ ﮐﺪهﺎی اﭘﻠﺖ را در ادﻳﺘﻮر ﺑﺒﻴﻨﻴﺪ.و ﻣﺸﺎهﺪﻩ ﮐﻨﻴﺪ ﮐﻪ ﺷﺎﻣﻞ ﺗﻤﺎﻣﯽ ﮐﺪهﺎی ﻣﻮرد ﻧﻴﺎز ﺑﺮای اﭘﻠﺖ ﻣﯽ ﺑﺎﺷﺪ.
در ﺑﺴﻴﺎری از ﺡﺎﻟﺖ هﺎ اﻳﺠﺎد ﺷﯽ اﭘﻠﺖ ﺑﺮ روی ﻣﻴﺰ ﮐﺎر اﺷﻴﺎ ﺑﺴﻴﺎر ﻣﻔﻴﺪ ﺧﻮاهﺪ ﺑﻮد .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ اﭘﻠﺖ
ﺳﺎزﻧﺪﻩ اﭘﻠﺖ را ﻣﺸﺎهﺪﻩ ﻧﻤﺎﻳﻴﺪ .از ﻣﻴﺰ ﮐﺎر اﺷﻴﺎ ﺷﻤﺎ ﻧﻤﯽ ﺗﻮاﻧﻴﺪ ﻳﮏ اﭘﻠﺖ را ﺑﻪ ﻃﻮر ﮐﺎﻣﻞ اﺝﺮا ﮐﻨﻴﺪ .ﺑﻠﮑﻪ ﺑﻌﻀﯽ از ﻣﺘﺪهﺎی
ﺁن را ﻣﯽ ﺗﻮاﻧﻴﺪ ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ .اﻳﻦ ﻣﻮﺿﻮع ﺑﺮای ﺗﺴﺖ ﮐﺮدن ﻳﮏ ﻣﺘﺪ ﮐﻪ ﺷﻤﺎ در ﺑﻴﻦ ﮐﺪهﺎی اﭘﻠﺖ ﻧﻮﺷﺘﻪ اﻳﺪ ﻣﯽ ﺗﻮاﻧﺪ ﻣﻔﻴﺪ
ﺑﺎﺷﺪ .اﮔﺮ ﺷﻤﺎ ﺑﺮای اﭘﻠﺖ ﺗﺎن ﻧﻘﺎط break pointﺗﻌﻴﻦ ﮐﺮدﻩ اﻳﺪ .در ﺡﺎﻟﺘﯽ ﮐﻪ اﭘﻠﺖ در Applet viewerو ﻳﺎ ﻣﺮورﮔﺮ
وب اﺝﺮا ﻣﯽ ﺷﻮد .هﻴﭻ ﮔﻮﻧﻪ ﺗﺎﺛﻴﺮی ﻧﺪارد .زﻳﺮا اﻧﻬﺎ از ﻣﺎﺷﻴﻦ هﺎی ﻣﺠﺎزی ﻣﺮﺑﻮط ﺑﻪ ﺧﻮد ﺑﻬﺮﻩ ﻣﯽ ﺑﺮﻧﺪ .و ﻧﻤﯽ ﺗﻮاﻧﻨﺪ ﻣﻌﻨﺎی
اﮔﺮ ﺷﻤﺎ ﻗﺼﺪ دارﻳﺪ ﺗﺎ از Break pointهﺎ و هﻤﭽﻨﻴﻦ ﮐﺎﻣﭙﺎﻳﻞ ﻣﺮﺡﻠﻪ ﺑﻪ ﻣﺮﺡﻠﻪ در اﭘﻠﺖ ﺗﺎن اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ
از ﮐﻼس AppletWindowﮐﻪ ﺑﻮﺳﻴﻠﻪ ﻣﺎﻳﮑﻞ ﺗﺮﻳﮑﻮﺑﻮف ﻧﻮﺷﺘﻪ ﺷﺪﻩ اﺳﺘﻔﺎدﻩ ﻧﻤﺎﻳﻴﺪ .اﻳﻦ ﮐﻼس ﺑﺮای ﺷﻤﺎ ﻓﺮﻳﻤﯽ را
ﺑﻮﺝﻮد ﻣﯽ اورد .ﮐﻪ ﺑﺎ اﺳﺘﻔﺎدﻩ از ان ﻣﯽ ﺗﻮاﻧﻴﺪ اﭘﻠﺖ هﺎ را ﻣﺴﺘﻘﻴﻤﺎ در درون BlueJاﺝﺮا ﻧﻤﺎﻳﺪ .ﺑﻪ ﮔﻮﻧﻪ ای ﮐﻪ ﻣﺘﺪهﺎی
ﻋﺎدی ﻣﺮﺑﻮط ﺑﻪ رﻓﻊ ﺧﻄﺎ ﮐﺎر ﮐﻨﻨﺪ .ﺷﻤﺎ اﻳﻦ ﮐﻼس و ﻳﮏ ﻧﺴﺨﻪ ﻧﻤﻮﻧﻪ از ان را ﻣﯽ ﺗﻮاﻧﻴﺪ در ﺑﺨﺶ Resourceﺳﺎﻳﺖ
BlueJﺑﻴﺎﺑﻴﺪ.
٣٣
www.rasekhoon.net
www.rasekhoon.net/software
ﺧﻼﺻﻪ :ﺑﺮای ﺑﺎز ﮐﺮدن ﭘﮑﻴﺞ هﺎی ﻏﻴﺮ BlueJاز ﻣﻨﻮی Projectﮔﺰﻳﻨﻪ Open Non-BlueJرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
BlueJﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ ﺗﺎ ﭘﮑﻴﺞ هﺎی را ﮐﻪ در ﺧﺎرج از ﻣﺤﻴﻂ BlueJاﻳﺠﺎد ﺷﺪﻩ در درون BlueJﻣﺸﺎهﺪﻩ ﻧﻤﺎﻳﻴﺪ.
ﺑﺮای اﻧﺠﺎم اﻳﻨﮑﺎر از ﻣﻨﻮی Projectﮔﺰﻳﻨﻪ Open Non BlueJرا اﻧﺘﺨﺎب ﮐﺮدﻩ .ﺳﻴﺴﺘﻢ از ﺷﻤﺎ ﻣﮑﺎن و ﭘﻮﺷﻪ ای را ﮐﻪ
ﺧﻼﺻﻪ :ﮐﻼس هﺎ را ﻣﯽ ﺗﻮاﻧﻴﺪ از ﺝﺎﻳﯽ ﺧﺎرج از ﭘﺮوژﻩ ،ﺑﻪ ﭘﺮوژﻩ اﺿﺎﻓﻪ ﮐﻨﻴﺪ .ﺑﺮای اﻳﻨﮑﺎر از ﮔﺰﻳﻨﻪ Add Class From file
ﮔﺎهﯽ اوﻗﺎت ﺷﻤﺎ ﻧﻴﺎز دارﻳﺪ ﺗﺎ از ﮐﻼﺳﯽ اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ ﮐﻪ در ﺧﺎرج از ﻣﺤﻴﻂ BlueJﻗﺮار دارد .ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل اﺳﺘﺎد ﺷﻤﺎ ﺑﻪ ﺷﻤﺎ
ﮐﻼس ﺝﺎوای دادﻩ ﺗﺎ از ﺁن در ﭘﺮوژﻩ ﺗﺎن اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﻪ ﺳﺎدﮔﯽ ﺑﺎ اﻧﺘﺨﺎب ﮔﺰﻳﻨﻪ Add Class Form fileاز
ﻣﻨﻮی Editﺑﺮﻧﺎﻣﻪ ،ﮐﻼﺳﯽ را ﮐﻪ در ﺧﺎرج از ﭘﺮوژﻩ ﺗﺎن ﻗﺮار دارد .ﺑﻪ ﭘﺮوژﻩ اﺿﺎﻓﻪ ﻧﻤﺎﻳﻴﺪ .ﺷﻤﺎ ﺑﺎ اﻳﻦ روش ﻓﺎﻳﻞ هﺎی
ﺳﻮرس ﺝﺎوا ) ﻳﻌﻨﯽ ﻓﺎﻳﻞ هﺎی ﮐﻪ ﺑﻪ .javaﺧﺘﻢ ﺷﺪﻩ اﻧﺪ ( را ﺑﻪ ﭘﺮوژﻩ ﺗﺎن وارد ﻧﻤﺎﻳﻴﺪ .هﻨﮕﺎﻣﯽ ﮐﻪ ﺷﻤﺎ ﮐﻼس ﻣﻮرد ﻧﻈﺮ را
ﺑﻪ ﭘﺮوژﻩ ﺗﺎن اﺿﺎﻓﻪ ﻣﯽ ﮐﻨﻴﺪ .ﻳﮏ ﻧﺴﺨﻪ از ان در ﭘﻮﺷﻪ ﭘﺮوژﻩ ﮐﭙﯽ ﻣﯽ ﺷﻮد .اﻳﻦ ﻋﻤﻞ دﻗﻴﻘﺎ ﺷﺒﻴﻪ ﺑﻪ اﻳﻦ اﺳﺖ ﮐﻪ ﺷﻤﺎ
ﻳﮏ ﮐﻼس اﻳﺠﺎد ﮐﺮدﻩ وﺗﻤﺎم ﮐﺪهﺎی ﺁﻧﺮا ﺧﻮدﺗﺎن ﺗﻮﻟﻴﺪ ﻧﻤﺎﻳﻴﺪ.
روش دﻳﮕﺮ ﺑﺮای اﺿﺎﻓﻪ ﮐﺮدن ﻳﮏ ﮐﻼس ﺑﻪ ﭘﺮوژﻩ ،ﺑﺪﻳﻦ ﺻﻮرت ﻣﯽ ﺑﺎﺷﺪ ﮐﻪ ﺷﻤﺎ ﻓﺎﻳﻞ ﺳﻮرس ﺝﺎوا را در ﭘﻮﺷﻪ ﭘﺮوژﻩ
ﮐﭙﯽ ﮐﻨﻴﺪ .هﻨﮕﺎﻣﯽ ﮐﻪ دوﺑﺎرﻩ ﭘﺮوژﻩ را ﺑﻮﺳﻴﻠﻪ BlueJﺑﺎز ﮐﻨﻴﺪ .ﺧﻮاهﻴﺪ دﻳﺪ ﮐﻪ BlueJﮐﻼس ﻣﻮرد ﻧﻈﺮ را در ﻧﻤﺎﻳﺶ
ﭘﺮوژﻩ helloرا از ﭘﻮﺷﻪ examplesﺑﺎز ﮐﻨﻴﺪ .ﺗﻨﻬﺎ ﮐﻼس اﻳﻦ ﭘﺮوژﻩ ) ( Hello Classﺑﻮﺳﻴﻠﻪ ﻳﮏ ﻣﺘﺪ mainاﺳﺘﺎﻧﺪارد
ﺗﻌﺮﻳﻒ ﺷﺪﻩ اﺳﺖ .ﺑﺮ روی ﮐﻼس ﮐﻠﻴﮏ راﺳﺖ ﮐﺮدﻩ ،ﻣﻨﻮی ﮐﻼس ﺗﻨﻬﺎ ﺷﺎﻣﻞ ﺳﺎزﻧﺪﻩ ﮐﻼس ﻧﻴﺴﺖ .ﺑﻠﮑﻪ ﻣﺘﺪ اﺳﺘﺎﺗﻴﮏ main
هﻢ ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮد .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻣﺘﺪ mianرا از اﻳﻦ ﻣﻨﻮ ﻓﺮاﺧﻮاﻧﯽ ﻧﻤﺎﻳﻴﺪ .ﺗﻤﺎم ﻣﺘﺪهﺎی اﺳﺘﺎﺗﻴﮏ را ﻣﯽ ﺗﻮان ﺷﺒﻴﻪ ﺑﻪ
ﻣﺘﺪ اﺳﺘﺎﻧﺪارد mainﺷﺎﻣﻞ ﺁراﻳﻪ ای از رﺷﺘﻪ هﺎ ﺑﻪ ﻋﻨﻮان ﭘﺎراﻣﺘﺮ ﻣﯽ ﺑﺎﺷﺪ .ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺁراﻳﻪ ای از رﺷﺘﻪ هﺎ را ﺑﺮ اﺳﺎس
ﻗﻮاﻋﺪ ﺝﺎوا ﺑﺮای اﻳﻦ ﻣﺘﺪ ارﺳﺎل ﮐﻨﻴﺪ .ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل :
٣۴
www.rasekhoon.net
www.rasekhoon.net/software
ﺗﻮﺝﻪ :در ﺝﺎوا اﺳﺘﺎﻧﺪارد ﺷﻤﺎ ﻧﻤﯽ ﺗﻮاﻧﻴﺪ از ﺁراﻳﻪ هﺎی ﺛﺎﺑﺖ ﺑﻪ ﻋﻨﻮان ﺁرﮔﻮﻣﺎن ﺑﺮای ﻓﺮاﺧﻮاﻧﯽ ﻣﺘﺪهﺎ اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ .ﺷﻤﺎ از ﺁن هﺎ
ﻓﻘﻂ ﺑﺮای دادن ﻣﻘﺪار اوﻟﻴﻪ ﻣﯽ ﺗﻮاﻧﻴﺪ اﺳﺘﻔﺎدﻩ ﮐﻨﻴﺪ .در BlueJﻣﺎ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﻴﻢ ﮐﻪ ﺷﻤﺎ ﺑﺮای ﺗﻌﺎﻣﻞ و ﻓﺮاﺧﻮاﻧﯽ ﻣﺘﺪ
(۴-١٠ﺗﻮﻟﻴﺪ اﺳﻨﺎد
ﺧﻼﺻﻪ :ﺑﺮای ﺗﻮﻟﻴﺪ ﺳﻨﺪ ﺑﺮای ﭘﺮوژﻩ ﺗﺎن ،از ﻣﻨﻮی Toolsﮔﺰﻳﻨﻪ Project Documentationرا اﻧﺘﺨﺎب ﮐﻨﻴﺪ.
ﺷﻤﺎ ﺑﻮﺳﻴﻠﻪ BlueJﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺮای ﭘﺮوژﻩ ﺗﺎن در ﻓﺮﻣﺖ اﺳﺘﺎﻧﺪارد javadocﺳﻨﺪ ﺗﻮﻟﻴﺪ ﻧﻤﺎﻳﻴﺪ .ﺑﺮای اﻧﺠﺎم اﻳﻦ ﮐﺎر از ﻣﻨﻮی
ﺑﺎ اﻳﻦ ﮐﺎر ﺑﺮﻧﺎﻣﻪ ﺑﺮای ﺗﻤﺎم ﮐﻼس هﺎی ﻣﻮﺝﻮد در ﭘﺮوژﻩ ﺗﺎن ﺑﺎ اﺳﺘﻔﺎدﻩ ﮐﻼس هﺎی ﺳﻮرس ﺷﺎن ﺳﻨﺪ ﺗﻮﻟﻴﺪ ﻣﯽ ﮐﻨﺪ و ﻣﺮورﮔﺮ وب
ﺷﻤﺎ هﻤﭽﻨﻴﻦ ﻣﯽ ﺗﻮاﻧﻴﺪ ﺳﻨﺪ را ﺑﺮای ﻳﮏ ﮐﻼس ﺗﻮﻟﻴﺪ ﮐﺮدﻩ و ﺑﺒﻴﻨﻴﺪ .ﺑﺮای اﻧﺠﺎم اﻳﻦ ﮐﺎر ﺑﻪ ﻣﺤﻴﻂ ﮐﺪ ﻧﻮﻳﺴﯽ ﮐﻼس ﻣﺮﺑﻮﻃﻪ ﺑﺮوﻳﺪ.
و ﺡﺎﻟﺖ Implementationرا ﺑﻪ Interfaceﺗﻐﻴﻴﺮ دهﻴﺪ .در اﻳﻦ ﺡﺎﻟﺖ ﺷﻤﺎ ﺳﻨﺪ javadocﮐﻼس ﻣﺮﺑﻮﻃﻪ را ﺧﻮاهﻴﺪ دﻳﺪ.
ﺧﻼﺻﻪ :ﺷﻤﺎ ﺑﺎ اﻧﺘﺨﺎب ﮔﺰﻳﻨﻪ Java Class Liberiesاز Helpﻣﯽ ﺗﻮاﻧﻴﺪ ﮐﻼس هﺎی اﺳﺘﺎﻧﺪارد ﺝﺎوا را ﻣﺸﺎهﺪﻩ ﮐﻨﻴﺪ.
هﻤﺎﻧﻄﻮر ﮐﻪ ﻣﯽ داﻧﻴﺪ ؛ هﻨﮕﺎﻣﯽ ﮐﻪ ﺷﻤﺎ ﺑﺎ ﺝﺎوا ﻳﮏ ﺑﺮﻧﺎﻣﻪ ﻣﯽ ﻧﻮﻳﺴﻴﺪ .ﺷﻤﺎ ﺑﻪ ﮐﺘﺎﺑﺨﺎﻧﻪ اﺳﺘﺎﻧﺪارد ﺝﺎوا ﻣﺮاﺝﻌﻪ ﻣﯽ ﮐﻨﻴﺪ.
ﺷﻤﺎ ﺑﺮای دﻳﺪن اﺳﻨﺎد ﻣﺮﺑﻮط ﺑﻪ اﻳﻦ ﮐﺘﺎﺑﺨﺎﻧﻪ هﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ از ﻣﻨﻮی Helpﮔﺰﻳﻨﻪ Java Class Librariesرا اﻧﺘﺨﺎب
اﻟﺒﺘﻪ اﮔﺮ اﺳﻨﺎد ﺝﺎوا را ﺑﻪ ﻃﻮر ﻣﺤﻠﯽ ﻧﺼﺐ ﮐﺮدﻩ اﻳﺪ در ﺡﺎﻟﺖ offlineهﻢ ﻣﯽ ﺗﻮاﻧﻴﺪ اﻳﻦ ﮐﺎر را اﻧﺠﺎم دهﻴﺪ .ﺑﺮای دﻳﺪن
ﺧﻼﺻﻪ :ﺑﺮای اﻳﺠﺎد اﺷﻴﺎ از ﮐﻼس هﺎی ﮐﺘﺎﺑﺨﺎﻧﻪ ای از ﻣﻨﻮی Toolsﮔﺰﻳﻨﻪ Use Library Classرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
BlueJهﻤﭽﻨﻴﻦ ﺗﻮاﺑﻌﯽ را اراﺋﻪ ﻣﯽ دهﺪ ﺗﺎ ﺷﻤﺎ ﺑﺘﻮاﻧﻴﺪ از ﮐﻼس هﺎی ﮐﻪ ﺝﺰ ﭘﺮوژﻩ ﺗﺎن ﻧﻴﺴﺖ وﻟﯽ در ﮐﺘﺎﺑﺨﺎﻧﻪ ﻣﻮﺝﻮد اﺳﺖ
اﺷﻴﺎی اﻳﺠﺎد ﮐﻨﻴﺪ .ﺑﺮای ﻣﺜﺎل ﺷﻤﺎ ﻣﯽ ﺗﻮاﻧﻴﺪ اﺷﻴﺎﻳﯽ از ﮐﻼس هﺎی Stringو ﻳﺎ ArrayListاﻳﺠﺎد ﮐﻨﻴﺪ .اﻳﻦ ﻣﻮرد ﺑﺮای
ﺗﺠﺮﺑﻪ ﮐﺮدن ﮐﺎر ﮐﺮدن اﺷﻴﺎ اﻳﻦ ﮐﻼس هﺎ ﻣﯽ ﺗﻮاﻧﺪ ﺧﻴﻠﯽ ﻣﻔﻴﺪ ﺑﺎﺷﺪ.
ﺷﻤﺎ ﺑﺎ اﻧﺘﺨﺎب Use Library Classاز ﻣﻨﻮی Toolsﻣﯽ ﺗﻮاﻧﻴﺪ از ﮐﺘﺎﺑﺨﺎﻧﻪ ﻳﮏ ﺷﯽ اﻳﺠﺎد ﮐﻨﻴﺪ .ﭘﻨﺠﺮﻩ ای ﺑﺎز ﻣﯽ ﺷﻮد
ﮐﻪ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ ﺗﺎ ﻧﺎم ﮐﺎﻣﻞ ﮐﻼس را وارد ﮐﻨﻴﺪ ،ﻣﺎﻧﻨﺪ ) java.lang.Stringﺑﺎﻳﺪ ﺗﻮﺝﻪ ﮐﻨﻴﺪ ﮐﻪ ﻧﺎم ﮐﺎﻣﻞ ﮐﻼس ﺑﺎﻳﺪ
ﻣﺤﻞ ورود ﻣﺘﻦ )( ﺷﺎﻣﻞ ﻳﮏ ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ اﺳﺖ ﮐﻪ ﺷﺎﻣﻞ ﻧﺎم ﺁﺧﺮﻳﻦ ﮐﻼس هﺎی اﺳﺖ ﮐﻪ ﺷﻤﺎ اﺳﺘﻔﺎدﻩ ﮐﺮدﻩ اﻳﺪ ﺑﺎ اﻧﺘﺨﺎب
٣۵
www.rasekhoon.net
www.rasekhoon.net/software
ﻳﮑﯽ از اﻳﻦ ﮐﻼس هﺎ و ﻓﺸﺎر دادن دﮐﻤﻪ ، Enterﺗﻤﺎم ﺳﺎزﻧﺪﻩ هﺎ و ﻣﺘﺪهﺎی staticﮐﻼس ﻣﺮﺑﻮﻃﻪ ﻟﻴﺴﺖ ﻣﯽ ﺷﻮد.
هﺮ ﮐﺪام از اﻳﻦ ﺳﺎزﻧﺪﻩ هﺎ و ﻳﺎ ﻣﺘﺪهﺎی staticرا ﺑﺎ اﻧﺘﺨﺎب ﮐﺮدن ﻣﯽ ﺗﻮان ﻣﻮرد اﺳﺘﻔﺎدﻩ ﻗﺮار داد.
ﺷﺮوع ﮐﺮدن
.۴ﺑﺮای وﻳﺮاﻳﺶ ﮐﺮدن ﺳﻮرس ﻳﮏ ﮐﻼس ﺑﺮ روی ﺁﻳﮑﻮن ﮐﻼس دو ﺑﺎر ﮐﻠﻴﮏ ﮐﻨﻴﺪ.
.۵ﺑﺮای ﮐﺎﻣﭙﺎﻳﻞ ﻳﮏ ﮐﻼس ،دﮐﻤﻪ compileادﻳﺘﻮر را ﻓﺸﺎر دهﻴﺪ .و ﺑﺮای ﮐﺎﻣﭙﺎﻳﻞ ﻳﮏ ﭘﺮوژﻩ دﮐﻤﻪ compileﭘﻨﺠﺮﻩ
.۶اﮔﺮ در هﻨﮕﺎم ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدن ﺑﺎ ﭘﻴﺎم ﺧﻄﺎﻳﯽ ﻣﻮاﺝﻪ ﺷﺪﻳﺪ .ﺑﺎ ﻓﺸﺎر دادن ﻋﻼﻣﺖ ﺳﻮال ) ؟ ( در ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ اﻃﻼﻋﺎت
.٧ﻧﺎﻇﺮ اﺷﻴﺎ ﺑﻪ ﺷﻤﺎ اﺝﺎزﻩ ﻣﯽ دهﺪ ﺑﺎ ﭼﮏ ﮐﺮدن ﻣﻮﻗﻌﻴﺖ دروﻧﯽ اﺷﻴﺎ ﻳﮏ ﺳﺮی از رﻓﻊ ﺧﻄﺎهﺎی ﺳﺎدﻩ را اﻧﺠﺎم دهﻴﺪ.
.٨ﺑﺎ ﮐﻠﻴﮏ ﮐﺮدن ﺑﺮ روی ﺁﻳﮑﻮن اﺷﻴﺎ ﻣﯽ ﺗﻮان ﭘﺎراﻣﺘﺮهﺎی را ﺑﻪ ﻣﺘﺪهﺎی اﻧﻬﺎ ارﺳﺎل ﻧﻤﻮد.
.١٠ﺑﺮای اﻳﺠﺎد ﮐﻼس ﺝﺪﻳﺪ دﮐﻤﻪ New classرا ﻓﺸﺎر دهﻴﺪ .ﻧﺎم ﻣﺸﺨﺼﯽ ﺑﺮای ﮐﻼس ﻗﺮار دهﻴﺪ.
.١١ﺑﺮای اﻳﺠﺎد ﻳﮏ ﭘﻴﮑﺎن ) . (Arrowدﮐﻤﻪ Arrowرا ﻓﺸﺎر دهﻴﺪ .و ﺁﻧﺮا ﺑﺮ روی ﺻﻔﺤﻪ ﻃﺮاﺡﯽ Dragﮐﻨﻴﺪ.
ﻳﺎ اﻳﻨﮑﻪ ﻣﯽ ﺗﻮاﻧﻴﺪ ﻣﺴﺘﻘﻴﻤﺎ در ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ ،ﮐﺪ ﻣﺮﺑﻮﻃﻪ را وارد ﻧﻤﺎﻳﻴﺪ.
.١٢ﺑﺮای ﺡﺬف ﮐﻼس و ﻳﺎ ﻳﮏ ﭘﻴﮑﺎن ،از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ ﮔﺰﻳﻨﻪ removeرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
.١۴ﺑﺮای اﻣﺘﺤﺎن ﮐﺮدن دﺳﺘﻮرات ﺝﺎوا ،ﺁﻧﻬﺎ را در ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ ﺗﺎﻳﭗ ﻧﻤﺎﻳﻴﺪ.
.١۵ﺑﺮای اﻧﺘﻘﺎل اﺷﻴﺎ از ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ ﺑﻪ ﺷﺎﺧﻪ اﺷﻴﺎ ،ﺁﻳﮑﻮن ﮐﻮﭼﮏ اﺷﻴﺎ را درگ ﮐﻨﻴﺪ.
٣۶
www.rasekhoon.net
www.rasekhoon.net/software
.١۶ﺑﺮای دﻳﺪن اﺷﻴﺎ در ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ ،ﺑﺮ روی ﺁﻳﮑﻮن ﮐﻮﭼﮏ اﺷﻴﺎ دوﺑﺎر ﮐﻠﻴﮏ ﮐﻨﻴﺪ.
.١٨ﺑﺮای وارد ﮐﺮدن دﺳﺘﻮرات ﭼﻨﺪ ﺧﻄﯽ در ﭘﺎﻳﺎن ﺧﻂ enter+shiftرا ﻓﺸﺎر دهﻴﺪ.
.١٩ﻣﺘﻐﻴﻴﺮهﺎی ﻣﺤﻠﯽ ﻣﯽ ﺗﻮاﻧﻨﺪ در دﺳﺘﻮرات ﺗﮏ ﺧﻄﯽ ﻳﺎ ﭼﻨﺪ ﺧﻄﯽ اﺳﺘﻔﺎدﻩ ﺷﻮﻧﺪ .ﻧﺎم هﺎی اﺷﻴﺎ در ﻓﻴﻠﺪهﺎی ﻧﻤﻮﻧﻪ اﺷﻴﺎ
ذﺧﻴﺮﻩ ﻣﯽ ﺷﻮﻧﺪ.
.٢٠ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻧﺸﺎﻧﮕﺮهﺎی ﺑﺎﻻ و ﭘﺎﻳﻴﻦ ﺻﻔﺤﻪ ﮐﻠﻴﺪ ﺑﺮای دﻳﺪن ﺗﺎرﻳﭽﻪ ورودی هﺎ اﺳﺘﻔﺎدﻩ ﻧﻤﺎﻳﻴﺪ.
رﻓﻊ ﺧﻄﺎ
.٢١ﺑﺮای اﻳﺠﺎد Breakpointدر ﻣﻨﻄﻘﻪ breakpointدر ﺳﻤﺖ ﭼﭗ ﻣﺤﻴﻂ ﮐﺪﻧﻮﻳﺴﯽ ﮐﻠﻴﮏ ﻧﻤﺎﻳﻴﺪ.
.٢٢ﺑﺮای دﻳﺪن ﮐﺎﻣﭙﺎﻳﻞ ﺧﻂ ﺑﻪ ﺧﻂ ﺑﺮﻧﺎﻣﻪ از ﮔﺰﻳﻨﻪ هﺎی Stepو Step intoدر دﻳﺒﺎﮔﺮ ﺑﺮﻧﺎﻣﻪ اﺳﺘﻔﺎدﻩ ﻧﻤﺎﻳﻴﺪ.
.٢٣ﻧﻈﺎرت ﮐﺮدن ﺑﺮ ﻣﺘﻐﻴﻴﺮهﺎ ﺳﺎدﻩ اﺳﺖ – ﺗﻤﺎم اﻧﻬﺎ ﺑﺼﻮرت اﺗﻮﻣﺎﺗﻴﮏ در دﻳﺒﺎﮔﺮ ﻧﻤﺎﻳﺶ دادﻩ ﻣﯽ ﺷﻮﻧﺪ.
.٢۴اﻳﺠﺎد ﺗﻮﻗﻒ ﻳﺎ ﺧﺎﺗﻤﻪ دادن ﺑﻪ ﺑﺮﻧﺎﻣﻪ را ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺎ ﮔﺰﻳﻨﻪ هﺎی Haltو Terminateدﻳﺒﺎﮔﺮ اﻧﺠﺎم دهﻴﺪ.
.٢۶ﺑﺮای اﺝﺮا اﭘﻠﺖ هﺎ از ﻣﻨﻮی ﺑﺎزﺷﻮﻧﺪﻩ اﭘﻠﺖ ﮔﺰﻳﻨﻪ Run Appletرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
.٢٧ﺑﺮای اﻳﺠﺎد اﭘﻠﺖ هﺎ دﮐﻤﻪ New classرا ﻓﺸﺎر دادﻩ و ﮔﺰﻳﻨﻪ Appletرا از اﻧﻮاع ﮐﻼس اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
اﻋﻤﺎل دﻳﮕﺮ
.٢٨ﭘﮑﻴﺞ هﺎی ﻏﻴﺮ blueJرا ﻣﯽ ﺗﻮان ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﻨﻮی Projectو اﻧﺘﺨﺎب ﮔﺰﻳﻨﻪ Open Non BlueJﺑﺎز ﮐﺮد.
.٢٩ﮐﻼس هﺎی ﮐﻪ ﺧﺎرج از ﻣﺤﻴﻂ BlueJهﺴﺘﻨﺪ را ﻣﯽ ﺗﻮاﻧﻴﺪ ﺑﺎ اﺳﺘﻔﺎدﻩ از ﻣﻨﻮی Editو اﻧﺘﺨﺎب ﮔﺰﻳﻨﻪ
.٣١ﺑﺮای ﺗﻮﻟﻴﺪ ﺳﻨﺪ ﺑﺮای ﭘﺮوژﻩ ﺗﺎن از ﻣﻨﻮی Toolsﮔﺰﻳﻨﻪ Project Documentationرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
.٣٢ﺑﺮای دﻳﺪن ﮐﻼس هﺎی اﺳﺘﺎﻧﺪارد ﺝﺎوا از ﻣﻨﻮی Helpﮔﺰﻳﻨﻪ java standard Librariesرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
.٣٣ﺑﺮای اﻳﺠﺎد اﺷﻴﺎ از ﮐﻼس هﺎی ﮐﺘﺎﺑﺨﺎﻧﻪ ای از ﻣﻨﻮی Toolsﮔﺰﻳﻨﻪ Use Class Libraryرا اﻧﺘﺨﺎب ﻧﻤﺎﻳﻴﺪ.
٣٧
www.rasekhoon.net