صفحه 1:
3 *اجاوا ثمره ۱۵ سال تلاش جهت ایجاد زبان ‎ted ele)‏ ۱ ساخت برنامه هاى مطمئن تر مى باشد.

صفحه 2:
Object Oriented Programming) : 1,5 ‏برنامه نویسی شی‎ (OOP Pett eS Rel DE Ec a RS Mee) ORCL ke el ie Fone En ep rn rer A sr rrene Airs Sone rere) ‏ايجاد اشيا به همان صورتى كه در طبيعت وجود دارند.‎ براى شروع موارد زير را بررسى مى كنيم: * ایجاد کلاسها eo Ie te) Re Ce eee ar) ee og ‏هاى ديكر را به ارث ببرد.‎ * لینک کلاسها به یکدیگر از طریق ۵۵96 ها و واسطها.

صفحه 3:
Class & Object =: lal 9 QuS * اصول برنامه نویسی شیء گرا از جهان واقعی اقتباس شده است. ‎ROW EW a ope ea Cen We Pee rea‏ بنابر این در برنامه نوبسی شیء گرا قابلیت تر کیب اشیا برای ‎vA Pe eee ayn |‏ * از کلاسها برای ایجاد اشیاء استفاده می کنیم. در واقع اشیاء نمونه ‎Sede aCe eee) Be ae eset.)‏ | توان تعداد زيادى شىء دانشجو ايجاد كرد.

صفحه 4:
Variable: px ۱ در زمان اجرای برنامه می باشد. مقدار متغیر را می توان در طول اجرای برنامه تغییر داد. روش ايجاد متغير در زبان جاوا به صورت زير مى باشد. Data_Type Variable Name; : ‏مثال‎ * int highScore; 5111130 51113111 boolean gameOver;

صفحه 5:
نکته ESE MES ESCO NCR) SBP ROy) oe ET lad 4 ‎peel‏ ل اليا ‏* اين نوع متغیرها هنگام ایجاد یک شی از کلاس مقدار می گیرند. اشیا ‎DE RED ced‏ ا ‎Reel dt eae‏ رت ‎ent Rene Ree oe el)‏ ‎ero Cash peta‏ ۷ و وو۱ ‎EES CRP FCG Cae ee Cet BENG) CMTE Se aii webb go Gly wll Lidl plod Gly Old jlaiio

صفحه 6:
Local Variable eC rC Lyra epee pe eer Tee We on ‏ا‎ Mey SEN SSC OES Ce Bs

صفحه 7:
ل ا ا 0 ‎6102١‏ وجود ندارد .

صفحه 8:
‎eae Per ee SOY ey‏ اتات ‎Value‏ ‏"" مقدار دهى اوليه به متغيرها در زبان جاوا به صورت زير مى باشد. ‎;Data_Type Variable_name = Value‏ ‎;int zipcode = 90210‏ ‎;’String name = "Brandon‏ ‎;boolean cheatedOnKelly = true‏ ‎;int age = 28, height = 70, weight = 140‏

صفحه 9:
نکته ۱ oe ‏ل ل‎ Peper oy DECC Ceti peer esi need] Dees cee ee Md RUS ced SS متغیرهای عددی : ۰ Li) tee null : ‏اشیاء‎ (0 pet oad

صفحه 10:
‎pe ne om‏ او »رلیرت رن ‏ا ‎pe reed‏ و ا ا و پس از آن می تواند ترکیبی از حروف واعداد باشد . ‏نكته: به اين دليل كه زبان جاوا از ©[©171606لا استفاده مى كندء نام متغيرها مى تواند شامل هر كاراكترى كه داراى كد ©1112»060[1نا است. باشد. ‏نكته: زبان جاوا يك زبان 115111176 ©285©6-5) مى باشد. ‎۱ ‏ا 1 ال‎ a ‏باعث می شود که نام متغیرها بهتر در ذهنتان بماند.‎

صفحه 11:
قوانین نام گذاری متغیرها PEs Bees ce Se oe ee Pen bc ores ‎.١‏ براى اولين حرف نام متغير از حروف كوجك استفاده ‎ere LOM LN neem nee eC ‏کلمات بعدی را به صورت بزرگ تایپ کنید.‎ ‎7 Ree Twp We pen eC eee many

صفحه 12:
Pra est Be] eee توجه داشته باشيد كه علاوه بر نام متغير بايد نوع اطلاعاتى را كه مى خواهيم درون يكه متغير درج نماييم: تعيين كنيم. نوع اطلاعات يك متغيير يكى از حالات زير مى باشد. ‎.١‏ نوع داده مقدماتى ‎0 ‏۳ _ یک آرایه

صفحه 13:
ا 0 حل يننا ‎Type‏ در مجموع 8 نوع داده اى متفاوت براى اعداد صحيح, اعداد اعشاری. كاراكترها و مقادير منطقى وجود دارد. انواع داده اى فوق را انواع اوليه(يايه) هم مى نامند. دليل ‎SC‏ ا 17 طور پیش فرض مى باشد.ء به عبارت ديكر اين انواع داده ‎TPS ESE gel pele eer a |‏ بات تر است. ‎el ee Ieee eee PERCE ICED Ears‏ ا ا ‎ede‏

صفحه 14:
۱10152712108 12-6 Value that can be stored to 127 d6e- ۲0 32767 ‏موه‎ - وت هنت تب هواس شتا 2147483647 5 ,. 666 , 6/26 ,06© , 666 ae to 609 9,223,372,036,854,775,80 7 Size ley mo) ‏لان‎ bit Se bit of Type Byte Short ۱۳ Long

صفحه 15:
Floating Point Type (© Value that can be stored 1.4E-45 to 3.4E+38 4.9E-324 to Ay =e lel) 512 Type Float Double براى ذخيره كردن كاراكترها از 611317 و براى ذخيره كردن داده های منطق از ۵۵۱6۷ استفاده م شود.

صفحه 16:
Class Type : ‏متغير نوع كلاس‎ Variable ا ا ‎eee EC eee een MES‏ تعریف شود. به مثالهای زیر توجه کنید. 7’String lastname = “Walsh ;Color hair * وقتی یک متفیر از نوع کلاس تعریف می شود. آنگاه این متغیر ‎Capen is Pee Cpe Carel 6 Pepe eee HF‏ 7 1 ‎Care oat be‏ ا ‎fpr) Carel Cece CeCe‏ دارای سه زیر کلاس با نامهای ۸۵00۱6,۳6۵۲ یا . . ل 00 ‎1g a0 |g‏ ل ا ‎crop Pee‏ كلاس 8 ‎Bee‏

صفحه 17:
نکته 0 a Pee nee pe id ‏این متغیر می تواند به هر شیء اشاره نماید.‎ ا ا ‎+4+C‏ ‎SET g)‏ ا ال ل ۳ جدیدی تعریف نمایید

صفحه 18:
PST Tails MC LEC oe pee OBL Re ered Variable * اختصاص مقدار به متفیرها به صورت زیر می باشد. ;ldCode = 8675309 ;snappyDresser = false

صفحه 19:
Comment : obwdgi جهت افزايش خوانايى برنامه از توضيحات استفاده مى شود. در زبان جاوا دو روش برای افزودن توضیحات به برنامه وجود دارد. در ابتدای خط از علامت // استفاده می شود. ‎int creditHours = 3; //Setup credit hours for‏ ‎Cool et)‏

صفحه 20:
Comment : obwdgi Pp eopee ts) Se il . ‏ابتدا و انتهای آنها به ترتیب از علامتهای ا شود‎ This program was written late at «/ night under the influence of expired antihistamine medicine and generic supermarket soda. | offer no warranties express nor implied that works for any useful purpose /x whatsoever

صفحه 21:
۱2 J AR Foe are Rwy Pe gee eS aL PER SEES Pe re ee ene en ‏ا‎ ‎prow gee ee CEM T DeO Ee CBee AF ;int year = 1998

صفحه 22:
لیترال عددی ‎La‏ زبان جاوا لیترالهای عددی متفاوتی دارد. برای مثال عدد ‎Pe SEC Sl ee eee‏ لت ‎jint pennyTotal = 4 ‎;byte pennyTotal = 4 ‎;short pennyTotal = 4 ‎;long pennyTotal = 4L

صفحه 23:
نكات 0 ‏ا ل ل ا ا ا ل‎ Di ‏ا ا ا‎ acy ‏اگر بخواهیم اعداد را در مبنای ۸ یا ۱۶ در نظر بگیریم. قبل از عدد‎ * ‏يا “0 درج مى كنيم. براى مثال اكر‎ ٠ ‏مورد نظر به ترتيب‎ CODER ‏ل‎ rey ‏در نظر‎ ١2 ‏تايب مى كنيم. و اكر بخواهيم مبناى را‎ ٠ ‏صورت /ا/ا/1‎ ‏بكيريم عدد رابه صورت 0611 يا 01612 تايب مى كنيم.‎ Cee ‏ا ا ا ا‎ cn tee ad ‏صورت زير عمل می کنیم.‎ ;int pennyTotal = -4

صفحه 24:
ols ۱۳ eee Paolo) (Melee nes eet) peo ect eee aS ECD ae eee EE ee BCe NT Pec me ype ier) 3 ;double myGPA = 2.25 ;float piValue = 3.1415927F ۱ TRUST oe ADIT Sa Ke perl Peewee CO hal ‏به صورت زیر عمل نمایید.‎ ;double x = 12e22 ;double y = 19E-45

صفحه 25:
ee pad pyeee ea X-mas Bee] pore oe ‏به صورت زير تعريف مى شوند.‎ ;boolean toThineOwnself = true لیترالهای کاراکتری | char letter = ’3 ?char letter =’a

صفحه 26:
كاراكترهاى خاص: Meaning New Line Tab Backspace Carriage return | Backslash Single quotation mark Double quotation mark Octal Hexadecimal Unicode character Character للد ‎i‏ ‎b\‏ ‏لها ‏آنا ‎i‏ ‏‘ ‏1 ‏لك ۱ ud\

صفحه 27:
لیترالهای رشته ای * این نوع لیترالها به صورت زیر ذکر می شوند. String coauthor = "Laura Lemay, Killer of ;"trees String example = “Socrates asked, \’Hemlock 7”"\?is poisson String title = “Sams Teach Yourself Java ina ;’3-Day Weekend\u2122 170۱ ‏ل ل ا‎ ON Sid ‏خاص در اين نوع ليترالها استفاده كرد.‎ ‏عبارت ۱2122۱ کد سمبل ۲۷ می باشد.‎ *

صفحه 28:
عملگر ها: Bae POTN ee] ee Pe Pes ee pene sere pCO مى باشند. ‎Operator | Meaning Example‏ هبو ‎Addition‏ + كت اب ور ات - ‎ba Multiplicatio foe)‏ م ‎Division 1/۳‏ / لات ‎Modules‏ 0 ار 0 ۳۳7 ۸ 1 ۳

صفحه 29:
عملگرهای مقایسه ای 9 ‏هاى 3 م‎ ۳ 1 ‏ا ا‎ ;boolean unusual = (age < 21) & (brotherAge >78) به جای »6 از :66 هم می توان استفاده کرد. تفاوت دو عملگر فوق در این است که عملگر 6 هر دو عملوند را در نظر می گیرد. ولی عملگر ی ۱ ‎Es Peet cine‏ ۱ ;Boolean unusual = (grimThoughts>10) || (brotherAge>78) =

صفحه 30:
و ‎meee 4g (- 0)‏ ل ل | حل ۳۳۳ و ۳ ۳ شود.

صفحه 31:
تقدم عملکرها: eM Te SEO oe SOc Seal عملكر 0 0006 %,1,* قرتيب د | 0 |0 ١ه‏

صفحه 32:
يت BR eo 2 ‏ا ا‎ Pe ea OO Ce Cae NDS Eero ere PCy ‏ایجاد اشیاء استفاده می شود. برای این منظور از عملگر‎ ‏دا‎ ‎class_type object_name = new class- (۷ ;0String teamName = new String 3(0Random randinfo = new Random ;Point pt = new Point(0,0)

صفحه 33:
مثال: simport java.util.Random } class RandomNumbers public static void main(String } arguments[]) ;Random r1, r2 ;Orl = new Random System.out.printin("Random value 1: " ;+ r1.nextDouble()) 3r2 = new Random(8675309) System.out.printin("Random value 2: " ;+ r2.nextDouble()) ۱ 0

صفحه 34:
ols ‏كلاس 18313610113 در حالت يبيش فرض(بدون آركومان) زمان‎ "" ‏جارى سيستم را به عنوان آركومان درنظر مى كيرد.‎ 00 Prone etree ‏ا ل‎ بزرگ استخراج می ا ا 0 عل تت اع يك :02 1 ‏ا ا‎ ‏می سازد. که هميشه دارای‎ 57 Bye ree) I eke On Le CR) bbe en ae ele a] Cer Rew ley Coy)

صفحه 35:
نكات * اگر بخواهید عدد ایجاد شده توسط کلاس ۵۱۱00۲۷ را به عدد صحیح تبدیل کنید به صورت زیر عمل می نمایید. 3Q0Random r1 = new Random jint number = (int)(r1.nextDouble()*12) * در این صورت مقدار متغیر ۱۷۱۲۱۵6۵۲ عددی بین ۰ و ۱۱ خواهد بود.

صفحه 36:
نكات ا ل | شود : Bye es ng) Pee CECT oes ee ee] See soe eRe epee a L-C Le et a ‏می یابد.‎ هو ری ۱۳ شود.

صفحه 37:
نكات * متد ۵۳۱5۲۷0۲ متدی است. که برای ایجاد و مقدار دهی اولیه نمونه های یک کلاس استفاده می شود. متد 50501 شىء جديد و متغيرهايش را مقدار دهى مى ‎eesecy‏ ا ا ا ل ‎eS Pe deca OL‏ ‎Pe SCs ape Pen eer eee Belen e3]|‏ ‎DT ete)‏ رز Ren ee ‏ل‎ PrP n Oe) iti 4 gb (ol ve) ante des ‏آر گومان متفاوت تعریف کرد‎

صفحه 38:
00 ۱ و ۱ اعمال وجود ندارد. ;import java.awt.Point } class SetPoints } public static void main(String arguments[]) ;Point location = new Point(4, 13) ;System.out.printin("Starting location:") ;System.out.printin("X equals " + location.x) ;System.out.printin("Y equals " + location.y) ;System.out.printin("\nMoving to (7, 6)") jlocation.x = 7 jlocation.y = 6 ;System.out.printin("\nEnding location:") ;System.out.printin("X equals " + location.x) ;System.out.printin("Y equals " + location.y) 1 1

صفحه 39:
Pe CA | gee ey "" همان طور كه ملاحظه كرديدء متغير كلاس متغيرى است. كه ال ا ا ۱9 متغير براى تمام نمونه هاى كلاس ثابت است. در واقع تفاوت اين ‎Neen a‏ ا ل ‎Soe‏ ‏متغیرها در یکی از نمونه های کلاس تغییر کند. این تغییر مقدار به تمام نمونه هاى ديكر اعمال مى شود, در حالى كه در مورد متغيرهاى نمونه اين طور نيست. ۲ ووواعز ‎static String surname = “Igwebuike‏ ‎;String name‏ تا 1 1

