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