صفحه 40:
نکات ‎NES) CMTC Seto iene E RON Sth‏ 0 1[ می کنیم. FamilyMember dad = new : (۳ ۲ System.out.printin(“Family’s surname sis :” + dad.surname) System.out.printin(“Family’s surname jis :” + FamilyMember.surname)

صفحه 41:
نکات و منال * فراخوانی متدها نیز مانند فراخوانی متفیرها می باشد. ‎class CheckString‏ } ‎public static void main(String arguments[])‏ } مأ عناء أاعط الأينا ‎١‏ رع]ذا اعم باحصا صل كيتكت مها فصق ماع كر ‎Ce}‏ 9 5۷5۲۵۳۰۵۵۰۵۳۱۵۱۱ ‎string: " + str.length())‏ ۶ )5۷5۲۵۳۰۵۵۰۵۲۱۵۱۸ ‎Wie ea badly ue character at position 7: " +‏ ‎jstr.charAt(7))‏ ‎System.out.printin("The substring from 24 to 31: " +‏ ‎;str.substring(24, 31))‏ ‎System.out.printin("The index of the character x: " +‏ ‎jstr.indexOf('x'))‏ ‏رورا رت رک ترا ‎ium ile i‏ ‎“substring‏ ‎s(will\": " + str.indexOf("will")"\‏ ‎System.out.printin("The string in upper case: " +‏ ‎;str.toUpperCase())‏ 1 1

صفحه 42:
متدهای کلاس ‎pee eer RED CMT SE Reeds‏ | باشندء از این ‎oy ee eles eRe ee EDL nls Cee)‏ مستقیم بر روی نمونه ای از کلاس اثر نگذارد. برای مثال کلاس 5۲1110 متدی دارد که می تواند انواع متفاوت داده ای را پپذیرد و نمونه ای جدید از کلاس 51۲1۲9 شامل مقدار رشته اى آركومان ايجاد كند. ‎;String s1, s2‏ ‎7"s1 = “item‏ ‎S1.valueOf(5)‏ = 782 ‎String.valueOf(5)‏ = 382

صفحه 43:
1 درون یک کلاس کاربرد دارند. برای مثال کلاس ۵۲ که | ‎OMe at ted Sed oe‏ ۱ موضوع متد (۷1310.103]) را در نظر بگیرید. این متد دارای ‎bere rows releycay ied)‏ ا ‎Son eee‏ می گرداند. ‎ot‏ اي 4 اي تاو ایا ییا یی را ‎;SecondPrice)‏

صفحه 44:
4ك 3 SCOPE SB OTe ee eT eT ۲ sus Nope Cate cng } public static void main (String arguments{]) 2م ,1غم عمزمم ل X:200 Y:200 0 ‏غم‎ x:200 Geka ptl; ‏مر عنم‎ 0 00 ;System.out.printin(“Point1: “ + pt1.x + “, “+ ptl.y) PAR its Lie a ‏ا اي‎ oa 28 { 0

صفحه 45:
ی 2 CE Te eee ‏ا‎ ‎۱۳ eee ed na Cte nee ne ed : ‏باشد‎ * تبدیل یک نوع داده ای اولیه به نوع داده ای اولیه دیگر ا ا ا ا ل به همان نوع داده اى اوليه * تبدیل نمونه ای از یک. کلاس به نمونه ای از کلاس دیگر

صفحه 46:
تبدیل انواع داده ای پایه: ‎ite] ha‏ ا ل ا ‎Pe Pep‏ کند و عموما جهت تبدیل انواع عددی به کار می رود. روش انجام عمل تبديل به صورت زير است: ‎;value (type_name)‏ ‎He ha)‏ * نکته: عمل تبدیل نوع در مورد متغیرهای منطقی قابل انجام مت 0 SES Et rei ed Eee ‏بازه كوجكتر تبديل كنيد. ممكن است مقدارى از اطلاعات را‎ ‏از دست بدهید. برای مثال تبدیل نوع 103 به 08 را در‎

صفحه 47:
10 "" تنها محدوديتى كه براى تبديل اشياء به يكديكر وجود دارد. ‎ee‏ ل ا ل 7 ار مرتبط باشند. 0 7 1 رگومان می باشد. آر گومان اول از نوع 00[6 و آر گومان دوم از نوع ۷۷۲۱610۷ . نمونه های تمام کلاسها را می توان ‎eases PwC neler COUNT Car‏ 7 | ‎FileDialog. Dialog sles 51 ulsi (0‏ 9 ترا كرد.

صفحه 48:
تبدیل نوع کلاسها به صورت زیر انجام می شود مثال: ;)0Employee emp = new Employee vicePresident veep = new ;(QvicePresident emp = veep; //no cast need for ;upward use veep = (vicePresident)emp; //must 35 ۷

صفحه 49:
| MEO rar sn ee "" جهت تبديل انواع داده اى يايه به اشياء كلاسهايى در زبان جاوا در نظر گرفته شده است. این کلاسها عبار تند از: ۱۳ ‏ار‎ led ‏اي لك‎ Rte be ROPE Ted ce aad ‏داده اى با حروف كوجى اغاز مى شود. عملكرد جاوا در‎ ‏مورد انواع داده اى يايه و كلاسهاى مشابه شان بسيار متفاوت‎ ‏است و در صورتی که یکی از آنها به جای دیگری استفاده‎ [۱ PPE TIN PCCM ereeye

صفحه 50:
روش تبدیل یک نوع داده ای اولیه به شیء به صورت زیر می باشد ‎Class_name Object_name = new‏ ‎;Class_name(Value)‏ 0 ترا وت دزیر ۳ نکته: استفاده از این اشیاء مانند دیگر اشیاء می باشد و هیچ تفاوتی بین آنها وجود ندارد. * اگر بخواهید شیء فوق را مجدداً تبدیل به نوع داده ای پایه نمایید. به روش زیر عمل كنيد. حالال يي تت لاف ا لل و هت ”0 * مثال: int newCount = dataCount.intValue(); //returns 4403

صفحه 51:
۹1 9 ols ‏لا‎ cede li: Reo Cee rete Pe Cd Sl ae DEL eae ee Re DEA ne eee Integer_Variable = ;Integer.parseint(String_variable) 000 ;’String Pennsylvania = "65000 ;int penn = Integer.parselnt(Pennsylvania)

صفحه 52:
Fe Pere Bee) Fe Woe) IP) 1 PTS ae OR EWS Pee Ree em bbe Men onl Sees ۳ 0 nr ney ۱۳0 ‏برابری خود اشیاء را بررسی می کنند. نه‎ ‏براى مقايسه مقادير دو شىء بايد توابعى را در بدنه برنامه‎ ‏تان بكنجانيد.‎ بت دو شىء متفاوت اين كلاس داراى مقدار مشابه مى باشند. ‎PI‏ 9 ‎Beech‏ 2

صفحه 53:
مثال ‎EqualsTest‏ دوقكء ز } public static void main(String args[]) ;String str1, str2 ).str1 = “Free the bound periodicals :5۲2 2 1 ;System.out.printin(“String1: “ + str1) ;System.out.printin(“String2: “ + str2) System.out.printin(“Same object? “ + (str1 == jstr2)) jstr2 = new String(str1) ;System.out.printin(“String1: “ + str1) ;System.out.printin(“String2: “ + str2) System.out.printin(“Same object? * + (str1 == jstr2)) PSS lela ‏لل‎ 1 ea ;str1.equals(str2)) i {

صفحه 54:
تعیین کلاس یک شیء 8 جهت انجام این عمل به یکی از روشهای زیر عمل می نماییم. ‎Class_name Object_name = ~<d‏ ‎;Qobj.getClass().getName‏ ‏مثال: ‎;)String name = obj.getClass().getName‏ ‎Object_name instanceof Class_name -C‏ مثال: ‎Swordfish’instanceof String //true“‏ ‎;Point pt = new Point(10,10)‏ ‎pt instanceof String //false‏

صفحه 55:
۱۳ he err) EST Ea ay as 1 " مثال: * import java.lang.reflect jimport java.util.Random }class SeeMethods } public static void main(String[] arguments) ;)Random rd = new Random ;()Class className = rd.getClass ;)Method[] methods = className.getMethods }for (int i = 0; i < methods.length; i++) ;System.out.printIn(“Method: “ + methods[i]) 0 { {

صفحه 56:
آرايه ها | ۱ اى اوليه يا يك كلاس باشد. 2 Ber eo ‏ا ا‎ | "" تعريف يك متغير به عنوان آرايه * ایجاد یک شیء آرایه جدید و اختصاص آن به متغیرآرایه 1

صفحه 57:
ا بال ت93 ‎Variable‏ ا ا ‎Pere‏ ‏لیاوا توت ت۸۰ ات7۱ Fe) ;/String difficultWords [Point hits ‏15م أصازار‎ ;Data_type[] array_name-r ‏مثال:‎ " ;String[] difficultWords ;Point[] hits ;int[] donations

صفحه 58:
ایجاد شیء آرایه ۱ ‏ا تان‎ Dl ‏ل‎ AD Ae SO) Ed Data_type array_name = new ;Data_type[Element_number] ‏مثال:‎ * String[] playerNames = new ;String[10] ;int[] temps = new int[99]

صفحه 59:
‎oS‏ 9 مثال ‎Ferrell‏ | ‎Pep) meee dpe ey ete SEM nC be el eee eee‏ مذکور عبارتند از: ا 220 ‎id‏ 1 ا ‎Peer‏ ‏ا ا ۱ الل 0 1 ‎Bye 7 conte‏ ‎;Data_type array_name = {Valuel1, Value2, ... }‏ "ا مثال: ‎String[] chiles = {‘jalapeno’, “anaheim’,‏ ‎;‘serrano’, ‘habanero’, “thai’}‏

صفحه 60:
1 ‏ا‎ ied } class ArrayTest String[] firstNames = { “Dennis”, “Grace”, “Bjarne”, ;‘James’” } ;String[] lastNames = new String[firstNames.length] ( 0۷۵0 ۳۱۵۲۱۱۵۵ لاف ;System.out.printin(firstNames[i]+ ““ + lastNames[i]) pei ;System.out.printin(firstNames[i] + ““ + lastNames[i]) pei ;System.out.printin(firstNames[i] + ““ + lastNames[i]) ‏جد‎ ;System.out.printin(firstNames[i] + ““ + lastNames[i]) i 0

صفحه 61:
public static void main (String } arguments[]) ;)ArrayTest a = new ArrayTest ;)a.printNames Heo ۱ "a.lastNames[0] = “Ritchie ;"a.lastNames[1] = “Hopper "a.lastNames[2] = “Stroustrup ;"a.lastNames[3] = “Gosling ;)a.printNames 1 {

صفحه 62:
ela Clar irre recat) Ln Array ۱ eS SUBS Conse meee O(a rege] See ie ee eOy oe ene eR eee aT LC eV EET eT) ‏توانيم آرايه تعريف نماييم كه هر كدام از عناص رآن يك آرايه باشد.‎ Ce OTe ‏ا ل‎ yt tal ‏عناصر ان را نشان مى دهد.‎ sint[][] coords = new int[12][12] scoords[O][0] = 1; coords [0][1] = 2

صفحه 63:
نکته ۱ صورت عمل می کنیم : }Qvoid testBlock tint x = 10 Start of block//} ;int y = 40 22 End of block// { 1 1

صفحه 64:
شرطى ؟! اا ازاين دستور به دوصورت استفاده مى شود. ‎if(Condition) -)‏ 56361211 ‎if(Condition)-y‏ ‏۳۰-۱۰-24 ‎else‏ ‏۵(

صفحه 65:
مثال if(age > 39) -d System.out.printin(“You call ‘that a haicut?”) if(blindDatalsAttractive == true) -© restaurant = "Benihanas else "restaurant = "Burritohut

صفحه 66:
۱۱ eee el oer ea cael Sry mere eel BEd ORM ee SBP Lr ery PCRS B Or cestode SEO CO EEY Pe SUES Sle ‏ا‎ ‏مثال:‎ * } class EvenSteven } void evenCheck(int val) 55 ‏وا ب۲ا۹۷)ظ۱۲۱ظ۲۵۳۵۰۵۷۲۰۵۲۱‎ Hera: es )۷5۵۱ 2 0( ;System.out.printin(“Steven!”) 7 ۱ } public static void main (String arguments[]) ;0EvenSteven e = new EvenSteven ye.evenCheck(1) ye.evenCheck(2) ye.evenCheck(54) ye.evenCheck(77) ye.evenCheck(1346) 0

صفحه 67:
نکات 9 مثال ‎Bye eles‏ زير عملكردى مانند ©15[© 16 دارد. ‎;test ? trueResult : falseResult‏ ‎BPA DRED] ACL‏ رز بنویسید؟ int ourBestScore = myScore > yourScore ? myScore : yourScore; int ourBestScore; if(myScore > yourScore) outBestScore = myScore; else ;ourBestScore = yourScore

صفحه 68:
ST el se eee) By Ey ‏ل‎ ‎}switch(Variable) ‎:case Valuel ۳۱۰۰۱» ‏فروات یوت‎ j;break :case Value2 ۳۵۰۰۱ ‏فقوت بوت»‎ ۲ ‏کات و۰‎ :case Value3 Aye bayantel ;break :default ۳۱۰۰۱» ‏فروات یوت‎ i 1

صفحه 69:
منال }switch(grade) "case ‘A ;System.out.printin(“Great job — an A!”) sbreak case ‘B ;System.out.printin(“Good job -- a B!”) ;break "case ‘C ;System.out.printin(“Your grade was a C.”) sbreak Melia System.out.printin(“An F — consider ; Cheating”) 1

صفحه 70:
مثال و ‎}switch(oper)‏ ‎Fema ot 1-1-1‏ ‎j;addargs(arg1, arg2)‏ ‎j;break‏ ‏6 ‎;mulargs(argl1, arg2)‏ ‎;break‏ ‎?‘case‏ ‎;subargs(arg1, arg2)‏ ‎j;break‏ ‎?/‘case‏ ‎;divargs(argl1, arg2)‏ ‎j;break‏ ‏1

صفحه 71:
نکته 7 ۳ شد. ا ا ا ا ا ل 000 زيرعمل مى كنيم. ‎Switch(x)‏ } 2 6وج2»: 00 ات ی ال ات ره( ارات ترا “)1712م عناه. تارعؤ 5لا5ر jbreak ;default: System.out.printin(“x is an odd number’) 1 ۱

صفحه 72:
Jl } class NumberReader } String convertNum(int val) } switch (val) “case 0: return “zero “case 1: return ‘one “case 2: return “two “case 3: return “three “case 4: return “four “case 5: return “five ;“ case 6: return “six “case 7: return “seven ;“ case 8: return “eight ;“ case 9: return “nine ““ default: return if {

صفحه 73:
public static void main (String 2۱ریت كوت NumberReader n = new لت تا( String num = n.convertNum(4) + n.convertNum(1) + ;n.convertNum(3) System.out.printin(“413 converts to “ + ;num) {

صفحه 74:
دستور ۴۵۲ [0 for(Initialization; Test; Increment) ۱ i (۱ ۰۲ 1

صفحه 75:
. } class NamesLoop a) ;String[] firstNames = { “Dennis”, “Grace”, “Bjarne”, “James” } ;String[] lastNames = new String[firstNames.length] } Qvoid intNames for (int i = 0; i < firstNames.length; i++) ;System.out.printin(firstNames[i] + ““ + lastNames[i]) 1 } public static void main (String arguments[]) ;0NamesLoop a = new NamesLoop ;0a.printNames 1 4 (5۷6 lastNames[0] = “Ritchie lastNames[1] = “Hopper lastNames[2] 5۲0۵5۲۲۵ lastNames[3] = “Gosling ;0a.printNames ۱ 1

صفحه 76:
لان * دستور ۷۷۱۱۲۱6 به اين صورت است. ‎}while(Condition)‏ ۳۰-۱۰-24 0

صفحه 77:
Jl ( ‏عانط لالاراج عظلامه»© ددقك‎ } public static void main (String arguments[]) jint[] arrayl = { 7, 4, 8,1, 4,1, 4} ;float[] array2 = new float[array1.length] Pete Tumel im lel ‏فا‎ he ee i) (۲0۲ )۱8۲ ۱ < 0: 1 > 2۳۲۵۷1۰۱6۱9: 1++( ;System.out.print(array1[i] + ““) { ‎elite)‏ يت 1 1د 0 ل" ‎;System.out.print(“array2: [ “) ‎۱0] 0۷۲ 2 0 ‎} while ( count < array1.length && array1[count] != 1) jarray2[count] = (float) array1[count] ;System.out.print(array2[count++] + ““) ‎1 ‎RGM SS Aum ie ‏لل‎ ‎0

صفحه 78:
2۰۳۱ iy err) ا ۱ }do ۳۰-۱۰-24 s;while(Condition) {

صفحه 79:
Slo } class DoTest ublic static void main (String arguments[]) jintx =1 }do a round “ + 34 3000“ jwhile (x <= 10) { { {

صفحه 80:
نکته ‎while , do...while ol"‏ در این است که ‎Fw Ree Ae peeaee hil (= eyes)‏ ‎Pa pea eon es pyran) ran ees CRS E I TIES pe‏ شوند. ولی دستور در انتهای حلقه00...۷۷۱۱]|6 ‎gy! ply eS (go Lyx |p bpd‏ 1 ...010 حداقل یک بار اجرا می شوند.

صفحه 81:
Break jgwe * از این دستور برای خروج از حلقه در شرایط خاص استفاده می شود. ‎sint count < 0‏ ‎}while(count < userDatal.length)‏ ‎if(userData[count] == 1)‏ ‎sbreak‏ userData2[count] = 3(float)userDatal[count++] 1 1

صفحه 82:
ت۱۱ Ree pe Eee keep exc Lt peel ee Te B i ‏استفاده می شود.‎ ۳] count = 0 jint count2 = 0 }while(count++ <= userDatal.length) if(userData[count] == 1) ;continue userData2[count2++] = 3(float)userDatal[count] i

صفحه 83:
مثال غأد5ع1اعطق ا وذقكء ( ‎public static void main (String arguments[])‏ } ‎:thisLoop‏ ‎for (int i = 1; i <= 5; i++)‏ ‎}for (int j = 1; j <= 3; j++)‏ ‎;System.out.printin(‘l is “ + i + “, j is “ + j)‏ )4 > (ز + 1)) ]1 ‎;break thisLoop‏ { ‎;System.out.printin(“end of loops’)‏ { {

صفحه 84:
تعریف کلاسها "" به اين خاطر كه اساس برنامه نويسى جاوا بر يايه كلاسها ل ا ل لا ل ‎Sent‏ ‏كرديد. در اين قسمت مى خواهيم جزئيات اين كار را بررسی کنیم. }Class Class name body of the class// t

صفحه 85:
نکته COLD eT ‏ل‎ ae) ‏مى باشند. اكر بخواهيم كلاسى زيركلاس»‎ 0 © ©+ ‏کلاس دیگری باشد. باید از عبارت زیر استفاده کنیم:‎ Class Subclass_name extends }Superclass body of the class// 1 1

صفحه 86:
تعريف متغيرهاى ذمونه ۱ ‎enor ere te Bean Come ey ea‏ ۱ ‎oe et eRe eRe) ROSES) Suc SUE car)‏ ‎SSSI See Sec od‏ * مثال: ۲ وووا ( ‎sint studentNo‏ ‎;String name‏ 1

صفحه 87:
ثوابت ا ا اا ا ل برنامه تغییر نکند. از ثوابت استفاده می کنیم. final Data_type Constant_name = sValue * مثال: ‘final float Pl = 3.141592

صفحه 88:
نكات 00 peeve Peal peor ‏متغیرهای نمونه و متغیرهای محلی را می توان به صورت‎ ‏ل‎ ا 02 خوانايى برنامه مى شود. به علاوه باعث كاهش تغيير در كد ‎PS 0‏ می شود. ;final byte MAX = 100

صفحه 89:
0 | ‏ا‎ COBURG ES Tad ‏كلاس مقدار يكسانى دارند.‎ ;Sstatic Data_type Variable_name sstatic int sum 0 eRe ‏ا‎ a عبارت زير استفاده می کنیم. ‎static final Data_type Constant_name =‏ ‎;Value‏ ;static final int MAX = 10

صفحه 90:
تعریف متدها ۱ ی نام ‎dio‏ ‏" نوع شیء يا نوع داده ای اولیه ای که متد باز می گرداند. "" آركومانهاى متد ‎tes‏ 0 ‎Data_type Method_name(Data_typel‏ ‎targ1, ...)‏ ‎body of the method//‏ 1

صفحه 91:
نکته "" نكته: اكر مقدار بازكشتى يك آرايه باشد.ء تعريف متد به ‎ee eeL od‏ ۱ Data_type[] Method_name(Data_typel1 targl1, ...) body of the method// 1 1

صفحه 92:
Jl ( ‏کود60۱ ۵۱9 ععواء‎ }int[] makeRange(int lower, int upper) jint arr[] = new int[ (upper — lower) + 1] } for (int i = 0; i < arr.length; i++) jt+arr[i] = lower { jreturn arr } public static void main(String arguments[]) Aa eee hg ;)RangeClass theRange = new RangeClass jtheArray = theRange.makeRange(1, 10) ;System.out.print(‘The array: [ “) Pacer Ci) a mek) theArray.length; i++) ;System.out.print(theArray[i] + ““) AGM OUR s delat {

صفحه 93:
کلمه کلیدی 1۳۱۱5 ل ا ا ا ‎deren)‏ ا ا ل 0 ‎eS]‏ ا ل ۳ t = this.x; //The x instance variable for this object this.resetData(this); //Call the resetData method, defined in this class, and pass it the// current object return this; //Return the current object

صفحه 94:
زک ‎wel‏ موارد نيازى به ذكر كلمه كليدى 5 نمی باشد. برای مثال جهت دسترسی به متفیرها و متدهای نمونه نیازی به ذکر کلمه کلیدی 1015 نمی باشد. 7 4 s;resetData(this)

صفحه 95:
مجدوده متغیر ها SNe Spee a eon lS Pen ST EC Ste ‏دیگری در آن قسمت قابل استفاده می باشد. محدوده‎ 0 Mey PP CMe BCT CONT ger s7) | Sere conor] pel eee e] ‏متغيرهاى نمونه و كلاس استفاده كنند.‎ ا ‎Fe) Peng bel eye epee CS Pen gee og‏ تعریف آن به عنوان متفیر محلی می گردد. اگر چنین تعریفی ۱ متغير كلاس در همان كلاس خواهد كشت,. و در نهايت كلاسهاى ا ل ا ا كك

صفحه 96:
۱ }class ScopeTest jint test = 10 ۱۲۱۳ ‏ادن‎ ela ki jint test = 20 ;System.out.printin(“‘test = “ + test) 0 } public static void main(String arguments[]) ;)ScopeTest st = new ScopeTest :)(5۰۳0۲۱۳۱۲۲ ‏اوه‎ { 0

صفحه 97:
ارسال آرگومانها به متدها ۱ ۵ کطعودا | ([901:ة غمت)ممع2مغعمه غمار 0 دغصيم غمار ‎eae A ats aes)‏ غمة) ممع | ‎if (argfi] 1)‏ } فلیاایی ۳۳۳ 0 2 [2۲9]1: غزنامء روز یت وا 1 public static void main(String arguments[]) int arr[] = { 1, 3, 4,5, 1,1, 7 ;0PassByReference test = new PassByReference ‘int numOnes ;System.out.print(“Values of the array: [ “) Um cua i < arr.length; i++) ;System.out.print(arr[i] + ““) 1

صفحه 98:
Gi Lume leila) jnumOnes = test.onetoZero(arr) Senne ee of Ones + numOnes) aan out.print(“New values of the jarray: [ “) } for (int i = 0; i < arr.length; i++) ;System.out.print(arr[i] + ““) ۲ (9 atalaial { * نکته: ارسال اشیاء و آرایه ها به متدها با روش فراخوانی با ارجاع و ارسال انواع داده ای پایه به صورت فراخوانی با مقدار است.

صفحه 99:
متدهاى كلاس ا ا اا ا م ‎SE ACSC CENT END CR EEDICS‏ ا ‎FoR SOD‏ ‎pee nee ae eA] OS eee aie) BIS) Fo TB)‏ 000 و ‎SSE‏ ‎Is 0‏ اا ‎Ber‏ ‎ere De ee ep) rome be Cae eecee Sor Scene py‏ ‎cre SSE) S EC MUY DD‏ ‎;float root = Math.sqrt(453.0)‏ ‎System.out.print(“The larger number‏ ((/ا,)ت21.طغدالز + ” دار

صفحه 100:
A 02005000 =) - 1 ( oY SON ‏ا‎ می کنیم. ‎static Data_type‏ ‎}Method_name(Data_typel Arg1, ...)‏ ‎Body of the method//‏ ۱ و }static int max(int arg1, int arg2) Body of the method// 1

صفحه 101:
ايجاد متدها با يك نام و آركومانهاى متفاوت : را ‎Overloading‏ Se PCS eee eS EE deel aCe Ser) ‏تعداد آركومانها‎ "" ‏نوع داده اى و اشياء متفاوت به عنوان آركومان‎ !" 1 ‏ا‎ et ‏ا‎ ‎000 ee EL ORCI ‏ا‎ لا نکته: توجه داشته باشید که متدهای دارای نام مشابه بايد مقدار باز گشتی یکسان داشته باشند. در غیر این صورت برنامه جاوا كاميايل نخواهد شد.

صفحه 102:
eS jimport en }class MyRect =0 =0 =0 =0 MyRect buildRect(int x1, int y1, int x2, int 12 ;jthis.x1 = x1 ;this.y1 = y1 sthis.x2 = x2 ;this.y2 = y2 Mata gol wal) 1

صفحه 103:
MyRect buildRect(Point topLeft, Point } bottomRight) ;x1 = topLeft.x ;3y1 = topLeft.y ;x2 = bottomRight.x ‏2ل‎ Solaire ‏لا‎ ‏تلك تيه‎ if i lin buildRect(Point topLeft, int w, int h) ;>x1 = topLeft.x ;3y1 = topLeft.y 5x2 = (x1 + w) sy2 = (y1 + h) Maida dale 1

صفحه 104:
(0(۷۵۱ ۲ ;System.out.print(“MyRect: <” + x1 + “, “+ yl) ;System.out.printin(‘, “+ x2 + “, “+ y2 + “>”) { } public static void main(String arguments[]) ;0MyRect rect = new MyRect System.out.printin(“Calling buildRect with ;coordinates 25,25, 50,50:”) srect.buildRect(25, 25, 50, 50) ;)rect.printRect (****)System.out.printin System.out.printin(“Calling buildRect with ;points (10,10), (20,20):”) rect.buildRect(new Point(10,10), new ;Point(20,20)) (>

صفحه 105:
لیاف از ریت ز/ ات ۳ System.out.print(“Calling buildRect swith 1 point (10,10),”) System.out.printin(“ width (50) and sheight (50):”) rect.buildRect(new Point(10,10), 50, ;50) ;Qrect.printRect لیاف اریز ات ۲ { if

صفحه 106:
و ل ةف * متد سازنده متدی است. که در زمان ایجاد یک. شیء از کلاس فراخوانی می شود. بر خلاف دیگر متدهاء متد 0۵۷۷ سازنده را نمی توان مستقیماً فراخوانی کرد. متد سازنده هنگام استفاده از ا 00 * نکته: اگر متد سازنده در یک کلاس وجود نداشته باشد. باید متغيرهاى نمونه را خودتان مقدار دهى كنيد. انجام اين عمل با فراخوانى متدهاى ديكر قابل انجام است.

صفحه 107:
نكته 9 مثال * نکته: متد سازنده دارای دو تفاوت عمده با متدهای دیگر می ل ل ل لق ۱ دیگر را خودمان تعیین می کنیم. ‎ey BEES ABI CMIbC OE Se] OTE SCo‏ * مثال: ‎class Person‏ } ‎;String name‏ تا ‎Person(String n, int a)‏ } ‎;name =n‏

صفحه 108:
حا i } Qvoid printPerson System.out.print(“Hi, my name is * + ;name) Sr ‏ای‎ lam “ + age + “ years } public static void main (String arguments[]) ;Person p ;p = new Person(“Luke’, 50) ;0p-printPerson Hee yield Salida)

صفحه 109:
)35 رهز وت ات۲۰۳ وروت روز ۷0۱۰۳ لم ا ل ‎Hem‏ { 0

صفحه 110:
فراخوانی یک مند سازنده توسط متد سازنده دیگر و | ار ۲ متال: ‎}class myCircle‏ 5 30: ,لا ,كا ضار ‎myCirlce(int xPoint, int yPoint, int rediusLength)‏ = xPoint ‏لل‎ ‎ree radius = radiusLength i eater ieee 9} ;jthis(xPoint, yPoint, 1) 1 i

صفحه 111:
مثال jimport java.awt.Point } class MyRect2 ‘int x1 = 0 jint yl = 0 nt x2 =0 :۱۱ ۷2 < 0 } MyRect2(int x1, int y1, int x2, int y2) sthis.x1 = x1 sthis.y1l = y1 sthis.x2 = x2 Ad) en 2 1

صفحه 112:
}MyRect2(Point topLeft, Point bottomRight) ;x1 = topLeft.x yl = topLeft.y 3x2 = bottomRight.x ۷2 << ۷ } MyRect2(Point topLeft, int w, int h) x1 = topLeft.x sy1 = topLeft.y x2 = (x1 + w) sy2 = (yl + h) if

صفحه 113:
بت یایاوز ۱۲0۵۰ abana ‏ا‎ >" + 01 ۲ oF 022 ۱ الل ل ‎“SP‏ ublic static void main(String arguments[]) ;MyRect2 rect ودرا ایا ۳ ند ‎;coordinates 25,25 5 chat‏ jrect = new ‏ی‎ 25, 50,50) ets i(**“)System.out.printin

صفحه 114:
System.out.printin(“Calling MyRect2 with points 3(10,10), (20,20):”) rect= new MyRect2(new Point(10,10), new ;Point(20,20)) ;Orect.printRect A ele ule lel ata a) System.out.print(“Calling MyRect2 with 1 point 3(10,10)”) System.out.printin(* width (50) and height :)50(:( jrect = new MyRect2(new Point(10,10), 50, 50) ;Orect.printRect i(***“)System.out.printin if if

صفحه 115:
Overriding Methods * اگر دو متد دارای نام. مقدار باز گشتی و آر گومانهای یکسان باشند و کی از متدها در کلاس والد و دیگری در کلاس فرزند باشد. متدی که در کلاس * مثال: ‎Super Class//‏ درل ماعط ‎pel‏ ‎intx =0‏ ‎jinty =1‏ ‎(void printMe‏ } ‎;System.out.printin("x is "+x +", yis" + y)‏ دوهی ریا ییا ‎Weim im eels‏ ‎+"class‏ ‎i(()this.getClass().getName‏ 1

صفحه 116:
Sub Class// class PrintSubClass extends PrintClass sint z= 3 public static void main(String } arguments[]) PrintSubClass obj = new 00۳۲۱۳۲5 ty ;Qobj.printMe 0 i

صفحه 117:
Overriding Construcror jimport java.awt.Point } class NamedPoint extends Point ;String name } NamedPoint(int x, int y, String name) ;super(x,y) ;this.name = name i 0 * مثال } public static void main (String[] arguments) ;NamedPoint np = new NamedPoint(5, 5, "SmallPoint") ;System.out.printin("x is " + np.x) ;System.out.printin("y is " + np.y) ;System.out.printin("Name is " + np.name) i 0 1 i

صفحه 118:
متد خاتمه دهنده: ۱6۲0۵ ۴۳۱۱۱۵۱۱26۲ ا ا ا ا ا ا ‎Se NL ed bee Md od‏ Protected void finalize() throws } Throwable ;(Super.finalize 1

صفحه 119:
Applet: cu Spee Snore Me eat eligy اجرا مى شوند. تفاوت ايلتها با برنامه هاى كاربردى ‎GB dol py alg gle 6 0925 29 Igle‏ کاربردی با درج نام برنامه در خط فرمان اجرا می Pel EST See ene et Ree Bere)

صفحه 120:
محدودیتهای ابلتها ۱ آن بنویسند. * اپلتها نمی توانند با هیچ سایتی غیر از سایتی که از روی آن ‎pcyem eg Pee ee nea Ca‏ ۱۳۹[ eee Bree errs DIC Cee oe eee) aA US |yol 35 nS * اپلتها نمی توانند هیچ برنامه ای را در سیستم سرویس دهنده اجرا کنند.

صفحه 121:
فحنت "" براى ايجاد يك ايلت به صورت زير عمل مى كنيم. ‎public class Applet_Name extends‏ اك لت 2۷2[ Applet Core Comes Here// i | eeier tefl

صفحه 122:
5-0007 ۱۱ "متد 5131۲1 2 destroy..." paint..."

صفحه 123:
متد 1011 * اين متد در زمان فراخوانی اپلت اجرا می شود. این متد اعمالی نظیر ایجاد اشیاء مورد نیاز اپلت. تنظیمات اولیه. ا ا ۱۳ دهد. }Qpublic void init Core here// 1 1

صفحه 124:
متد 561۲۱ "" يس از متد 11111 اين متد فراخوانى مى شود. اين متد ‎Con Care eC)‏ ا 1 كل است. }Qpublic void start Core here// 1

صفحه 125:
متد م 510 "" اين متد اجراى ايلت را متوقف مى كند }Qpublic void stop ® Core here// 0

صفحه 126:
Destroy rn Pees) RNG?) rea tLe ane ‏ا‎ De eect pe aey eae re ep ren ace ‏ل لت للك‎ 0 ‏ل‎ a =1- Lo igen ‏كردن اين متد وجود ندارد.‎ override }Qpublic void destroy Core here// 1

صفحه 127:
متد ۳۵۱۱۱۲ "" اين متد نحوهى نمايش ايلت را كنترل مى كند. به كمك اين متد مى توان متن. خطوط, رنكّه يشت زمينه و تصاوير ‎Bel D)‏ ا ا ل 0 مى شود. هر كاه ايلت نيازمند به روز رسانى باشدء اين متد مجددا فراخوانى مى شود. }Qpublic void paint Core here// 1

صفحه 128:
مثال ‎JAVA FILE‏ ‎mport java.awt.Graphics‏ ‎mport java.awt.Font‏ ‎jimport java.awt.Color‏ ‎public class Palindrome extends java.applet.Applet‏ ‎i‏ ‎Font f = new Font("TimesRoman", Font.BOLD,‏ )36; ‎public void paint(Graphics screen)‏ } ‎jscreen.setFont(f)‏ ‎;screen.setColor(Color.red)‏ screen.drawString("Go hang a salami, I'm a jlasagna hog.", 5, 40) if {

صفحه 129:
‎|B‏ لكك ‎<HTML> ‎<HEAD> ‎<TITLE>The Palindrome Page</TITLE> <HEAD/> ‎<BODY> ‎:P>My favorite meat-related palindrome is> <BR> ‎APPLET CODE="Palindrome.class" WIDTH=600> <HEIGHT=100 ‎!A secret if your browser does not support Java <APPLET/> ‎<BODY/> ‎<HTML/>

صفحه 130:
APPLET .S eR R SCI 11 Meh 0 5 ee ee Oa EES EES woe ES) oe ney Ren) tr Rey er W nee pean ‏خصيصه لتر ا‎ !" ا ل ا ل ل 6 9 صفحه وب. اين خصيصه مى تواند يكى از مقادير زير باشد.

صفحه 131:
2 یص ۸۱۱6۱۱ زرد RIGHT TEXTTOP ‏عاطصط ا لادظقم‎ MIDDLE BASELINE BOTTOM ABSBOTTOM

صفحه 132:
نکته ‎<BR CLEAR = LEFT>‏ ‎SIS Bp Ree Renn Catone tl‏ <BR CLEAR = RIGHT> ‏اولین فضای خالی سمت راست را در نظر می گیرد.‎ ۴ <BR CLEAR = ALL> ‏اولين فضاى خالى را در نظر مى كيرد.‎ ""

صفحه 133:
۰ 4 ol ‏خصايص‎ " تعیین میزان فاصله ی متن اطراف اپلت از آن. خصیصه ‎HSPACE‏ كنترل فضاى افقى(سمت حب و راست) و ايلت را انجام مى دهد یل( ‎APPLET CODE = “ShowSmiley.class’>‏ ‎WIDTH = 45 HEIGHT = 42 ALIGN =‏ ‎<LEFT VSPACE = 50 HSPACE = 10‏ ‎Required Java‏ ‎<APPLET/>‏

صفحه 134:
خصایص 600۴ و 609۵۴8۵5۴ 0 CRN Lier Seb eater ial PHM Cae ACYL 0) >) ir eeeeans REESPORE TE yly5 puso CODEBASE twas 9 355 (oo est Ly كرفتن فايل كلاس يايه را تعيين مى نمايد. "" نكته: در صورتى كه از خصيصه 8/8.56 1 605 به همراه خصیصه ]60 استفاده نشود. مسیر قرار گرفتن ‎Pret ge pas pc pene are oe on Lege CALC)‏ خواهد بود که اپلت درون آن قرار دارد

صفحه 135:
5 APPLET CODE = “Bix.class” HEIGHT => <“40” WIDTH = “400’> </APPLET APPLET CODE = “Bix.class” CODEBASE> = “Toshire” HEIGHT = “40” WIDTH = <“400’> </APPLET APPLET CODE = “Bix.class” CODEBASE> “http://www. Toshire.com/javaclasses” HEIGHT = “40” WIDTH = “400’> <</APPLET

صفحه 136:
Object ‏تىق‎ Peon ‏لل‎ | CON Mca ICU ‏ا ا‎ ae داشت. OBJECT CLASSID = “java.bix.class’> CODEBASE = “javaclasses”’ HEIGHT <’= “40” WIDTH = “400 <OBJECT/>

صفحه 137:
كلاس ‎Graphics‏ ‏1 ‏ی ]2۷3.3۷4[ قرار دارد. ۳ ;import java.awt.Graphics ;import java.awt.Polygon } public class Map extends java.applet.Applet } public void paint(Graphics screen) ;screen.drawString("Florida", 185, 75) 0 1

صفحه 138:
ترسیم اشکال هندسی

صفحه 139:
ی ‎yee nC‏ ار 2 0 ‏ل‎ PG emerge) Beye) ‏(2لإ, 2“)ترسيم مى كند.‎ ;drawLine(x1,y1,x2,y2)

صفحه 140:
جهار ضلعى امم ا ا ا 2 كنيم. به كمك اين متد مى توان دو نوع مستطيل ترسيم نمود. ‎cee eT my ona‏ ‎;drawRect(x, y, width, height)‏ ۲) مستطیل با گوشه های گرد ‎drawRoundRect(x, y, width, height,‏ ‎;roundWidth, RoundHeight)‏ 1 IN Sere ES BCT Oe CMB NT Ber ros) Bye MES ORO UCL ‏ا‎ 4

صفحه 141:
۱ ۱ ۱ ‏را‎ wean belies ‏فضای داخل آن از متد 010 3۱۱۳6۵۱۷() استفاده می شود.‎ ;int x[] = {10, 20, 30, 40, 50} sint y[] = {15, 25, 35, 45, 55} ;int points = x.Length ;Polygon poly = new Polygon(x, y, points) RCras RO ORURe IT TsO CMUSy SCNT pepe 7 ee ne A] ger <i ‏,*)]2010۳01۳0ز استفاده می شود.‎ ۷( * نکته: برای پر کردن فضای داخل چند ضلعی از متد 6۱۱۱۵۵۱۷901( ا 0

صفحه 142:
بیضی و دایره ا ا الا براى ير كردن فضاى داخل آن از متد 1/1 111!0() استفاده می شود. ;drawOval(x, y, width, height) "" نكته: مقدار 10111لالا و :11©10131! براى ترسيم دايره برابر است.

صفحه 143:
کمان 7۳ LE WUT gotta erent bis 2 ‏لا‎ eco rel IN CSNY CRUE yy ge drawArcs(x, y, width, height, ;start_angle, traveled_degree)

صفحه 144:
Jl ;import java.awt.Graphics ;import java.awt.Polygon } public class Map extends java.applet.Applet } public void paint(Graphics screen) ;screen.drawString("Florida", 185, 75) ;screen.drawLine(185,80,222,80) ;screen.drawRect(2, 2, 345, 345) ;screen.drawRoundRect(182,61,43,24,10,8) int x[] = { 10, 234, 253, 261, 344, 336, ,295, 259, 205, 211 66, 090, ©020, رت ۶۹۱۳۹۱2 19 ie = { 12, 15, 25, 71, 209, 278, 310, 188, 171, 174 ©006, ©6, رت تس رات ۱ ۱۶

صفحه 145:
:۱] pts = x.length ;Polygon poly = new Polygon(x, y, pts) ;screen.drawPolygon(poly) sscreen. fillOval(235,140,15,15) sscreen. fillOval(225,130,15,15) sscreen. fillOval(245,130,15,15) for (int ax = 50; ax < 150; ax += 10) for (int ay = 120; ay < 320; ay += 10) screen.drawArc(ax, ay, 10, 10, 0, - ;180) if 1

صفحه 146:
ols eee tows ON CNT Be es Bese Reece la mC MT peer cial Bye Mery na (11X14 ela) NAUK) copyArea(x, y, width, height, ;horizontal_distance, vertical_distance) ;screen.CopyArea(0, 0, 100, 100, 50, 25) ;clearRect(x, y, width, height) "" نكته: براى ياك كردن كل ينجرهى ايلت از متدهاى +31156©1 616( به ۰ب ال ا ات ‎screen.clearRect(0, 0, size().width,‏ ‎;size(). height)‏

صفحه 147:
| Ferd Carta ney Mancoar tie) eyo ye ‏ل‎ SAT Bell ‏ارسال كرد. اين سه آركومان عبارتند از:‎ 010 ‏نام فونت‎ "" (Italic. Bold. Plain)cs,3 we ® ‏سايز فونت‎ "" ‏مثال:‎ "" Font f = new Font(“Dialog’”, Font.BOLD + ;Font.ITALIC, 24) PSN RO T-1 1 ao) tere oa) ‏ا ا‎ pe i ‏شود.‎ ‎jscreen. setFont(f) ‏ا‎ Leo LU EL da Lil: iets Ieee CO ITS Se eR Be Slag ‏می شود.‎

صفحه 148:
مثال jimport java.awt.Font mport java.awt.Graphics 1۱۳۱۳۵۲ [3۷3.3۷1۳۵۳۵5 } public class SoLong extends java.applet.Applet } public void paint(Graphics screen) ;Font f = new Font("Courier", Font.BOLD, 18) ;FontMetrics fm = getFontMetrics(f) ;screen.setFont(f) Sting s = "So long, and thanks for all the ‏ترفن‎ nt x = (size().width - fm.stringWidth(s)) / 2 jint y = size().height / 2 ;screen.drawString(s, x, y) { ۹

صفحه 149:
رنک ۱۳9 ‏رز‎ Lote) fo) aerate cae eer Fal PSSM CH SEES oS e Rees ule) ‏را تعیین کرد.‎

صفحه 150:
Color «4 YER Oe) (o] eae RO enV eee SRE Sp Rye HT belies ‏كنيم: يا از يكى از رنكهاى استاندارد كلاس 60101 استفاده‎ ‏ل ل ا ا‎ Color c1 = new Color(0.807F, 1F, ® ;0F) Color c2 = new Color(255, 204, ® 3102)

صفحه 151:
رنگهای استاندارد 9 ‎;screen.setColor(Color.pink)‏ ;Color brush = new Color(255, 204, 102) ;screen.setColor(brush) * نکته: برای تعیین رنگ پشت زمینه از متد 160۲01۱۵ 5683) استفاده می کنیم. ۱۳ o (SetColor 1: ssl (setForeground 4. :4s5 ™ ee eae de Eye rte eR Rane BOP evel ree ore: AU Cee eee eer ane CAEL iad ‏کلاس 2۲3۳1۱65 يا متدهای 615561609۲0۷۵ و(‎ 16-۲ 0 ‏ل‎

صفحه 152:
]زو و * برای ایجاد شیء 62۲۵۵۱۱6520 به صورت زیر عمل می کنیم. public void paint(Graphics screen) 1 1 Graphics2D screen2D = ;(Graphics2D)screen 0

صفحه 153:
الكوهاى ترسيم * الگوهای ترسیم چگونگی رنگ آمیزی و ترسیم یک شیء را كنترل مى كند. اكر از 21/2210[ استفاده مى كنيد مى توانید رنگهای ساده سایه روشن. یا دارای بافت را به کار ببرید. الگوی ترسیم با استفاده از متد 6۳۵۲۴ 5() در ۱

صفحه 154:
الگوی ترسیم 6۲۵1۱6 او ۳ ترسیم 0۲ دو رنگ متفاوت برای دو ۱ تدریجی یک رنگ به رنگ دیگر پر می کند. اين الگو به دو صورت 860۷6116 و 6۷11 قابل استفاده است.

صفحه 155:
cul ‏ل‎ ‎GradientPaint(x1, y1, color1, x2, y2, scolor2, true) Romney es eee A eee ee eee Canes ree he Crea ‏در صورتی که از این آر گومان استفاده شود الگوی ترسیم به‎ ‏صورت 16اعلا© و در غير اين صورت ©11©>لا©2 خواهد بود.‎ ۶۳7۳ ۳۱ ‏ا ل ا ل‎ 00 ‏ا ا‎ GradientPaint pat = new GradientPaint(Of, Of, Color.white, ;100f, 45f,Color.blue) "Gcraan2N catPaint( nat)

صفحه 156:
نكات ا ل ا ا | داشتندء ولى در 231/3210[ مى توان عرض خطوط را نيز تعيين كرد. براى اين منظور از متد ©>5©151101() و كلاس ا ل ‎BY‏ 02 ‏رز رل‎ cra ‏ا‎ "ا يك مقدار 50131 به عنوان يهناى خط با مقدار ييش فرض يك Pe Speer Seger ‏ا‎ "" يك مقدار 1191 براى تعيين حالت اتصال دو خط به يكديكر

صفحه 157:
* عبارات زیر یک شی 88516517016 ایجاد می کند و آن ‎ENC) a eee)‏ 0 BasicStroke pen = BasicStroke(2.0f, ,BasicStroke.CAP_BUTT ;(BasicStroke.JOINROUND ;Screen2D.setStroke(pen)

صفحه 158:
re 2 sore Ane ae Oe RCN] EO pte ane 8] Ghd QeUS gpl 2n5 Yo Sy90 Line2D.Float Bw ‏ا‎ era vl eel res Line2D.Float In = new ;Line2D.Float(60F, 5F, 13F, 28F) * نکته: اگر بعد از آر گومانها از کاراکتر ۴ استفاده نشود. كاميايلر جاوا آنها را به عنوان 1138 در نظر مى كيرد.

صفحه 159:
جهار ضلعى Rectangle2D.Float ‏ایجاد مستطیل با استفاده از کلاسهای‎ * roy mee Re repre C14 ‏م ل‎ +) (ae or eon on er SIRS et CES 9 float «lii.5,1 Rectangle2D.Float double iil,5,1 Rectangle2D.Double ‏پذیرد.‎ ۱۳۱ ‏رات‎ | (74 Pl al Cod) aie Ca ‏و هر یدرز‎ Rectangle2D.Float rc = new ;Rectangle2D.Float(10F, 13F, 40F, 20F)

صفحه 160:
بیضی و دایره ا از کلاس تا ‎WIS‏ ‏اا و ۱ Wa Ellipse2D.Float ee = new ;Ellipse2D.Float(113, 25, 22, 40)

صفحه 161:
AIC : ‏كمان‎ 139 (go ooliewl Arc2D.Float oS jl obs stu! ol. ‏این کلاس دارای هفت آرگومان به صورت زیر می باشد.‎ Arc2D.Float Object_name = new Arc2D.Float(x, y, width, height, Start_degree, Traveled_degree, ;Closing_method) ‏و‎ ‎1 Va pie pce eres Arc2D.Float arc = new Arc2D.Float(27, 322, 30, 33, 90, Arc2D.PIE)

صفحه 162:
جند ضلعى 300 ‏ل ل ا‎ Selene ie 0 ‏ل‎ ‎;0GeneralPath polly = new GeneralPath PCC DE ‏ا ل ل‎ tes Ie le ;Polly.moveTo(5F, OF) ‏سيس با استفاده از متد ©1 ©1117() خطوط مورد نظر را ايجاد مى كنيم.‎ !" ;polly.lineTo(205F, OF) ;polly.lineTo(205F, 90F) PORE ‏ل‎ on Ee ee ;Qpolly.closePath

صفحه 163:
۹1 9 ols Oe eine e Eda lil: eo ieee Cent veo eee ent ee Brewers ean Cer Ld ;*import java.awt ;*import java.awt.geom } public class Map2D extends java.applet.Applet } public void paint(Graphics screen) ;Graphics2D screen2D = (Graphics2D)screen ;setBackground(Color.blue) Draw waves // ;screen2D.setColor(Color.white) ,BasicStroke pen = new BasicStroke(2F BasicStroke.CAP_BUTT, ;(BasicStroke.JOIN ROUND

صفحه 164:
;screen2D.setStroke(pen) for (int ax = 10; ax < 340; ax += 10) } for (int ay = 30; ay < 340; ay += 10) Arc2D.Float wave = new Arc2D.Float(ax, ay, 10, 10, 0, 180, ;Arc2D.OPEN) ;screen2D.draw(wave) if Draw Florida // GradientPaint gp = new GradientPaint(OF,OF,Color.green, 50F, 50F, ;Color.orange,true) ;screen2D.setPaint(gp) ;)GeneralPath fl = new GeneralPath

صفحه 165:
fl.moveTo(10F,12F); fl.lineTo(234F,15F); fl.lineTo(253F,25F); fl.lineTo(261F,71F); fl.lineTo(344F,209F); fl.lineTo(336F,278F); fl.lineTo(295F,310F); fl.lineTo(259F,274F); fl.lineTo(205F,188F); fl.lineTo(211F,171F); fl.lineTo(195F,174F); fl.lineTo(191F,118F); fl.lineTo(120F,56F); fl.lineTo(94F,68F); fl.lineTo(81F,49F); fl.lineTo(12F,37F); fl.closePath(); screen2D. fill(fl);

صفحه 166:
ار وله ‎jscreen2D.setColor(Color.black)‏ ‎;)BasicStroke pen2 = new BasicStroke‏ ‎jscreen2D.setStroke(pen2)‏ ‎Ellipse2D.Float e1 = new‏ ‎jEllipse2D.Float(235,140,15,15)‏ ‎Ellipse2D.Float e2 = new‏ ‎;Ellipse2D.Float(225,130,15,15)‏ ‎Ellipse2D.Float e3 = new‏ ‎jEllipse2D.Float(245,130,15,15)‏ ‎jscreen2D.fill(e1)‏ jscreen2D. fill(e2) ;screen2D.fill(e3) i if

صفحه 167:
لا ا ا 00 است ۱ reed ved ad * ۲. ارسال دستور نمایش ترسیمات به سیستم نمایش برنامه

صفحه 168:
کنترل تصاویر متحرک به کمک ۲۵۵0 ]ها ۳ ‎emeese‏ و ۱ وظیفه(۲3851) را درون برنامه اجرا کرد. با قرار دادن کد مربوط به بار گذاری انیمیشن درون ۲0۲6301 بقیه ی قسمتهای برنامه ‎ne ee wel See reeI Co) Re Be ww‏ 0 ديكرى را انجام دهند. * برای نوشتن اپلتها با استفاده از 0۲6۵0 ]ها باید اعمال زیر را انجام دهیم.

صفحه 169:
ا ال 2 و راز ۱ 1۳8۵۱6۴۸۵6۲ ۳۷۳۳۵۳۵۱6 ‏افزودن عبارت‎ * ۲۳۱۲۵۵ ‏ایجاد یک شیء‎ * ۱71۳۳۱ ۱ ‏ات0‎ ‎2 Threadss-s nulls ‏او‎ ‏و‎ ‎2 pe Reeser cmon ep rarer CMO CULL CORE] Mal ‏شود.‎ ‎public class AppletName extends }java.applet.Applet implements Runnable Applet Core// 1

صفحه 170:
نكات * کلاس ۲۱۲۵۵0 درون ‎es‏ 33.1309 قرار دارد. به همين دليل نيازى به استفاده از :111019011 براى باركذارى آن نداريم. 0 ‏الي ا‎ 2 rial ‏اینجا واسط ل توسط کلاسی که به عنوان ۲۱۲680 عمل‎ ۱ ‏ا‎ ار 2 وزیا 021116 ‎;Thread runner‏ ‎Seem Ne re eed LJ‏ ا الي ا ‎CRP SRE EY ere‏ ‎Pe Pear pew Rolie hee eel Fee ric res eral peed‏ ‎PCN STO oT mM -1-(0|‏

صفحه 171:
2 لتم للا ۷۵۱۸ 0۷۵۵۱۱6( [ رای وت رارا )۱۱۱۱ ‎jrunner = new Thread(this)‏ 1( ‎d‏ ‎t‏ ‏* همان طور که ملاحظه می کنید اپلت را به شیء ۲۷1۲۱۲۹6۲ لینک کردیم. این عمل از طریق کلمه کلیدی 11115 انجام می شود. حال باید متد ۲۱ را به ايلت اضافه كنيم. ‎}Qpublic void run‏ ‎What your applet actually does comes here//‏ 4

صفحه 172:
منال و 0 فريمهاى مختلف استفاده مى شود. بعد از نوشتن كدهاى لازم درون متد ‎(STOP seo lawl wb TUN‏ ل 0ت لا 6 نماییم. برای متوقف کردن ۲۱۲630 آن را برابر ا[۲۱ قرار می دهیم. ‎import java.awt.Graphics‏ ‎mport java.awt.Font‏ ‎jimport java.util.Date‏ ‎public class DigitalClock extends‏ } java.applet.Applet implements Runnable ‏تایه زر زرا‎ oe ee ‏للاعم‎ ;Font("TimesRoman",Font.BOLD,24) ;Date theDate jThread runner

صفحه 173:
۱0 ۰۱ (1۴ )۲۷۸۱۳۵۲ << ‏(لانام‎ ‎jrunner = new Thread(this) ;Qrunner.start { { } Qpublic void stop (لانم 2! معمصصسه) عأر ‎jrunner = null‏ 1 } Qpublic void run ;)Thread thisThread = Thread.currentThread } while (runner == thisThread) ;Qrepaint (۳۷

صفحه 174:
;Thread.sleep(1000) {} catch (InterruptedException e) { 1 { } public void paint(Graphics screen) ;()theDate = new Date ;screen.setFont(theFont) screen.drawString("" + ;jtheDate.toString(), 10, 50) { 0

صفحه 175:
Jl ;import java.awt.Graphics Mil Sola ۲ jimport java.util.Calendar public class DigitalClock12 extends java.applet.Applet implements ( ۱ Font theFont = new ‘Font("TimesRoman",Font.BOLD,24) ‘Calendar theDate ‘Thread runner } Qpublic void start

صفحه 176:
} if (runner == null) ‘runner = new Thread(this) ‏فقوت وتا رای و0‎ { 1 } Qpublic void stop (اانام <! ۲۷۸۲۴۵۲) ۱۲ ( االالیا ات رارا اوه 1 {

صفحه 177:
} Qpublic void run Thread thisThread = ;)Thread.currentThread } while (runner == thisThread) ;)repaint ۱۷ ;Thread.sleep(1000) {} catch (InterruptedException e) { 1 1

صفحه 178:
} public void paint(Graphics screen) ;)theDate = Calendar.getiInstance sscreen.setFont(theFont) screen.drawString("" + ;theDate.getTime(), 10, 50) { {

صفحه 179:
نكات * هنگامی که متد ا ا ا 00 را فراخوانى مى كند. متد ©1]001316ا() محتويات صفحه نمايش را ياك مى ا ا ا اا ا ال صدا می زند. به همین دلیل نمایش انیمیشن دارای پرش خواهد بود. "" براى جلو كيرى در يرش تصاوير هنكام نمايش انيميشن دو راه وجود دارد. " 01/6110 كردزمتد 004201316() به صورتىكه صفحه نمايشررا ياكفكندياتنها قسمتهايوراا كه تغيير كردهلستياكفمايد. حاد يت ل 320000 دو كانه (©1111 164لا ©001011) توجه دلشته باشيد كه روِشاول ‎a eee aed‏ للا 0

صفحه 180:
* متد 0006() یک اپلت در حالت پیش فرض به صورت زیر است: } public void update (Graphics screen) ;screen.setColor(getBackground()) screen.fillRect(0, 0, size().width, ;size.height()) ;screen.setColor(getForegrund()) ;paint(screen) 1 1

صفحه 181:
مثال jimport java.awt.Graphics mport java.awt.Color jimport java.awt.Font public class ColorSwirl extends java.applet.Applet }implements Runnable re f = new Font("TimesRoman", Font.BOLD, ;Color colors[] = new Color[50] قت ایا هار۱ ( ‏نهنا عءناطيام()‎ lad }if (runner == null) jrunner = new Thread(this) ;Qrunner.start 1 i

صفحه 182:
} Qpublic void stop srunner = null if sell Comore Mati initialize the color array // ‘float c = 0 } for (int i = 0; i < colors.length; i++) colors[i] = Color. 0 aa ;(float)1.0, (float) 7c += .02 1 cycle through the colors // sinti=0

صفحه 183:
;)Thread thisThread = Thread.currentThread } while (runner == thisThread) ;setForeground(colors[i]) تلیالتر و۲0 + ۷ ;Thread.sleep(200) {} catch (InterruptedException e) { jif (i == colors.length ) i = 0 i } public void paint(Graphics screen) jscreen.setFont(f) ‎to the Cookie!", 15,‏ عله 0 ار یی 09915 یی 350 ‎{ ‎0

صفحه 184:
TB) re re) Bry POSE CMON OL 34 ‏ا‎ ‎Pep eekel iy Pececmerrr rece Lit) ‏ل ا ال‎ Pee DE ea eT CoCo URL u = new URL(‘http://www.perfect.com/java21pre/ima 196/000191۲( 2 ‏عي ل‎ el se al Per S ‏حلي ل ل‎ ‏شود.‎ ‎9 ‏از‎ ‎۱7۳ ‏وت رات ۱۱0 ۱ ۱ ۱ و( 0زا‎ ‏دوم مسیر عکس پا ف ایلت صویری‎

صفحه 185:
oS ‏روش اول ساده تر و روش دوم انعطاف پذیرتر است.‎ : * |۱۲ ‏رز را‎ 1 Sener SSO eS EY Pe nee ares oN eco morlm re [-15 ‏ا ا‎ PP eRe Seon OW Cr ‏ا ا‎ CCD) ‏ا‎ ‎۱ ‏ل لل‎ Eeeo al 0 ey AT ee) Image img = getiImage(getDocumentBase(), ;book.gif) Image img = getimage(getDocumentBase(), ;image/book.gif)

صفحه 186:
oT el abe Acree ‏ا ل ا‎ Bea Bye PPM ‏حي ل‎ ‏ا ل ل با چهار‎ 0 be ‏ار‎ " شى 1123606 تس يا لا * کلمه کلیدی ۲15 }public void paint (Grapics screen ) ;screen.drawlmage(img, 10, 10, this) t

صفحه 187:
* برای نمایش تصاویربا اندازه دلخواه متد 6 96۲1۳۳050 ‎eRe ee‏ 0 * شی ۱۳۸5۵96 ‎aa‏ > لا لا width ® height ® 11115 ‏كلمه كليدى‎ ""

صفحه 188:
Jl jimport java.awt.Graphics mport java.awt.Image } public class Fillmore extends java.applet.Applet ;Image whig غتما 0۵۱6( ( whig = getIimage(getCodeBase(), ;"images/fillmore.jpg") } public void paint(Graphics screen) jint iWidth = whig.getWidth(this) jint iHeight = whig.getHeight(this) sint xPos = 10 9990

صفحه 189:
screen.drawlmage(whig, xPos, 10, ;iWidth / 4, iHeight / 4, this) dODO% // ;xPos += (iWidth / 4) + 10 screen.drawlmage(whig, xPos, :10, ‏(واطغ‎ { 1

صفحه 190:
ایجاد انیمیشن با استفاده از تصاویر ‎bl‏ ايجاد انيميشن با استفاده از تصاوير نظير ايجاد انيميشن با ‎ec On ened ere SEE SSS BIE Creed]‏ که وجود دارد. نیاز به استفاده از فضایی جهت نگهداری تصاویر می باشد. ‎Per ‏ا ل ا ا‎ Le] ad 0 ‏ا‎

صفحه 191:
۱۱6۱0 ‏ایحاد انیمیشن‎ ۱ ۳ TESTOR Cet http://www.perfect.com/java21pre ‏قدم دوم: نمايش يكى از تصاوير‎ !" ‏ا ل ا ل يت‎ ser ode Mere nteial 0 2 ‏الل ا‎ Pee eit oe Sie hoe) ;lmage nekoPics[] = new Image[9] ;lmage currentimg PD Rene Al eeg Ce ete Fs OB Ree Owe pee Cen] ny ADE Filed ۱ ‏ل‎ BP Or REET ed

صفحه 192:
111 nt y = 50 Pe SPP OL.) id Her Seer) ROLL Come Cra } Qpublic void init String nekoSrc[] = { "right1.gif", ۳۱2۰1, 6۵۵.0۲ "yawn.gif", "scratch1.gi scratch2.gif","sleep1.gif", "sleep2.gif"," 7{""awake.gif } for (int i=0; i < nekoPics.length; i++) nekoPics[i] = getImage(getCodeBase(), ;"images/" + nekoSrc[i]) 1 1 1 i

صفحه 193:
ee tee ROR ont er oats LC) ke ie PHS (go vrliiw! Qrun ‏ا‎ crane || ‏رسد. براى انجام‎ 0 ‏اك ل‎ See ia "ا از سمت جب صفحه نمايش شروع به دويدن مى كند. 0 0 eco] ge] Pe CYT Dh SVAN Ye rey) TEBE tha * می خوابد. * از خواب بیدار شده و به سمت راست صفحه نمایش دویده و از آنجا خارج مى شود.

صفحه 194:
و انجام اعمال تكرار يذير باشند. اين متدها عبار تند از: ل ا ل 1 ا به Price terres ye eon reine peees } void Peres th ieee ‏الكارت‎ Method Core Comes Here// 1 ۱ pee nt) ‏برای القای حرکت گربه مختصات تصویر را تغییر می دهیم,‎ LI ‏تصوير محتوای شیء ۲۷1۲۲6۱۱۱۲9 را تفییر خواهیم داد. و در نهایت برای‎ ‏ل کنیم.‎ 2 anes ‏ترسيم مجدد ارت‎ 6 ل ۱ ۳ قبل از بارگذاری تصویر جدید می باشد. ۳۳ ام این عمل از متد زیر استفاده مى كنيم. } void pause(int time) ون ;Thread.sleep(time) {} catch (InterruptedException e) { 1

صفحه 195:
* ۲ -) متد 8610۷() به صورت زير می باشد. ‎void nekoRun(int start, int end)‏ } ‎for (int i = start; i < end; i += 10)‏ } ‎=i‏ ‎swap images //‏ ‎if (currentimg == nekoPics[0])‏ کات رتیت و واه ‎jelse currentimg = nekoPics[0]‏ ‎;)repaint‏ ‎j;pause(150)‏ ‎if‏ ‏{ ‏متد +23110() ابلت به صورت زير است. ‎public void paint(Graphics screen)‏ } ارس یرت نیت ی یلاه) گرا ‎;screen.drawImage(currentimg, x, y, this)‏ {

صفحه 196:
نكته ا ا ا ا ا ل ۱۳ * در اینجا نوبت انجام اعمال زیر می باشد. ‎aswel‏ اتات و ‎Orepaint 3x.‏ ‎eA SPL SESS SC OROSMT PRON] FUP y CMe yi‏ ‎stop and pause //‏ ‎;currentimg = nekoPics[2]‏ ۱( ‎;pause(1000)‏ ‎yawn //‏ ‎;currentiImg = nekoPics[3]‏ ‎;Orepaint‏ ‎;pause(1000)‏

صفحه 197:
AD peor Pel ny Cor BOS ST 61a ۱ ‏رک لل‎ sens Pe ecto er See pre) wa ‏ايجاد مي كنيم. و تعداد‎ ‏دفعات كشش عضلات مى باشد.‎ } void nekoScratch(int numTimes) } for (int i = numTimes; i > 0; i--) ;currentiImg = nekoPics[4] ;Orepaint ;pause(150) ;currentiImg = nekoPics[5] ;Orepaint ;pause(150) { {

صفحه 198:
۴ -) متد ۳6۵0۹51660): از اين متد جهت پیاده سازی قسمت مربوط به خوابیدن استفاده می شود. ‎void nekoSleep(int numTimes)‏ } ‎for (int i = numTimes; i > 0; i--)‏ } ‎;currentiImg = nekoPics[6]‏ مراع ‎Oa)‏ ‎;pause(250)‏ ‎;currentiImg = nekoPics[7]‏ ‎Oa) x14‏ ‎;pause(250)‏ ‏1 ‏1

صفحه 199:
* حال گربه مورد نظر از خواب بلند می شود و به سمت راست ‎ers rein re see)‏ ;currentimg = nekoPics[8] 70repaint ;pause(500) ;nekoRun(x, size().width + 10) PSC Te MeL NU CRE ‏م ل ا‎ 1B tal -

صفحه 200:
منال ‎jimport java.awt.Graphics‏ ‎;import java.awt.Image‏ ‎simport java.awt.Color‏ public class Neko extends } java.applet.Applet implements Runnable ;Image nekoPics[] = new Image[9] ;Image currentimg ‘Thread runner 1۳۱1 jint y = 50 } Qpublic void init

صفحه 201:
String nekoSrc[] = {"right1.gif", "right2.gif", "stop.gif", "yawn.gif", “scratch1.gif", scratch2.gif","sleep1.gif", ;"sleep2.gif","awake.gif" } ‎la i=0; i < nekoPics.length; i+‏ با + ‎nekoPics[i] = ,)getimage(getCodeBase ;(images/" + nekoSrc[i]" ‎i ‎rf

صفحه 202:
} Qpublic void start }if (runner == null) srunner = new Thread(this) ;Qrunner.start 1 } Qpublic void stop srunner = null } Qpublic void run ;setBackground(Color.white) run from one side of the screen to the // middle ;nekoRun(0, size().width / 2)

صفحه 203:
stop and pause // الل تن ل كر تاه ليللا و۲۱0 ;pause(1000) EM ;currentimg = nekoPics[3] :)(( ۲ ;pause(1000) 56۲۵۲۱ ۲۵۷۲ 1۵۵۸ ارهز نیک ۲-1 "sleep for 5 "turns // ;nekoSleep(5) wake up and run off // ;currentimg = nekoPics[8] ;)repaint jpause(500) ;nekoRun(x, size().width + 10)

صفحه 204:
} void nekoRun(int start, int end) } for (int i = start; i < end; i += 10) x= swap images // if (currentimg == nekoPics[0]) ;currentimg = nekoPics[1] ;else currentImg = nekoPics[0] repaint ;pause(150) if if

صفحه 205:
} void nekoScratch(int numTimes) } for (int i = numTimes; i > 0; i--) ;currentimg = nekoPics[4] :)( ۲ jpause(150) ;currentimg = nekoPics[5] :)(( ۲ jpause(150) if if } void nekoSleep(int numTimes) } for (int i = numTimes; i > 0; i--) ;currentimg = nekoPics[6] :)(( ۲ jpause(250)

صفحه 206:
;currentimg = nekoPics[7] ;Qrepaint j;pause(250) { if } void pause(int time) ۷ ;Thread.sleep(time) {} catch (InterruptedException e) { { } public void paint(Graphics screen) ‏(اانام یرت نوت وی اه) #ر زا‎ jscreen.drawlmage(currentimg, x, y, this) if 0

صفحه 207:
نکته * : با وجود اينکه در زبان جاوا آزاد کردن فضای حافظه اختصاص داده شده به اشیاء به طور اتوماتیک انجام می شودء ولى اين مسئله در مورد اشیاء 6۲۵۳۱۱165 صادق ‎ee omer)‏ اا ۱ داده شده به این شیء به صورت زیر عمل می کنیم. }Qpublic void destroy ;QoffscreenGraphics.dispose 4

صفحه 208:
Double: 490 Ke 9b 7 Miele SEC osT eid | ree RCP Re belek real ‏کند. برای پیاده سازی بافرینگ دو گانه ابتدا باید تصویر 07۴56۲661۱ و‎ PPPs ‏را و۱‎ pee sy 295 Jlwyl (paint s0 ;lmage offscreenimage ;Graphics offscreen ‏سپس در هنگام مقدار دهی اولیه اپلت اشیایی از این دو کلاس ایجاد نموده‎ * PSOE B Eee Te pen Tents ‏ا‎ ee Nene) offscreenimage = createlmage(size().width, ;size(). height) ;0offscreen = offscreenimage.getGraphics

صفحه 209:
0 eT Pent ene ee as ;0ffscreen.drawlmage(bug, 10, 10, this) screen.drawlmage(offscreenImage, O , 50, this) * نکته: می توانید متد 006() را 0۷6۲۲۲0 نمایید. تا } public void update(Graphics g) ;paint(g) s 1

صفحه 210:
Slo import java.awt public class Checkers extends } java.applet.Applet implements Runnable ‘Thread runner للع 4 ۳۱۱۱۱۵ sint xMove = 4 ;Image offscreenimg ;Graphics offscreen } Qpublic void init offscreenimg = ;createlmage(size().width, size().height) ;Qoffscreen = offscreenimg.getGraphics

صفحه 211:
PaO) Lee ۷۵۱۸ ۲ pCa l= oe ‏یاس‎ ‎jrunner = new Thread(this) (۲ 0 1 } Qpublic void stop اللالیس هیارا اوه i كف اعلا ‎ee)‏ ا ل ا ال ل 1" ‎while (runner == thisThread)‏ } ;xPos += xMove if ((xPos > 105) | (xPos < 5)) >xMove *= -1

صفحه 212:
(۲ 2 ‘Thread.sleep(100) {} catch (InterruptedException e) { 1 1 } public void update(Graphics screen) ;paint(screen) 1 } public void paint(Graphics screen) Draw background //

صفحه 213:
;offscreen.setColor(Color.black) ;offscreen.fillRect(0,0,100,100) ;offscreen.setColor(Color.white) offscreen. fillRect(100,0,100,100) ۳0۲3۵۷۷ ۲ ‏ا‎ ‎soffscreen.setColor(Color.red) ‎;offscreen.fillOval(xPos,5,90,90) ,0,0 ای سا ‎iH lial‏ تازرهه { } Qpublic void destroy ;Qoffscreen.dispose { if

صفحه 214:
۳ Be Soe) و 0 | * با یک آر گومان(ا لا فایل صوتی) و ;play(getCodeBase(), “zap.au’) Prose k=14 Lolo ‏ل‎ =f: 1- wey eee ‏ا‎ peo Ulgixe (PLAY 2% YlegS 41 Ulgic & (\GetCodeBase SCI OD Ceer ac oon ene eee ac)

صفحه 215:
ols Uisy Oleds Quai b ul 2S Stop » start Perea Oe SNe RCo) ‏فايل صوتى آن را درون شىء ار نجام این عمل با‎ 0 ‏استفاده از متد اا ل ا‎ 00 s20 sil. AudioClip = getAudioClip (getCodeBase(), “audio/marimba.wav’) ۱ (ot: 1d (ol te emer Spe rene (MEST OBE Er ils et ‏ا ل‎ AudioClip clip = new AudioClip ; (audio/marimba.wav ) eeeomy eels prod ieee ewe UE Co | (+L 011] oan e 1b Ap ad a5 Jyx5 (loop(),stop(),play

صفحه 216:
Jl jimport java.awt.Graphics jimport java.applet.AudioClip ublic class AudioLoop extends java.applet.Applet implements Runnable ;AudioClip bgSound ;AudioClip beep ‘Thread runner } Qpublic void start 1] )۲۷۸۳8۵۲ << ‏لالد‎ ‎srunner = new Thread(this) AOC tei tla {

صفحه 217:
} (public void stop null) if (bgSound != null) ;Q0bgSound.stop Pala male { { } Qpublic void init ;bgSound = getAudioClip(getCodeBase(),"loop.au") jbeep = getAudioClip(getCodeBase(), "beep.au") { } Qpublic void run if (bgSound != null) ;0bgSound.loop ;0Thread thisThread = Thread.currentThread } while (runner == thisThread) ینز

صفحه 218:
‘Thread.sleep(5000) {} catch (InterruptedException e) { if (beep != null) ;)beep.play 1 1 } public void paint(Graphics screen) screen.drawString("Playing Sounds ...", ;10, 10) 1 if

صفحه 219:
نکته ا ل ا ‎er‏ ‏.عمل پخش آن با متوقف شدن ۲۱۲۵30 اپلت متوقف ۱ می نمائیم

صفحه 220:
Awt Poe ay wal evil pene em enw Cn tree weary NA ied aceon area eee ere eM Lge ‏ا‎ ‏لستفاده از ۲ ۸۸۷۷ ولسط ک اربر شامل‌سه گزینه زیر می‌باشد‎ تاره ۱ درونولسط كاربر قرار كيرند رت ل :02116۳5 ی که شامل ‎Component‏ هایبیگر لست ترا ‎peer ye‏ 111 0ه را درون 17 ©011153119) تعيين مى نمايد . ا 0 ا ل الا م

صفحه 221:
افزودذن 111 ©01112011) ها به ‎Tale‏ ه60 « container.s, « component ‏براى افزودن يى‎ "" Perey epee ie ee] Component st." ‎Val] agen cay Le [e ICO] PS pC had‏ زیت ل 00111001162 ايجاد شده. ‏" نكته: افزودن يى ‎Container «Component‏ ا 0ت 0111001161 بايد متد :921111]() توسط متد تررا ۳70

صفحه 222:
افزودذن 1155011 011111131108 © ۱۳ 00 1۱ ‏نادیم‎ class AudioLoop extends | Java.applet.Applet String note = "I am extremely tired and +" would prefer not ;"to be clicked" ;Button tired = new Button(note) } Qpublic void init jadd(tired) 1 {

صفحه 223:
:۲ ‏مثال‎ * ;*.import 1۱۱ } public class VCR extends java.applet.Applet ;Button rewind = new Button("Rewind") ;Button play = new Button("Play") ;Button ff = new Button("Fast Forward") ;Button stop = new Button("Stop") ;Button eat = new Button("Eat Tape") } Qpublic void init jadd(rewind) jadd(play) Feelel Gag) j;add(stop) jadd(eat) i 3

صفحه 224:
ن ۱۵06۱ "" نكته: اع 3اها بلا 0 ۳1 يك 2 ۱ تال 0 "ا مثال: کت موز زرا ات [ ‏جز 60۲6۳05 واه‌طاها عووا» »نامابام‎ ۷.۵۵۵۱6 ol (ag ;Label lefty = new Label("Bleeding heart!") ;Label center = new Label("Centrist!", Label.CENTER) ;Label righty = new Label("Hardliner!", Label.RIGHT) ;Font If = new Font("Helvetica", Font.BOLD, 14) ;GridLayout layout = new GridLayout(3,1) } Qpublic void init ;setFont(If) الوك ا ا تاه jadd(lefty) jadd(center) jadd(righty) 1 1

صفحه 225:
‎٠ 5‏ م افزودن 0۱۱۵100: ‎Ji.‏ ان ‎} public class CheckACzech extends java.applet.Applet ;Checkbox cl = new Checkbox("Milos Forman") ;}Checkbox c2 = new Checkbox("Paulina Porizkova") ;} Checkbox c3 = new Checkbox("Ivan Reitman") ;Checkbox c4 = new Checkbox("Tom Stoppard") ;Checkbox c5 = new Checkbox("Ivana Trump") } Qpublic void init jadd(c1) jc2.setState(true) jadd(c2) jadd(c3) jadd(c4) jadd(c5) 1 1

صفحه 226:
RadioButton 9459! 9 7*«import java.awt ublic class AudioLoop extends } java.applet.Applet 3(CheckboxGroup p = new CheckboxGroup Checkbox p1 = new Checkbox("Samuel ;Goldwyn", p, false) Checkbox p2 = new Checkbox("Krzysztof ;Kieslowski", p, true) Checkbox p3 = new Checkbox("Klaus ;Kinski", p, false) Checkbox p4 = new Checkbox("Joanna ;Pacula", p, false)

صفحه 227:
Checkbox p5 = new Checkbox("Roman Polanski", p, ‘false) } Qpublic void init ;add(p1) L(Y) (3) ۳ ;add(p5) i

صفحه 228:
اخرودن ‎ComboBox(ChoiceList) |. ,‏ ;x.import java.awt public class SelectASpaniard extends } java.applet.Applet ;0Choice span = new Choice } Qpublic void init ;Span.additem("Pedro Almodovar") ;Span.additem("Antonio Banderas") ;Span.additem("Charo") ;Span.additem("Xavier Cugat") ;Span.additem("Julio Iglesias") jadd(span) 1 1

صفحه 229:
TextBox(TextField) 40935! * مثال: 7x.import java.awt ublic class OutOfSite extends } java.applet.Applet ;Label siteLabel = new Label("Site Name: ") ;TextField site = new TextField(25) Label addressLabel = new Label("Site ;Address: ") ;TextField address = new TextField(25) Label passwordLabel = new Label("Admin ;Password: ") ;TextField password = new TextField(25) } Qpublic void init ۳

صفحه 230:
;add(siteLabel) ;add(site) ;add(addressLabel) ;add(address) ;add(passwordLabel) ;('*')password.setEchoCharacter ;add(password) 1

صفحه 231:
۱3 ‏واه‎ ery Bo ;*.import java.awt public class Virginia extends java.applet.Applet / String letter = "Dear Editor:\n" + "lam 8 years old.\n" +"Some of my little friends say there is no Santa Claus." +" Papa\n" + "says, "If you see it in The Sun it's so." Please tell" + "me the truth,\n" + "is there a Santa Claus?\ n\n" + "Virginia O'Hanlon\n" + "115 West 95th ;"Street\n" + "New York ;TextArea It } Qpublic void init ;lt = new TextArea(letter, 10, 50) jadd(It) i 0 * مثال:

صفحه 232:
ScrollBar & Slider 40935! " مثال: ‎7*«.import java.awt‏ ‎public class Slider extends java.applet.Applet‏ } ‎;GridLayout gl = new GridLayout(1,1)‏ ‎Scrollbar bar = new‏ ‎Scrollbar(Scrollbar.HORIZONTAL, 50, 0, 1,‏ )7100 ‎Qpublic void init‏ } ‎;setLayout(gl)‏ ‎j;add(bar)‏ 1 1 ۱

صفحه 233:
افزودن 62۱0۷25 * مثال: 7x.import java.awt public class Crosshair extends } java.applet.Applet ;GridLayout gl = new GridLayout(1,1) 7;(0MyCanvas can = new MyCanvas } Qpublic void init ;setLayout(gl) j;add(can) 1 1 ۱

صفحه 234:
class MyCanvas extends }java.awt.Canvas } public void paint(Graphics g) sint x = size().width / 2 sint y = size().height / 2 ;g.setColor(Color.black) ;g.drawLine(x-10, y, x-2, y) ;g-drawLine(x+10, y, x+2, y) ;g.drawLine(x, y-10, x, y-2) ;g.drawLine(x, y+10, x, y+2) if {

صفحه 235:
تعیین ۱۵۷01 LE Welt) a Renee ‏ل ل ا‎ eee ere Ts be BC OSE Sed ch ear see ee ‏ا ا‎ FlowLayout(default) GridLayout GridBagLayout BorderLayout CardLayout 1 eh Col ule re ie Reged ery NCL) Reems SECT pial 3)0FlowLayout layout = new FlowLayout ® lsc 4) of (SetLayout 42 5! oslixu! L Layout ‏يس از ايجاد‎ "" Contec hole teers en ee ee Bey rents] ach Lo ehd SPOR N Liat we ee ‏ا‎ LeU aol rene

صفحه 236:
FlowLayout "ا اكر ازاين 0101لا استفاده كنيد 131 011720116)ها يشت سر هم ‎eet Ca nerd‏ ل ل ا ا ۱ تا ۱ 2 ‏رت‎ ee ‏خواهيد 111 6011120136ها در سمت جب يا راست درج شوند‎ ‏و ا ل ا اف‎ jl ۱

صفحه 237:
مثال import java.awt ublic class Alphabet extends java.applet.Applet ;Button a = new Button("Alibi") ;Button b = new Button("Burglar") ;Button c = new Button("Corpse") ;Button d = new Button("Deadbeat") ;Button e = new Button("Evidence") seal eMac ‏الل اا‎ FlowLayout Im = new ;FlowLayout(FlowLayout.LEFT)

صفحه 238:
} Qpublic void init ;setLayout(Im) jadd(a) jadd(b) jadd(c) jadd(d) jadd(e) jadd(f) 1 ۱ ۱ "" متد سازنده 0106 لا3-الالا10!() در حالت ييش فرض بين هر 01110116136 © ل ا 2 ال 0 ا ل ا ام 0 ‎Pee eee od‏ FlowLayout layout = new ;FlowLayout(FlowLayout.LEFT, 10, 30)

صفحه 239:
GridLayout ‎a‏ در صورتى كه از اين ۴ اسستفاده کنید. 111 1ه به حالت 6110© يشت سر هم قرار خواهند ا ا ل ل ل ‎hese MEU ele | eee Tele SL]‏ 0 ‎Rent ep enw yeae Cycom sy ee Feeley Sy‏ تررت ا 2000 ‎we‏ ‎GridLayout gr = new GridLayout(10, 3, 5, ‏نز‎ ‎7

صفحه 240:
مثال ;*.import java.awt ublic class Bunch extends } java.applet.Applet GridLayout family = new ;GridLayout(3,3,10,10) ;Button marcia = new Button("Marcia") ;Button carol = new Button("Carol") ;Button greg = new Button("Greg") Belles) OM Tie) ;Button alice = new Button("Alice") ;Button peter = new Button("Peter") ;Button cindy = new Button("Cindy") ;Button mike = new Button("Mike") ;Button bobby = new Button("Bobby")

صفحه 241:
} Qpublic void init ;setLayout(family) jadd(marcia) sadd(carol) ;add(greg) jadd(jan) ;add(alice) ;add(peter) ;add(cindy) ;add(mike) ;add(bobby) if 0

صفحه 242:
BorderLayout Prep et ye eye a pe Romer yore ay Nolet are] ad Be ETP eee Cro sy eee Nes Ciel Ses nC En CM Ween Is Se) ‏بدون آرگومان :در این حالت 0110]010610.)ها بدون فاصله درج خواهند شد.‎ * (08۵۲6۲۲۵۷۵۵ POSTON OR WCE ‏ا ا‎ OIE ST ial ۳ ‏ا ا‎ ;BorderLayout(int, int) ۱7۲7۳۱۳۱۱ ‏وت وا‎ Oeil e111) ee emUEE RC Bye Toe lial ‏عمل کنیم‎ add(String, Component) "" آركومان اول(561113) مى تواند داراى يكى از مقادير :5010613 :1هللا خ+5ع لالا .+35ط با 6۳6۵۲ باشد و بيانكر محل قرار كرفتن 04 00

صفحه 243:
مثال ت رازه را ات } public class Border extends java.applet.Applet ;)BorderLayout b = new BorderLayout ;Button north = new Button("North") ;Button south = new Button("South") ;Button east = new Button("East") ;Button west = new Button("West") ;Button center = new Button("Center") } Qpublic void init jsetLayout(b) jadd("North", north) jadd("South", south) jadd("East", east) jadd("West", west) jadd("Center", center) 1 0

صفحه 244:
| ۱ ‏اضافه کنیم به‎ “Applet wos ۳ ‏رم‎ 000 Anta ۳ dul Solu-11) arene pCne pee Cm clit ke een one es ‏به موارد زیر توجه کنید:‎ si BIN pce ‏استفاده کرد‎ ۱۳ ‏ا 2 ل‎ eee ee] ‏باشد.‎ ‎۱ ‎1 ec fe Tece\c sited ;0Panel pane = new Panel PMP E Se DS RCR OBL Lil) Meee holt] aura Bey ;0BorderLayout bo = new BorderLayout ;pane.setLayout (bo) Leyte ‏ل‎ Li ‏ل‎ ey Per XTi) LCi SeSMOee ent peace SeeCeRIN CIES TY.Vs) o)(-1 ee Cec en etsy Pete ‏للا كت ل‎ ;pane.add(dialogue)

صفحه 245:
CardLayout Pao ii) Lolli) ‏اين 101 0©ل31-أشامل تعدادى 201115211361 يا‎ "" ‏ل ا ل‎ 0 ‏ا‎ -1e: EN olt ane nr pe 00 ‏ال‎ oli] Lela t 1h nee ee Cy ۳9 We Oran sii =) a ae LaC=) ges ۱3 oe oreo ee eee |B ‏تا‎ ;() CardLayout cc = new CardLayout ‏ا ا‎ mc hte ‏ا ا‎ Beep ec a استفاده می شود . ‎;setLayout (cc)‏

صفحه 246:
۱ 1.add (String, Component); 2.add( String, Container) "" نكته: قبل از افزودن يك ‎poi xb Container(card)‏ 11 2اهاى لازم به آن 20101 شود. بعد از افزودن تلت 7 ۷ استفاده کرد .اين متد دارای دو آرگومان به شرح زیر می باشد. ور ا ‎co eee Ey om‏ 00 مذكور ‎Applet‏ باشدمىتولرزاز كلمه كليدى1115آ لستفادم کرد. * نام کارت

صفحه 247:
مثال کت الا راض ublic class BurmaShave extends java.applet.Applet poses ‏درل لیا ار‎ ;)CardLayout card = new CardLayout ;Label[] lab = new Label[6] jint current = 0 jThread runner } Qpublic void start }if (runner == null) jrunner = new Thread(this) ‏و۲۱‎ Cer <a 9 أ ‎Qpublic void stop‏ } اانام وت رز را ۲9۰۱ 0

صفحه 248:
} Qpublic void init jlab[0] = new Label("Grandpa's beard") jlab[1] = new Label("Was stiff and coarse.") lab[2] = new Label("And that's what ;caused") jlab[3] = new Label("His fifth") jlab[4] = new Label("Divorce.") jlab[5] = new Label("Burma Shave.") ;setLayout(card) for (int i = 0; i < 6; i++) ;add("Card " + i, lab[i]) 4

صفحه 249:
[ ‏صبه ۷۵۱۵ :ها(‎ ;)Thread thisThread = Thread.currentThread } while (runner == thisThread) ;card.show(this, "Card " + current) ‏فزیتو وا یس‎ if (current > 5) ;current = O ;)repaint وفنا ;Thread.sleep(5000) {} catch (InterruptedException e) { 1 i 0

صفحه 250:
GridBagLayout Pome sree eae Le NC Meh Col ae cerey بيك رت را سلول درون 6110 را اشغال كند. ‎egret)‏ ل ا ا ‎paved‏ ‏11 هارا مىوتولنبه طرقمختلفهرون6110 قرار داد. gGridBagConstraint «vs ‏ل ل‎ stu! «I~ ‏تا‎ 0200 ‏ل ا‎ in agency لا ا 20 ۱ 0002005 ‏ا ل ل ل‎ a Bp cmeN Ee) لل ا ل 020 اد شىء 01151121136 108306 6 تعیین 0۳5۲۵1۳ های هر 0۳0۵0۳۵۲ Layout 4 Component ‏را‎ ‎Corde eee lil elit) eee ee

صفحه 251:
"" قدم اول: طراحى [110 © "" قبل از شروع كد نويسى 06110 مورد نظر خود را روى كاغذ ترسيم كنيد. "" قدم دوم: ايجاد 110 © * ا ا ا ل ا ا 00 void buildConstraints(GridBagConstraints .gbc, int gx, int gy ۷ 1۱6 ,۷۷ ۱۳۲ ,حال ۱۳ ,9۷ ۳1 ز 79bc.gridx = gx igbc.gridy = gy 7;9bc.gridwidth = gw ;9bc.gridheight = gh ;gbc.weightx = wx 7gbc.weighty = wy i

صفحه 252:
ور ۱۳ } Qpublic void init 30GridBagLayout gridbag = new GridBagLayout GridBagConstraints constraints = new 30GridBagConstraints ;setLayout(gridbag) Name label // ns; li salle: 0, 0, 1, 1, 100, 0 ;constraints.fill = GridBagConstraints.BOTH ;Button labell = new Button("Name:") ;gridbag.setConstraints(label1, constraints) jadd(label1) 1

صفحه 253:
"" بعد از اختصاص 60115112311185 به يى 620111130116118 مى توان از شىء تیگ اك رتور ار ۱۳7 ۱ ‏ا ا‎ are eae eal ;buildConstraints(constraints, 1, 0, 1, 1, 100, Peat buildConstraints)constraints,0, 1, 1, 1, 100, 100); buildConstraints)constraints, 1, 1, 1, 1, 100, 100); buildConstraints)constraints, 0, 2, 2, 1, 100, 100); SCT ree Se Cl * قدم بعدی تعیین ابعاد سطرها وستونها می باشد. برای مثل ممکن است بخواهید قسمت درل ات۱ باشند و دکمه 01 ارتفاع کمتری نسبت به 62010026 ها داشته باشد تععن ابعاد به ‎ee ene Ocd‏ ل ‎Byer eC‏

صفحه 254:
نکته اه رت ۱۳۳۱ ۰ شود. ا ا ل ا 00 , 100, 100); , 100, 100); , 100, 100); buildConstraints(constraints, 0, buildConstraints(constraints, 1, buildConstraints)constraints, 1, 0,1,1 0,1,1 buildConstraints)constraints, 0, 1, 1, 1, 100, 100); 1 1 2,2,1 , 100, 100); Pea ‏ا ل‎ elle buildConstraints)constraints, 0, BuildConstraints(constraints, 0, 0, 1, 1, 10, 100);//name BuildConstraints(constraints, 1, 0, 1, 1, 90, ا ا ل ل 0 تعيين سهم عدد صفر منظور مى شود . 100);//nameText ‏در متدهاى بعدى جاى‎

صفحه 255:
"! قدم جهارم: افزودن وتنظيم 111 011320116 6ها و 7[ شود. Component :GridBagConstraints.BOTH ® Pe ont dee ee Smee ee Lats are yee LG 55 4h tcl, :GridBagConstraints.NONE ® ‏با كوحكتريرإندازه ممكرنثازداده شود.‎ 1611 الال ا 2000 +11 10011 در لمتداد لفقىلنجام مىوشود. ® الي م ا ل كك 2000 1011 ير لمتداد عمودئإنجام مىشود.

صفحه 256:
نکته ل 0 "" براى20113]00116111) هايى كه تمام سلول را اشغال نكرده مقادير ديكرى به شرح ‎on Meme TONS)‏ ا ‎SO I ere Wee‏ موقعيت قرار كرفتن 0111120116116 6را درون سلول مشخص مى كند. GridBagConstraints.NORTH GridBagConstraints.NORTHEAST GridBagConstraints.SOUTH GridBagConstraints.SOUTHEAST GridBagConstraints.EAST GridBagConstraints.NORTHWEST GridBagConstraints.WEST GridBagConstraints.SOUTHWEST GridBagConstraint.CENTER dazic pn! 928 i 5 7 ‏باشد.‎

صفحه 257:
اعمال تنظیمات ‎import java.awt.*;‏ ‎eae 5‏ رل را م۱۱ ‎java.applet.Applet {‏ ‎void buildConstraints(GridBagConstraints‏ ‎gbc, int gx, int gy,‏ ‎int gw, int gh, int wx, int wy) {‏ ‎gbc.gridx = gx;‏ ‎gbc.gridy = gy;‏ ‎gbc.gridwidth = gw;‏ ‎gbc.gridheight = gh;‏ ‎gbc.weightx = wx;‏ ‎gbc.weighty = wy;‏

صفحه 258:
public void init() { GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints constraints = new GridBagConstraints(); setLayout(gridbag); // Name label buildConstraints(constraints, 0, 0, 1, 1, 10, 40); constraints. fill = GridBagConstraints.NONE; constraints.anchor = GridBagConstraints.EAST; Label labell = new Label("Name:", Label.LEFT); gridbag.setConstraints(label1, constraints); add(label1); // Name text field buildConstraints(constraints, 1, 0, 1, 1, 90, 0); انا نیال یفن رای ‎GridBagConstraints. HORIZONTAL;‏ TextField tfname = new TextField();

صفحه 259:
jgridbag.setConstraints(tfname, constraints) jadd(tfname) password label // jbuildConstraints(constraints, 0, 1, 1, 1, 0, 40) ;constraints. fill = GridBagConstraints.NONE ;constraints.anchor = GridBagConstraints.EAST Label label2 = new Label("Password:", j;Label.LEFT) ;gridbag.setConstraints(label2, constraints) jadd(label2) password text field // ;buildConstraints(constraints, 1, 1, 1, 1, 0, 0) constraints. fill = ;GridBagConstraints. HORIZONTAL ;)TextField tfpass = new TextField

صفحه 260:
tfpass.setEchoCharacter('*'); gridbag.setConstraints(tfpass, constraints); add(tfpass); // OK Button buildConstraints(constraints, 0, 2, 2, 1, 0, (۲ constraints.fill = GridBagConstraints. NONE; constraints.anchor = GridBagConstraints.CENTER; Button okb = new Button("OK"); gridbag.setConstraints(okb, constraints); add(okb); + 7

صفحه 261:
مديريت رويداد : ‎١1320160‏ 22 * برای تعامل با واسط کاربر باید رویدادهارا به دسترسی ‎eae dee ECE DE hae eB‏ ۳ تولید می شوند.

صفحه 262:
انواع رویداد : ۷6۵۱15 0۴ 1۷065 رویداد کلیک ۷01156: اين رویداد به نوع خود شامل انواع ل ا ا ا 00۷56 ۷0056۱16160 (فشردن ورها کردن دکمه 1۵156) می باشد. رويداد حركت (116 1116 1/101/6 ©1/10115) 6 1/10115!: اين رويداد به نوبه خود شامل انواع ورود و خروج مكان نماى ©1190115! به واسط :111 0111]20136© و و۳۳۰ فشردن دکمه های صفحه کلید( ۲65565 6۷): اين رویداد به نوبه خود شامل فشردن دکمه های صفحه کلید. رها کردن دکمه های صفحه کلید و فشردن و رها ۱ رويدادهاى واسط كاربر (611:5/ا1 © وتا ات۱ م ل ل ا ‎Scrollbar Up)‏ ا ال ل ل 222 ا 00۳0 و ... می باشد .

صفحه 263:
Mouse SSS ‏مدبريت رويداد‎ ۴ یکی از معمولترین رویداد ها کلیک 01156 می باشد. ا ا ا ا لك می کند. دو رویداد به وقوع می پیوندد. این دو رویداد عبارتند از:0۷/1۱ ]۴۳۱۵۱۱56 (وقتى دكمه فشرده مى شود) و (] لا ع1190115(زمانى كه دكمه رها مى شود) مدیریت رویدادها از طریق 0۷6۲۲06 کردن متدهای مربوط به رخدادها انجام می ۱ ‎}public boolean mouseDown(Event evt, int x, int y) ®‏ معط دعوره© ولا رد3 ۱/۸ 1 ‎tL +10)‏ را اه 2000 | ‏" علاء 116ع/اع: ليرا ركومانشىئ از كلاس 11 © لاع السنتكه حاوىر ويداد مربوطه الست ‎ ‏ا ا ا ا ل ‎Rts‏

صفحه 264:
مثال public boolean mouseDown(Event evt, int x, int ۸۸ System.out.printin(“Mouse down at” + x + “,” ity) if

صفحه 265:
‎٠" ""‏ ) رويداد ]لا ©1/10115: نيمه ديكر كليى متد ۵ می باشد این متد زمانی که دکمه ‎MOUSE‏ ‏رها مى شود. فراخوانى مى كردد. براى مديريت رويداد ‎override |, (mouseUp 3: 1. mouseUp‏ ‏كنيم. ‎public boolean mouseUp(Event evt, int x, int y){ //Method’s Core Comes here

صفحه 266:
مثال import java.awt.Graphics mport java.awt.Color jimport java.awt.Event } public class Spots extends java.applet.Applet ;final int MAXSPOTS = 10 int xspots[] = new int[MAXSPOTS] nt yspots[] = new int[MAXSPOTS] ;int currspots = 0 } Qpublic void init ;setBackground(Color.white) {

صفحه 267:
public boolean mouseDown(Event evt, int x, int 2 } if (currspots < MAXSPOTS) ;addspot(x,y) توت طیولادت ۲۳ { }else ;System.out.printin("Too many spots.") تا یو یواای توا 0 void addspot(int x,int ‏(لا‎ ‎xspots[currspots] = x; yspots[currspots] = y; currspots++; repaint(); }

صفحه 268:
} public void paint(Graphics g) ;g.setColor(Color.blue) } for (int i = 0; i < currspots; i++) g-fillOval(xspots[i] - 10, yspots[i] ;- 10, 20, 20) i { {

صفحه 269:
Double Click ofug, co puro * برای کنترل تعداد کلیک 101156] به این صورت عمل می کنیم. public boolean mouseDown(Event evt, int x, int y) { switch(evt.clickCount) { case1://Single click case2://Double click case3://Triple click Mesa 7 * مثال: }public boolean mouseDown(Event evt, int x, int y) ;System.out.printin(“Click count:” + evt.clickCount) {

صفحه 270:
مدیریت رویداد جابجایی ۱۷۱0۱56 ا ينا ا ‎PSOne Soe od) Pere‏ ‎(elt) Plg-[e}‏ ا ‎Pepe elt eee m ene eee‏ شدهلست ‎public boolean mouseDrag(Event evt, int x, int y){‏ ‎//Method’s Core Comes Here‏ 7 ‎tI) [oni]‏ جابجایی6 ۲1۱015 بدوزلینکه دکنه آنف‌شرده شده بساشد ‎public boolean mouseMove(Event evt, int x, int y){‏ ‎//Method’s Core Comes Here‏ 7 ‎oh MARCO aD a Perc ie Caner a Ree Tey‏ ل له ۲ مختصات موقعیت نهایی مکان نمای ۲001456 را در خود نگه می ۳

صفحه 271:
" “اع5111ع1/101015: باورود مكازنماى©6 1110115 به ينجرهى ليلتمتد ‎Pepe Die ye eae eed‏ 00 public boolean mouseEnter(Event evt, int x, int y) 0 //Method’s Core Comes Here و ‎iS ee a re ca Co a eee Dd‏ public boolean mouseExit(Event evt, int x, int y) 0 //Method’s Core Comes Here

صفحه 272:
منال ‎import java.awt.Graphics;‏ ‎import java.awt.Color;‏ ‎import java.awt.Event;‏ ‎import java.awt.Point;‏ ‎public class Lines extends java.applet.Applet {‏ :10 ح 5ع لالالامل! غخمأ اهمق ‎Point starts[] = new Point[MAXLINES]; // starting points‏ ‎Point ends[] = new Point[MAXLINES]; // ending points‏ ‎Point anchor; // start of current line‏ ‎Point currentpoint; // current end of line‏ ‎int currline = 0; // number of lines‏ ‎public void init() {‏ ‎setBackground(Color.white);‏ 1

صفحه 273:
public boolean mouseDown(Event evt, int x, int y) { if (currline < MAXLINES) { anchor = new Point(x,y); ‏بت فتطیفا اکتا‎ 1 else { System.out.printin("Too many lines."); return false; 7 } public boolean mouseUp(Event evt, int x, int y) { if (currline < MAXLINES) { addline(x,y); ‏تفا توا‎ 1 ‏تال یوت وتات‎ 7

صفحه 274:
public boolean mouseDrag(Event evt, int x, int y) { if (currline < MAXLINES) { currentpoint = new Point(x,y); repaint(); Plame } ‏زع315؟ ناعم عواء‎ 7 void addline(int x,int y) { starts[currline] = anchor; ends[currline] = new Point(x,y); ‏رت زرا ووا اه‎ ‏ایس کنیا کزیتیواای‎ anchor = null; repaint();

صفحه 275:
public void paint(Graphics g) { // Draw existing lines for (int i = 0; i < currline; i++) { g-drawLine(starts[i].x, starts[i].y, ‎x, ends[i].y);‏ :]كلمع ‎1 ‎// draw current line ‎g-setColor(Color.blue); ‎if (currentpoint != null) ‎g-drawLine(anchor.x,anchor.y, ‎currentpoint.x,currentpoint.y); ‎1 ‎1

صفحه 276:
‎Le‏ ایا ‏* برای اینکه یک 0110016۲ بتواند رویدادهای صفحه 7 0 ۱0 ‎«Component x ,,53. Component ,%>5‏ ‎nen] Se] SBT OT RC PNT pene Cee)‏ ا ‏"! نكته: براى تعيين 111 6011120116ى كه 50©115 را در اختيار داردء از متد زير استفاده مى كنيم. ‎;()Component.requestFocus

صفحه 277:
keyUp ,keyDown ‏رويدادهاى‎ PCM E Se SC Sew SE Sie Lee Pert bial public boolean keyDown(Event evt, int key) { //Method’s Core Comes Here 7 public boolean keyDown(Event evt, int key) { //Method’s Core Comes Here } PCE aS IS EL NT er eee Ch DRT CBR TE TCL TO) ial ‏باشد. برای استفاده از آنها به عنوان کاراکتر به صورت زیر عمل می کنیم.‎ currentChar = (char)key;

صفحه 278:
۷ public boolean keyDown(Event evt, int key) { System.out.printin(“Ascii Value: ” + key); System.out.printin(“Character:” + (char)key); ‏تایه 9و2و۱‎ "" نكته: برخى از كليدهاى غير كاراكتري نظير كليدهاى جهت داراى نام مى باشند که می توان برای دسترسی به آنها از اين نامها استفاده کرد. if(key ‏ا‎ ‎//\f Core Comes Here

صفحه 279:
مثال ‎import java.awt.Graphics;‏ ‎import java.awt.Event;‏ ‎import java.awt.Font;‏ ‎import java.awt.Color;‏ ‎public class Keys extends java.applet.Applet {‏ ‎hi‏ وا ری ‎int currx;‏ ‎int curry;‏ ‎public void init() {‏ ‎currx = (size().width / 2) -8; // default‏ ‎curry = (size().height / 2) -16;‏ ‎setBackground(Color.white);‏ ‎setFont(new Font("Helvetica",Font.BOLD,36));‏ ‎requestFocus();‏

صفحه 280:
public boolean keyDown(Event evt, int key) switch (key) { case Event.DOWN: curry += 5; break; case Event.UP: curry -= 5; break; case Event.LEFT: currx -= 5; ‏و[‎ 44 case Event.RIGHT: currx += 5; break;

صفحه 281:
و06۲ ;currkey = (char)key if ;Qrepaint :۲۵۲/۳ ۵۰ if } public void paint(Graphics g) }if (currkey != 0) g-drawString(String.valueOf(currkey), ;currx,curry) if if if

صفحه 282:
1 Java

صفحه 283:
Microsystems s+ 1990) 0816 با طهور وب کردندبه تم ۷۵100۷۵ که با یشوفت کار نم زان 081 + 70۷8 Compiled and Interpreted Platform-Independent and Portable Object Oriented Robust and Secure Distributed

صفحه 284:
۲۵۳۳۷۵, 5۳۳۵ 00 57۵ Multithreaded and Interactive High Performance (for an interpreted language). Dynamic and Extensible ابى با جند اصطلاح بركاريرد زبان ‎gad par 3 alee ByteCode , Application , Applet .:sin-‏ آنها رن ‎ ‎ ‎ ‎Application ‎ ‎ ‎

صفحه 285:
ابزارهای لاز رای شروع ‎is‏ ویسی با او ال 1995 معرقى شد تنه ليزارايجاد يرثا ما رهاط رای بوک اکن نوش ای else ‏برنفه ها‎ JDK ay, Sun Microsystems <<, ODKVava ها لاه رنهاب ‘Sun One Studio ‘Sun Soft Java WorkShop Borland JBuilder Microsoft Visual ++ ‘Symantec Cafe استفادة 016ب توجه به غلاقه تان از خرنيك از مخيط غلك ی که نم ور همه نید ی وید یکی از رم و تست

صفحه 286:
بت لباب فرق ‎HelloWorid java’‏ ..sCommand Prompt \IDK\Bin> Javac HelloWorld java ss tz HelloWorld. class”, \IDK\Bin> Java HelloWorld Hello, Worl Hello, Worl

صفحه 287:
ار ‎public, static‏ تن (7310اازكلمات اواع داده وعملكرهاى زبان جاوا:

صفحه 288:
| double 2 op wlén! Unicode ACasting typedy s Jet

صفحه 289:
char byte [Show char. in Fong. float, double shor. 1 int long, float, double char int long, float double int double Tong loa, double int numbers char [letters long gridlJU

صفحه 290:
char alphabet} = new chat26) int primesf] = {7.11.13} Hash table stack (String) ts ‏رفت‎ String message Stn name = "Mr.Hlamed? (Classis ‏کلاس‎

صفحه 291:
inex imy ix =8 iY imx im Y =X»

جهت مطالعه ادامه متن، فایل را دریافت نمایید.
34,000 تومان