بسمه تعالهzums.ac.ir › files › it › site › maghale › javas.doc · web viewاين...

36
مه س ب ي ل عا ت ام ن هدي م: ام ن ي گ واد ن ا خ ري سگ ع: وع ض و م ق ي ق ح ت ات ي ل ك: هاي لت0 ن اوا ا خ اد ي س ا ما ن ه را ر كت : د ري ي مدوا ا خ ؟ ت س ي0 خوا ا A خB ك A يE ان A ن ر امه رن ي يA س ب و ن تA س ا كه در ل ي اواه ده ود A ن وسط نوا ا A خ ت ف اA س, R ش خ ت رم ي اري زA ف ا ت ك رR A شعهA وس ن,E انA س داده دفA د. هR A سE ا‘ ن ود A ن كهوا ا A خ ي ن ا A ن رادهA س, وي A ق و مه ه ورهe A ظ ن موا ا A د.خR A اس ن ي ن ا A ن ر ادهA س وي A ق, و مه ه ورهe A ظ ن موا ا A د.خR A اس ن امA م ت ه ب ن خ ايA ه ت بR ث مc وc ++ را در ود A خ داردE ا‘ ن يp ن اA ه ر ت0 چ كه امه رن يE انA س ب و نc ++ ارE ا‘ ن رت A ف ت د يt ثR A س دا د يu نما( تR ث ورا د ن0 چ ه گان ف A ي ر ح ت, ورها ن را0 ي ا و ارهR A اس را) اA زه گ ه ن ار A ي ك ه بR س ا گد. ت س اE ن ي ر مت ه م ي گR ر ي ووا ا خE ن ي ا ت س ا كهp ي يR سساسا ا" ت س زا گE ن لي . او دعاي اoop يp ن ا A وان ن اده ف تA س اد د A ج م ار كد ي ر ت0 A چ. تA س ا كهc ++ ا ن امA م تR ش ب اAدعاه ا زA گ ر ه ه بA س ب وا يu ن ه ن

Upload: others

Post on 30-Jun-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

تعالي بسمه : مهدي نام: عسگري خانوادگي نام

جاوا اپلتهاي : كليات تحقيق موضوعمديري : دكتر راهنما استاد

چيست؟ جاوا

توسط نود دهه اوايل در كه است نويسي برنامه زبان يك جاوا ش88د. داده س88ان,توس88عه ش88ركت اف88زاري ن88رم , بخش سافت جاوا

باش88د.ج88اوا منظوره همه و , قوي ساده زباني جاوا كه بود آن هدف مثبت ه88اي جنبه تم88ام باشد.جاوا منظوره همه و , قوي ساده زباني

cو c++نويسان برنامه كه چيزهائي آن ,و دارد خود در را c++از اش88اره و اپراتورها ,تحريف گانه چند وراثت )مانند داشتند نفرت آن

است. گذاشته كنار به گرها( را

. گراست اساسا" شيئ كه است اين جاوا ويژگي مهمترين +c كه است. چيزي كد از مجدد استفاده توانائيoop ادعاي اولين

در , اما يابد دست آن به نتوانس888ته هرگز ادعاه888ايش تم888ام با+ يك كه دارد.همين ص88حت موض88وع اين ك88رد ث88ابت ج88اوا ق88دم اولين

آن در موج88ود ه88ايب پالتف88رم تمام براي بتواند افزاري نرم شركت كند( جوئي صرفه پول عظيمي مقدار )و كند تئليد را اي پروژه واحد )و همه ديگر ام88روزه باشد. و جاوا اقبال دليل بهترين تواند مي خود

اند. شده كشيده جاوا سمت ( به افزاري نرم شركتهاي فقط نه مي نويس برنامه پالتفرم( يك از )استقالل ويژگي اين با

است نكرده كار آن با هرگز كه بنويسد برنامه سيستمي براي تواند . اين88ترنت است اين88ترنت در ج88اوا توفيق ت88رين اصلي ويژگي . اين , دنيا سراسر در مختلف كامپيوتر ميليونها از است اي پيچيده شبكه

روي كه نوشت اي برنامه بتوان كه وسوسه اين برابر در مقاومت و س88اده چن88دان شود اجرا متجانس نا و متفاوت سيستمهاي اين تمام

نيست. تا كند نمي وادار را شما چون است ساده بسيار زبان يك حاوا

اطالعات كه كساني براي اين و كنيد كار ئي ناآشنا و جديد محيط در زبان . ساختار است مهم بسيار دارند كامپيوتر باره در ناچيزي فتي

Page 2: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

وجه هيچ به اين و است++c,c ش888بيه بس888يار اول نگ888اه در ج888اوا است زب88اني++cو س88اختيافته است زب88انيc. نيست تص88ادفي

از دنيا نويس88ان برنامه اعظم قس88مت همه از مهم88تر , و گ88را ش88يئ ط88رف به ح88ركت شباهت اين ديگر سوي . از كنند مي استفاده آنها

طراح88ان . بن88ابراين ك88رد خواهد س88اده افراد قبيل اين براي را جاوا م88دل عنوان به++c,c زبانهاي از كاري دوباره از اجتناب براي جاوا

اند. كرده استفاده

مديريت بار كشيدن دوش بر و گرها اشاره انداختن دور با جاوا ك888ابوس اين از هميشه ب888راي را++c/c نويس888ان , برنامه حافظه اين88ترنت ب88راي زب88اني جاوا چون آن بر . عالوه است بخشيده رهائي . طراح88ان است برخوردار باالئي ذاتي حفاظت و ايمني , از است

داش8888ته نظر مد را امن نويسي برنامه محيط يك ابت8888دا از ج8888اوا . دارد گرها اشاره با تنگاتنگي ارتباط سيستمها حفاظت اند.مسئله

اين از ديگ88ران سيس88تمهاي به قانوني غير ورود براي مهاجمان اكثر را راه اين گرها اشاره حذف با جاوا و ميكنند استفاده گرها اشاره

. است كرده سد مي آن تاريخچه به مختص88ري نگ88اه ج88اوا با بيش88تر آش88نائي ب88راي

اندازيم.

وب و اينترنت مختصر تاريخچه

در آمريكا متحده اياالت دولتي پروژه يك عنوان به اينترنت ( ن88امARPANET) ابت88دا در كه پ88روژه آم88د. اين ب88دنيا1969 سال

متصل هم به دنيا مختلف نق88اط در را ك88امپيوتر چه88ار , فقط داشت پنج888اه1972 س888ال در و ك888رد رشد ت88دريج به ك888رد. ارپ88انت مي

اواخر بودن88د. در فع88ال آن، در نظ88امي تحقيق88اتي مركز و دانش88گاه به عظيم ش88بكه اين در ك88امپيوتر هزار هشتاد از متجاوز1980 دهه )ش88بكه دس88تجات به خ88ود كامپيوترها بودن88د. اين ش88ده متصل هم

( اين88ترنت )يا ها ش88بكه ش88بكه و بودند شده تقسيم هاي( كوچكتري ملك اين88ترنت م88دت اين تم88ام ك88رد. در مي متصل يكديگر به را آنها

خصوصي ش88ركتهاي آنكه با و بود دانشگاهيان و محققان اختصاصي ح88اكم سياست ولي باش88ند داش88ته دسترسي آن به توانستد مي هم با1991 س88ال ب88ود.در ش88ده اين88ترنت از تجاري استفاده مانع آن بر

ولي ؛ شد دگرگ88ون اوض88اع اين88ترنت در تج88ارت ممن88وعيت ح88ذف ب88ود نقطه همين بود. از جدا هم از تحقيق و تجارت محدوده كماكان

Page 3: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

نزديك اكن88ون هم كه طوري به شد شروع اينترنت انفجاري رشد كه تم88ام به اين88ترنت دارندو عضويت شبكه اين در كاربر ميليون صد بر

است. كرده رسوخ زندگي زواياي تار شبكه )يا وب تولد از اما نيست جوان چندان اينترنت آنكه با

WWW, جهاني عنكبوتي -WORLD WIDE WEBزي88ادي ( زمان ذرات فيزيك اروپ88ائي آزمايشگاه در1989 سال در .وب گذرد نمي

(CERNمتولد ) لي برنز تيم زحم8888888888ات حاصل . وب شد (Time Berners-Leeدنيا سراسر فيزيك88888دانان تا داشت تالش كه ( ب88888ود

) متن ابر ص88ورت به و اين88ترنت ش88بكه در را خ88ود اطالع88ات بتوانندhypertextعم888ومي زب888ان اس888اس بر . وي بگذرند درمي888ان هم ( با

-Standard Generalised Markup Language) استاندارد عالمتگذاريSGMLمتن ابر عالمتگ888ذاري ن888ام به جديد زب888ان ( يك (Hypertext

Markup Language _HTMLاس88ناد انتقال . براي آورد ( بوجود HTMLمتن ابر انتقال پروتكل كه شد ابداع جديد پروتكل يك هم (

Hypertext Transfer protocol -HTTP) پروتكل . اين گ88رفت ن88ام اسناد. سريع نمايش و ,يافتن, بازيابي جستجو براي بود اي وسيله

اي برنامه , با منابع از اي شبكه در توان مي متن ابر از استفاده با خ88اص ويژگيه88اي با اس88نادي ( , ب88دنبالbrowser) كاوش88گر ن88ام به

نمايش را متون توانست مي فقط كاوشگر اولين كرد. چون كاوش فقط1993 درس8888ال حقيقت . در شد مواجه كمي اقب8888ال با دهد

وب محبوبيت . شروع داشت وجود دنيا سراسر در وب پايگاه پنجاه (Mosaic) موزائيك گ88رافيكي كاوش88گر ورود با آن آساي برق رشد و

س88وپر هاي كاربرد ملي )مركزNCSA در كاوشگر . اين بود همراه كاوش8888گر دهها دنيا در . ام8888روزه شد داده ( توس8888عه ك8888امپيوتر

. م88وفقيت دارد وج88ود وب پايگ88اه هزار يكصد از متجاوز و گرافيكي نت ش888ركتNCSA محقق888ان از اي ع888ده تا شد ب888اعث موزائيك كه است ش88ركتي هم88ان اين و كنند تاس88يس ( راNetscape) اسكيپ

Netscape يع88ني وب كاوشگر معروفترين navigatorك88رده توليد را در متع88ددي قابليتهايHTML بر عالوه اسكيپ نت . كاوشگر است وب و اين88ترنت رشد روند در تسريع باعث كه دارد مديا مالتي زمينهاست. شده وب و اينترنت تاريخ در سالها مهمترين از يكي1995 سال اما

توس8عه را اينترنتي ويدئوي مايكروسافت كه بود سال اين است: در متن ابر اس88ناد ناپ88ذير تفكيك اجزا ي از يكي به تبديل را صوت و داد خ88ود كاوش88گر به ش88مار بي قابليته88اي اف88زودن با اسكيپ نت ؛ كرد

Page 4: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

واقعيت مدلس88ازي زب88ان وي88رايش ك88رد. اولين زده ش88گفت را همه سان و ؛ آمد بازار ( بهVirtual Reality Language _VRML) مجازي

كرد. عرضه بدنيا طاليي سيني يك در را جاوا مي آن با كه يافتند را اب88زاري ج88اوا با وب دهن88دگان توس88عه

تع88املي ص88فحات توانس88تند بوجود اينترنت در مديا مالتي عطف نقطه اين و آورند

اين88ترنت تاريخچه در جدي88ديآيد. مي شمار به

جاوا تكامل

جاوا نويسي برنامه زبان ويژگيهاي

است ك88رده ف88رد به منحصر را آن كه دارد متع88ددي ويژگيه88اي ج88اوا يك ب88راي فقط كامپ88ايلر اين88ترپرتر.هر داردوهم كامپ88ايلر هم .ج88اوا

توليدكن88د. اجرايي كد توان ياآلفا(مي ،اپل )ماننداينتل خاص سيستم يك ع88رض ودر كند نمي ( توليدexe) اج88رايي كد ج88اوا كامپ88ايلر اما

كد دارد.ب88ايت ( ن88امbytecodeك88د) ب88ايت كه س88ازد مي بينابيني فايل هيچ متخص زب888ان اين اما ؛ است اس888مبلي زب888ان ش888بيه چ888يزي

وي88ژه ماش888ين يك اس888مبلي زب88ان بلكه نيست خاصي پروسس88ورjava virtuat) ج8888اوا مج8888ازي ماش8888ين machine - JVM)

چنين اجراي هنگام . در است

java) جاوا اجراي زمان پرتر اينتر اي برنامه runtime interpreterدستورات شود مي اجرا جاوا مجازي ماشين روي ( ،كه،

خواهد تبديل شود مي اجرا آن روي كه پروسسوري براي فهم قابلاست. كشيده تصوير به را فرايند اين زير كرد. شكل

و خود بر را كار همه اين جاوا چرا كه كنيد سئوال خود از شايد اما ب88راي مج88ازي ماش88ين و اليه همه اين ؟ است گرفته سخت ديگران بس88تر از ب88ودن آزاد ، ج88اوا ادعاه88اي بزرگ88ترين از يكي ؟ چيست

جاوا كاربردي هاي برنامه جاوا اشياء

جاوا مجازي ماشين يونيكس يا وين888دوز

os2 ش مكينتا

عامل سيستم

Page 5: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

در بخواهد ج88اوا اگر ؟ چه يع88ني اين . ام88ا، است اف88زاري س88خت اش88كالي هيچ ب88دون بتوانند بايد آن ه88اي برنامه باشد موفق اينترنت

به88تر ش88ما شود. اما اجرا اينترنت به متصل كامپيوترهاي تمام روي كامپيوتره88888اي از است عظيمي ش88888بكه اين88888ترنت كه دانيد مي

بر مبت88ني ه88ايpc تا گرفته عظيم كامپيوترهاي سوپر از نامتجانس؛ بر مبتني يونيكس هاي ماشين تا سي پاورپي و اينتل پروسسورهاي

روي تواند مي يي اج88را برنامه يك و...! چگونه آلفا پروسس88ورهاي : است س88اده اوليه اي88ده ش88ود؟ اج88را ها ك88امپيوتر وس88يع طيف اين

ماش88ين اين و ش88وند كامپايل مج88ازي ماش88ين يك ب88راي ها برنامه ش88ود. اين نصب اين88ترنت به متصل كامپيوتره88اي تمام روي مجازي

ت8ان اس88ت. برنامه گرفته پيش در جاوا كه است روشي همان دقيقا ق88رار خ88ود وب درپايگ88اه را آن كني88د؛ كامپايل ج88اوا كامپايلر يك با را

Java) ج88اوا به مجهز كاوش88گر يك با تا دهيد اطالع ديگ88ران وبه دهيدenabled Browser 8) يك دل در است ممكن )كه را برنامه اين

web– وب صفحه pageهرگز ( اجراكنن88د. ش88ايد باشد داش88ته قرار روي ايد نوش88ته اينتلpc يك با كه را اي برنامه كه كرديد نمي تصور

جاوا لطف به اكنون ولي شود، اجرا يونيكس يا مكينتاش ماشين يكنيست. نيافتني دست آرزويي ديگر اين هستند قدرتمندي بسيار زبانهايي شك بدون++CوC كه آن با يابن88د. ره88ايي آن از نتوانند هرگز ش88ايد كه دارند ذاتي اش88كاالتي اما

گره88اي اش88اره و حافظه ي88ريت مد در اش88كاالت اين ت88رين عم88دهC/C++نويس88ان برمامه اك88ثر اس88ت. ب88راي C/C++م88ديريت

ب88دليل ج88اوا كه آن است. با واقعي كابوس يك گرها واشاره حافظه ج88اوا در ولي دارد آن ش88بيه ظ88اهري++c الع88اده ف88وق محب88وبيت هم گر اش88اره و ميش88ود انج88ام خودك88ار ط88ور به حافظه م88ديريت

بس88يار ج88اوا در هم ها آرايه با . ك88ار ن88دارد ج88ود ج88اوا اساس88ا" در ها آرايه ج8888اوا در چ8888ون است++c\c از تر مطمئن و تر س8888اده از را ها آرايه با ك88ار مش88كالت تم88ام كه هس88تند كالس يك از عضوي استفاده كردن بهينه زمينه در . جاوا دارد مي بر نويس برنامه دوش

ج88اوا ويژگيه88اي از يكي ؛ است اسالفش از تر قوي بسيار حافظه ازاست. مصرف بي هاي چيز از حافظه خودكار پاكسازي

در . جاوا است رسيده خود غايت به جاوا در گرائي شييء را اص88ول از تخطي و است وس88ختگير مقيد بسيار اشياء از استفاده

برنامه م88وازات به اش88ياء از توانيد مي ش88ما++c . در پ88ذيرد نمي چن88ان ك88ار پاي88ان اك88ثرا" در و كنيد اس88تفاده ق88ديم س88بك به نويسي برنامه روش8888هاي با ن آن م8888ديريت كه آيد مي بوج8888ود اي ملغمه

Page 6: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

ديگر . ج88اوا ق88ديمي روش88هاي با نه و دارد امكان شييءگرا نويسي! كنيد گرفتار اي مخمصه چنين در را خود تا دهد نمي اجازه شما به

جاوا با نويسي برنامه شروع

است خود به متكي برنامه يك نويسيم مي كه اي برنامه اولين آن در اپلت يك و خود به متكي برنامه يك . تفاوتHelloWorld بنام

اس88تفاده)(main بن88ام مت88دي از خود به متكي برنامه در كه استندارد. متدي چنين اپلت كه حالي در شود مي Hello" جمله فقط و است ساده بسيارHello World نامه بر

Worldس88نگ بعنوان آن از توان مي حال اين با دهد مي نمايش " را ج88اوا ه88اي برنامه تمام چون كرد استفاده پيشرفته هاي برنامه بناي

. دارند مشابهي كاري ساختارجاوا. برنامه اولين

1:class hello world {

2: public static void main(String args[]){

3: system.out.println(“Hello World”);

4: }

5:}

و كامل برنامه يك ويژگيه88اي تم88ام داراي خطي پنج برنامه اين . شييءگراست مفصل

نكته

java.نام با را برنامه HelloWorld برنامه . ن88ام ك88نيم مي ذخيره باشد. برنامه كالس همان نام بايد

برنامه تحليل

: دارد مهم قسمت دو برنامه اين

براي نوشتن برنامه هاي جاوا از هر اديتوري كه . توليد كند مي توان استقاده كردASCIIخروجي

Page 7: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

است. كالس يك تعريف واقع در برنامه تماممتد در برنامه كل main)(دارد. قرار

( استفادهjavac) جاوا كامپايلر از بايد برنامه كردن كامپايل براياست: كارچنين . روش كرد

Javac HelloWorld.java

HelloWorld.class بنام كالس فايل يك كار پايان از بعد كامپايلر يك برنامه كالس هر براي . اصوال" كامپايلر كرد خواهد توليد فايل يك شده توليد . فايل كرد خواهد توليد جداگانه كالس فايل

اينترپرتر از بايد برنامه اين اجراي .براي نيست مستقل اجرائي اجراي دارد. براي نامjava, جاوا . اينترپرتر كرد استفاده جاواكنيم: مي چنين شده توليد كالس فايل

Java HelloWorld Hello" جمله , بايد باشد رفته پيش درست چيز همه اگر

World!كنيم. مشاهده خود كامپيوتر صفحه روي " را

نكته

جاوا اپلت يك ايجاد

آن بر متفاوتي قواعد و دارد فرق برنامه ايجاد با اپلت ايجاد مي نوش88ته وب ص88فحات در اجرا براي اپلت فرماست. يك حكم

يك واقع اس88ت. در برنامه يك از تر پيچي88ده كمي اين بن88ابر ش88ود را خ88ود نش88ودخروجي اج88را كاوش88گر يك در كه زم88اني تا اپلت

داد. نخواهد نمايشنام HelloWorldApplet, نويسيم مي زير در كه اپلتي

دارد.Hello World اپلت

1: import java.awt.Graphics;

2:

( دو چيز متفاوتند java( و اينترپرتر جاوا )javacكامپايلر جاوا ). كامپايلر از فايل متن برنامه يك فايل كالس مي سازد و

اينترپرتر قايل كالس را اجرا مي كند.

Page 8: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

3: public class HelloWorldApplet extends java.applet.Applet{

4:

5: public void paint(Graphics g) {

6: g.drowString(“Hello world!”,5,25)

7: }

8: }

يك م88ورد . در كنيد ذخ88يرهHelloWorldApplet.java ن88ام با را اپلتكرد: توجه نكته چند به بايد اپلتدس8888تور importدس8888تور ش8888بيه يك خط در #includeدر C

ب88رايJDK كالس88هاي از نواند مي اپلت دس88تور اين اس88ت, باكند. استفاده گرافيكي كارهاي

متد paint)(جا اين اس88ت. در اپلت محتوي88ات نم88ايش ب88راي ش88د. خواهد داده نم88ايش ص88فحه روي!HelloWorld عب88ارت

()init مت88888دهاي از آن ج88888اي به و ندارند)(main متد ها اپلتstart,)(يا paint)(كنند. مي استفاده

كنيد: چنين اپلت اين كردن كامپايل برايJavac HolloworldApplet.java

بن88ام كالس فايل يك كامپ88ايلر هم ح88الت اين در HelloWorldApplet.class اج88راي براي . اما كرد خواهد ايجاد

HTML فايل يك ايج88اد آن و برداشت بايد ن88يز ديگر قدم يك اپلت فايل يك زير ليست . در شد خواهد اج888888را آن در اپلت كه است

HTMLكنيم. مي مشاهده منظور اين برايHello World اپلت اجراي برايHTML يك

1:<HTML>

2:<HEAD>

3:<TITLE>Hello to everyone</TITLE>

4:<HEAD><BODY>

Page 9: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

5:<P>My java Applet says:

6:<APPLET CODE=”HelloWorldApplet.class”WIDTH=150 HEIGHT=25>

7:</APPLET>

8:</BODY>

9:</HTML>

از بايدHTML فايل در اپلت يك اج88888راي ب88888راي برنامه تحليلكرد. استفاده<APPLET> برچسب

از است آن در اپلت كه كالسي ن88ام ك88ردن مش88خص ب88راي كنيد. استفاده كد صفت

اج88را آن در اپلت كه پنجره88اي ابع88اد ك88ردن مش88خص ب88راي كنيد استفادهGHT,HEIGHT WI هاي صفت از شد خواهد. هستند پيكسل حسب بر شده مشخص . اعداد

. ح888اال كنيد ذخ888يرهHelloWorldAppl.html ن888ام با را فايل اين پ88ذير امك88ان روش دو به ك88ار كنيد. اين اجرا را اپلت تا ايد آماده

است:اسكيپ. نت مانند جاوا به مجهز كاوشگرهاي از استفادهبرنامه از اس8888تفاده appletviewerبا كه JDKآي8888د. اين مي

اپلت فقط و دهد نمايش تواند نمي را وب صفحه كل برنامهداد. خواهد نمايش را

باز را فوقHTML ,فايل كاوشگر يك در اپلت ديدن براي در نم888ايش به آن درون اپلت و وب ص888فحه ك888ار اين با ؛ كنيد

است: چنينappletviewer از استفاده آمد. روش خواهندAppletviewer (path)/Helloworldapplet.html

نكته

را از محل فايل appletviewerبا اينكه مي توان برنامه HTML اجرا كردولي در اين حالت بدون بستن آن نمي

توان مجددا" بار كرد . در حاليكه اگر مشاهده گر اپلت از محل ديگري اجرا شود مي توان يك اپلت را تغيير

داده , مجددا" كامپايل كرده و سپس دوباره در .مشاهده گر بار كرد

Page 10: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

جاوا اپلتهاي كليات ؛ گ88يرد مي سرچشمه آن اپلتهاي از جاوا محبوبيت بيشترين وب ص8888فحات دل در كه است ك8888وچكي ( برنامهapplet) اپلت

java) ج88اوا به كاوش88گرمجهز يك با و گ88يرد مي ق88رار enabled browserآش88نائي ب88راي زير . در ك88رد مش88اهده را آن توان ( مي

پردازيم: مي زير مسائل به اپلت با بيشتربرنامه و اپلت تفاوتس88اده اپلته88اي توان مي چگونه و كند مي كار چگونه اپلت

نوشتوب صفحات در اپلت دادن قراراپلت به پارامتر ارسال

برنامه با اپلت تفاوت كمك ،با مس88تقل صورت به توان مي را جاوا هاي برنامه به قبل هفته ه88اي درس تم88ام تقريبا ك88رد؛ اج88را ، ج88اوا اينترپرتر

يك در بايد جاوا هاي اپلت داشت. ولي اختصاص جاوا هاي برنامه ه888اي برچسب كمك با ها اپلت اين ش888وند؛ اج888را وب كاوش888گر

HTML اپلت كه شوند. باآن مي داده قرار وب صفحه دل در آنجا از مح88دوديتها دارن88د.اين بيش88تري گ88رافيكي ه88اي هاق88ابلت

هس88تند خ88ارجي ه88ايي برنامه اص88وال ها اپلت ميش88وندكه ناشي بايد م88وذي ه88اي اپلت احتم88الي ص88دمات از جلوگ88يري وب88راي

در ج88اوا س88دهاي تم88ام وج88ود ك88رد. با تعبيه آنها راه سر سدهايي كه است شده نوشته ها اپتلت اين با ويروسهايي ، ها اپلت مقابل م88وذي جلوي تواند نمي هم ها محدوديت اين دهدحتي مي نشان نبودنش88ان از آنها ب88ودن ح88ال هر به ولي ، بگ88يرد را اي عده گريقرارند: اين از محدويتها اين ؛ است بهترآن كنن88ده اج88را فايل سيس88تم به مواردمحدود، در اپلت،جز

همين اج88ازه كاوش88گرها از بعضي ن88دارد. ح88تي دسترسي. دهند نمي هم را محدود دسترسي مقدار

ش88ده ب88ار آنجا از ك88امپيوتري جز شبكه، از اي نقطه با اپلت بگيرد. تماس تواند نمي است،

Page 11: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

كنن88ده اجرا سيستم روي را اي برنامه هيچ تواند نمي اپلت كند. اجرا آن

هاي فايل جز اي، برنامه هيچ تواند نمي اپلت DLL، به را كند. اجرا سيستم داخل

از جلوگ88يري ب88راي ه88ايي مكانيزم داراي خود جاوا ، اين بر عالوهاست. مشكوك اعمال

نكته

جاوا اپلتهاي ايجاد

كالس يك داراي حداقل بايد جاوا برنامه هر دانيدكه مي ه88اي اس88ت. اپلت ال88زامي كالس اين در همmain)( وج88ود و باشد

main)( متد به ولي باش888ند داش888ته يككالس ح888داقل بايد هم ج888اواندارند. نيازي )درAPPLET كالس از كالس زير يك بايد ،ابت88دا اپلت يك ايج88اد براي م88ورد چيزه88اي تم88ام اپلت آوريد. كالس وجود ( بهjava.applet بستر م88اوس، ، گ88رافيكي عناصر وب، كاوش88گرهاي با ارتب88اط ب88راي ني88از

از تواند مي اپلت كه اين دارد. با خ88ود در را وم88انيتور كليد ص88فحه كالس از آن اص888لي عملك888رد ولي كند اس888تفاده ديگر كالس888هاي

APPLETاست: چنين هميشه اپلت گيرد. يك مي نشاتPublic class Myclass extends java.applet.applet {

}

اص88لي كالس فقط البته باش88ند؛public بايد ج88اوا هاي اپلت تمام . باش88ندprivate يا public توانند مي ها كالس س88اير كلي اپلت

كالس ، خ88ورد مي بر اپلت يك به وب ص88فحه يك در ج88اوا وق88تي . كند مي ب88ار ش88بكه روي از آن( را ض88ميمه كالس88هاي )و اص88لي

ب88ا وجود تمام س88دها و محدوديتهاي اعمال شده روي اپل8ت هاي جاوا، هي8چ چيزنم8ي توان8د جلوي ي8ك برنام8ه نوي8س باهوش را در رخن8ه ب8ه اي8ن س8د بگيرد. شرك8ت س8ان تمام برنام8ه نويس8ان دني8ا را ب8ه مبارزه طل88بيده واز آنه88ا دعوت كرده ت88ا خالقي88ت خود را ب88ا

شكستن سدهاي امنيتي جاوا محك بزنند.

Page 12: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

سازد مي وهله يك آن اصلي كالس از اپلت يك اجراي هنگام جاوا توانند مي يك88ديگر ب88راي م88زاحمت ايجاد بدون اپلت چند بنابراين

شوند. اجرا كاوشگر يك در واحد آن در

اپلت يك اقدامات مهمترين از كه هس88تند)(main متد يك داراي ج88اوا ه88اي برنامه كه دي88ديم

نظر اين از ها ك88رد. اپلت تنظيم را برنامه رفت88ار ت88وان مي آنجا اپلت يك زن88دگي ط88ول هس88تند. در ها برنامه از تر پيچي88ده كمي

مي زي88ادي اجراس88ت( اتفاق88ات ح88ال در كه زم88اني م88دت )يعني يا گ8رافيكي، اج8زاء آم8يزي رنگ اپلت، س8ازي آماده – بيفتد تواند

خ88اص متد يك داراي روي88دادها اين از يك م88اوس. هر روي88دادهاي انج8ام ك8اري هيچ ف8رض پيش ص8ورت به مت88دها هستند. اين خود ها متد اين خ88ود اپلت نيازهاي به بسته بايد ما بنابراين دهند، نمي

م88ورد را مت88دها اين مهم88ترين از تا پنج اينجا ك88نيم. در تحريف را) ش88روع (،initialization) س88ازي : آم88اده دهيم مي ق88رار بحث

starting) توقف (stopping، 8) (تخريبdestroyingو ) آميزي رنگ (painting. )

سازي آماده مي ب88ار اول ب88ار ب88راي اپلت كه دهد مي روي زماني سازي آماده

مق88دار نياز، مورد اشياء ايجاد شامل تواند مي سازي شود. آماده ك8ردن ست و ها ف88ونت يا تص88اوير ك8ردن ب8ار ه88ا، متغ8ير به دادن

است: چنين رويداد اين باشد. متد پارامترهاPublic void init() {…}

شروع متوقف اپلت يك ش88ود. اگر مي ش88روع اپلت سازي، آماده از بعد

وق88تي ك88رد. مثأل ش88روع دوب88اره آن88را ت88وان مي هم باشد ش88ده و ش88ود، مي متوقف اپلت رود مي ديگر ص88فحه يك به خوانن888ده ش88روع دوب88اره اپلت گشت بر ص88فحه اين به دوب88اره كه هنگ88امي

مي ولي ش88ود مي سازي آماده بار يك فقط اپلت شد. هر خواهد چ88نين ش88روع گ88ردد. متد متوقف و ش88ده ش88روع بار چندين تواند

است: Public void start() {…}

Page 13: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

توقف را ص88فحه يك خوانن88ده وق88تي يكديگرن88د؛ مالزم ش88روع و توقف مي متوقف ص888فحه آن درون ه888اي اپلت كن888د، مي ت888رك موقتأ

كرد. به متوقف توان مي هم دستي صورت به را اپلت شوند. يك كن8د، مي ت8رك را ص8فحه يك خوانن88ده وق88تي ف8رض پيش صورت

اج88راي به كرده اندازي راه اپلت كه ( هاييthread) ريسمان تمام اين ب888ود خ888واهيم ق888ادر ما)(stop متد . با دهند مي ادامه خ888ود

چ88نين)(stop ف88رض پيش متد چ88ون ، ك88نيم متوقف را ريس88مانها: است ذيل مانند متد اين . امضاء كند نمي كاري

Public void stop () {…}

تخريب منظ88ور واقع در اما رسد مي نظر به خشن كمي تخريب اصطالح

: است آن ك88ار پاي88ان از بعد اپلت يك پاهاي ردّ تمام كردن پاك آن كه ه88ايي ريس88مان تم88ام به دادن پايان ، سيستم منابع كردن آزاد

. ك88رده ايج88اد اپلت كه اش88يائي ب88ردن بين از و ، انداخته راه اپلت: است چنين)(destroy متد امضاء

Public void destroy() { …}

را ريس88مان يك اپلت كه وقتي مثال ، خاص موارد در فقط معموأل. آيد مي پيش متد اين از استفاده به نياز ، باشد كرده اندازي راه

نكته

آميزي رنگ نم88ايش صفحه تصوير( روي خط، ، )متن چيز يك ترسيم نحوه به

به اپلت يك ظ88اهر در كه تغي88يري ش88ود. هر مي گفته آميزي رنگ يك اج88راي ط88ول دهد. در مي روي آميزي رنگ رويداد ، آيد وجود متد ده88د. امض88اء رخ روي88داد اين ب88ار ص88دها است ممكن اپلتpaint)(است چنين :

Public void paint (Graphics g) {…}

)( مخت88ص destroy چيس88ت ؟ مت88د finalize)( ب88ا مت88د destroyتفاوت مت88د )( ي8ك مت8د كل8ي اس8ت ك8ه ب8ا اشياء س8ر و finalizeاپل8ت هاس8ت ، در حاليك8ه

كار دارد .

Page 14: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

،Graphics كالس از اي وهله ، آرگوم888ان يك)(paint متد مي ميpaint متد به و ك888رده ايج888اد كاوش888گر را ش888يء گ888يرد. اين

بايد حتمأ ولي ؛ باش88يم آن نگران ما نيست الزم بنابراين ، فرستد: كنيم خود اپلت وارد ( راjava.awt بسته )درGraphics كالس

import java.awt.Graphics;

ساده اپلت يك اپلت . آن نوشت س8888اده اپلت يك ت8888وان مي چگونه كه دي8888ديم

HelloAgainAppletبا اپلت هم888ان زير ليست داش888ت. در ن888ام : است شده داده نمايش مختصري تفاوتهاي

Hello again اپلت

1: import java.awt.Graphics;2: import java.awt.Font;3: import java.awt.Color;4: 5: public class HelloAgainApplet extends java.applet.Applet {6: 7: Font f = new Font(“TimesRoman”, Font.BOLD, 36);8: 9: public void paint(Graphics g) {10: g.setFont(f);11: g.setcolor(COLOR.red);12: g.drawstring(“Hello again!”, 5, 50);13: }14: }

برنامه تحليل اپلت يك اين . چ88ون است ش88ده تحريف)(paint متد اپلت اين در

ن88دارد. ك88ار)(stop و)(start و)(init مت88دهاي ، است س88اده واقعأ مي انجام)(paint متد ( در”!Hello again“ پيام )چاپ متد اصلي

ارسال گرافيكي شيء رنگ و فونت11 و10 هاي خط شود. درشوند. مي ( ستg) اپلت به شده پيام كه ،drawstring . متد شود مي انجام12 خط در پيام چاپ

مختص88ات و ، پي88ام : متن گ88يرد مي پ88ارامتر سه ، نويسد مي را پي88ام زير . ش88كل نم88ايش ص88فحه روي ( آنx,y) ع88رض و ط88ولدهد. مي نشان را اپلت توسط شده داده نمايش

Page 15: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

Hello again!

وب صفحه يك در اپلت دادن قرار آن ك88ردن كامپايل و اپلت ني88از مورد هاي كالس تمام ايجاد از بعد زب88ان از اس88تفاده با بايد است( ، جاوا هاي برنامه ساير مانند )كه

HTMLب88راي دهيم ق88رار آن در را اپلت و س88اخته وب صفحه يك خاصي (tag) برچسب از بايد وب ص88فحات در اپلت دادن ق88رار

. كنيم استفاده

" APPLET" برچسب" برچسب از بايد وب ص8888فحه در اپلت يك دادن ق8888رار ب8888راي

APPLETبه را س88اده وب صفحه يك زير كنيم. ليست " استفاده دهد. مي آن( نشان دل )در اپلت يك همراه

ساده.HTML صفحه يك

1: <HTML>2: <HEAD>3: <TITLE>This page has an applet on it </TITLE>4: </HEAD>5: <BODY>6: <P>My second java applet says:7: <BR>APPLET CODE=”HelloAgainApplet.class” WIDTH=200 HEIGHT =50>8: Hello Again!9: </APPLET>10: </BODY>11: </HTML>

برنامه تحليلداشت: توجه چيز سه به بايد<HTML> برچسب در

ص88فت CODE، . اين است اپلت كالس فايل ن88ام . اگر باشد وب ص88فحه دايركتوري همان در بايد فايل

Page 16: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

از بايد دارد ق888رار ديگ888ري دايركت888وري در فايل اينCODEBASEكنيم. استفاده

ه88اي صفت WIDTHو HEIGHTمس88تطيلي ابع8اد . كنند مي مشخص را شد خواهد اجرا آن در اپلت كه

ابع88888اد از اپلت ابع88888اد كه داشت دقت بايد هميشه قادر كاوشگرها از برخي چون نرود فراتر وب صفحه

نيستند. وضعيت اين كنترل بهمي اج88را آن در وب ص88فحه اين كه كاوش88گري اگر

مجهز )يعني نشناسد را<APPLET> برچسب شود>/ و<APPLET> بين نباش888888د( متن ج888888اوا به

APPLET>يك آنجاييكه . از داد خواهد نم888888ايش را ب88ار مختلفي كاوش88گرهاي در تواند مي وب ص88فحه

پي88ام يك قس88مت اين در كه است خ88وبي اي88ده ، شود است اپلت يك قس88مت اين كه بگ88وئيم و دهيم ق88رار

رويت قابل ج888اوا به مجهز كاوش888كرهاي در فقط كهباال(. مثال باشد)مانند مي

, مانند<APPLET> برچسب چ8888ون كه باش8888يم داش8888ته توجه يك داخل در بايد نيست پ88اراگراف يك , خ88ود<IMG> برچسب

باشد. داشته ( قرار<P>/ و<P > (پاراگراف

نتيجه ت8888وانيم , مي داريمHTML فايل يك و كالس فايل يك كه ح8888ال

اين تا كافيست ك88نيم.س88پس ب88ار كاوش88گر يك در را وب ص88فحه وب خدمتگ88ذار يك روي ( راHTML فايل و كالس )فايل مجموعه

(web serverكپي ) به هستند اينترنت روي كه كساني تمام تا كنيم كنند. پيدا دسترسي آن

" APPLET" برچسب درباره ديگر كمي,HEIGHT,WIDTH از اس88تفاده , با شكل ترين ساده در CODE

<APPLET> آورد. ولي, برچسب وج888ود به اپلت يك ت888وان مي به88تر ط88راحي به كه هست هم ( ديگ88ريattributes) صفات داراي

. كنند مي كمك وب صفحه يك

نكته

ALIGN

< IMG< برچسب تقريبأ همانند صفات برچسب >APPLETصفات >است.

Page 17: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

ص88فحه روي بايد چگونه اپلت كه كند مي تع88يينALIGN ص88فت : بگ8888يرد مق8888دار9 تواند مي ص8888فت . اين گ8888يرد ق8888رار وب

LEFT ,)چپ(RIGHT ,)راس888ت(TOP ,)ب888اال( TEXTTOPمتن( مطل88888ق(, )وسطABSMIDDLE)وس88888ط(, MIDDLEب88888اال(,

BASELINEمبن888888888888888ا(, )خطBOTTOM,)پ888888888888888اييين( ABSBOTTOMمطلق(. )پايين

, اپلتALIGN = RIGHT وALIGN = LEFT باشيم داشته اگر كه ش88ود. مت88ني مي ت88راز ص88فحه راست و ت88رتيب( چپ )به از

اپلت ديگر س88مت به يا يابد مي امت88داد آنق88در ش88ود مي نوش88ته (<BR>) خط قطع برچسب از ت888888وان مي اينجا برس888888د, در

در طويل متن يك كه ك88رد ك88اريCLEARصفت با و كرد استفادهCLEAR: ش88ود داده نم88ايش خط چند = LEFTنقطه اولين از

R, كند مي ش88روع چپ حاش88يه در خ88الي = RIGHT CLEAاز كند مي شروع خطي ازCLEAR = ALL و كند مي شروع راست

است رابطه همين در زير باشد. مث88ال خالي آن حاشيه دو هر كه:

<P><APPLET CODE = “HelloAgainApplet”WIDTH=300 HEIGHT = 200ALIGN=LEFT>Hello Again! </APPLET>To the of this paragraph is an applet.It’s a simple, unassuming applet, in which a small string is printed in red type, set in 36 point Times Bold.<BR CLEAR=ALL><P>In the next part of the page, we demonstrate how under certain conditions, Styrofoam peanuts can be used as a healthy snack.

مقداري و شده تراز وب صفحه چپ حاشيه از اپلت مثال اين در در متن م888ابقي . س888پس ش888ود مي نوش888ته آن دنب888ال به متن

. شد خواهد نوشته ديگري پاراگراف خط يك از بيش هم آن دنب88888888ال به متن و باشد كوچك اپلت اگر

ك88ار اين . ب88راي كرد عمل تري ساده صورت به توان , مي نباشد استفاده ذيل ترتيب بهALIGN صفت از مقدار هفت از توان مي

كرد:ALIGN = TEXTTOPت88رين طويل باالي با را اپلت باالي

. كند مي تراز خط در موجود متنALIGN = TOPدر موج88ود آيتم ب88االترين با را اپلت باالي

ص8888رفأ , يا تص8888وير , يك ديگر اپلت يك تواند مي )كه خط. كند مي باشد( تراز خط باالي

ALIGN = ABSMIDDLEوسط وسط با را اپلت كند. مي تراز خط آيتم بزرگترين

Page 18: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

ALIGN = MIDDLEمبن88اي خط وسط با را اپلت وسط كند. مي تراز متن

ALIGN = BASELINEمبناي خط وسط با را اپلت پايين است.ALIGN = BOTTOM كند.مشابه مي تراز متن

ALIGN = ABSBOTTOMت88رين پ88ايين با را اپلت پ88ايين يك يا و متن مبن888اي خط تواند مي )كه خط در موج888ود آيتم

كند. مي باشد( تراز تصوير يك , يا ديگر اپلتHSPACEو VSPACE

اط88راف متن و اپلت بين فضايVSPACE وHSPACE صفات VSPACE و افقي فاص888لهHSPACEكنن888د: مي تع888يين آن888را

مي پيكسل حسب بر فواصل اس8888ت. اين عم8888ودي فاص8888له: زير مثال باشند. مانند

<P><APPLET CODE = “HelloAgainAplet”WIDTH=300 HEIGHT = 200ALIGN=LEFT VSPACE=50 HSPACE=50>Hello Again! </APPLET>To the left of this paragraph is an applet.It’s a Simple, unassuming applet, in which a small string is Printed in red type, set in 36 point Times bold.<BR CLEAR=ALL><P>In the next part of the page, we demonstrate howunder certain condition, Styrofoam peanuts can beused as a healthy snack.

قس88مت( دو هر )در آن اط88راف متن و اپلت بين مث88ال اين در. است شده تعبيه فاصله پيكسل50

CODEو CODEBASE كن88د. اگر مي مش88خص را اپلت كالس فايل ن88امCODE صفت

كالس ك88نيم, فايل اس88تفاده اپلت ن8ام تع88يين براي CODEاز CODEBASE ص888888فت از بايد باشد ديگ888888ري محل در اپلت

ت88وان مي را اپلت ن88ام فقطCODE در چ88ون ك88نيم اس88تفاده هم را فايل مسير توان ميCODEBASE با ولي كرد مشخصكرد: مشخص

<APPLET CODE = “myclass.class” CODEBASE = “classes” WHITH = 100 HEIGHT = 100 ></APPLET>

. دارد قرارclasses دايركتوري در كالس فايل فوق مثال در

ها اپلت به پارامتر ارسال متد به ت88وان مي ج88اوا ه88اي برنامه در چگونه كه دي88ديم قبأل main)(ولي داد ق88رار اس88تفاده مورد را آنها و فرستاد آرگومان .

Page 19: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

اپلت يك به ت88وان مي نيس88تند, چگونه فرم88ان خط داراي ها اپلت> برچسب در ك888ار فرس888تاد. اين متف888اوت ه8888اي آرگوم888ان

APPLET>پ88ارامتر بتواند اپلت يك آنكه است. براي پذير امكان : داريم نياز چيز دو , به كند قبولبرچسب يك <PARAM>فايل در HTMLدراپلت پارامترها اين تحليل براي الزم كد

يك , در مق88دار. مثأل يك و ن88ام دارد: يك قس88مت دو پ88ارامتر هر به را ها انيميشن نم888ايش س888رعت يا متن رنگ ت888وان مي اپلت

اختي88اري ك88امأل پارامترها . ن88ام ك88رد ارسال آن به پارامتر صورت. است

ني888از<PARAM> برچسب يك بهHTML فايل در پ888ارامتر هر وNAME ص888فت دو داراي بايد<PARAM> برچسب هر دارد؛

VALUEزير مثال باشد. مانند :<APPLET CODE=”MyApplet.class”WIDTH=100 HEIGT=100><PARAM NAME=font VALUE=”TimesRoman”><PARAM NAME=size VALUE=”36”>A java applet appears here.</APPLET>

ش88وند: مي فرستادهMyApplet اپلت به پارامتر دو فوق مثال در وsize ن888ام به دومي وTimesRomanمق888دار وfont ن888ام به اولي

.38مقدار ش88وند. مي ارس88ال آن به هم ش88ود, پارامترها مي بار اپلت وقتي متد از استفاده با و)(init متد در توان مي را پارامترها اين مقدار

getParameterك888رد.متد اخذ getParameter)(آرگوم888ان يك فقط را ش88ده خواس88ته پ88ارامتر مق88دار متد اين ؛ پارامتر گيرد: نام مي

است. رشته يك همواره متد اين برگشتي مقدار گرداند. و برمي پ88ارامتر داشت( مقدار خواهد قرار)(init متد در )كه ذيل دستور

fontگيرد: مي راString theFontName = getParameter ( “font” ) ;

نكته

فايل در)(getParameter متد در ش8888ده خواس8888ته پ8888ارامتر اگرMTMLمق88دار متد باش88د, اين نداش88ته وج88ود nullخواهد بر را

است: شده نوشته وضعيت اين با مقابله براي ذيل گرداند. كدIf (theFontName == null) TheFontName = “Courier”

)( بايد دقيقأ getParameter< و در متد PARAMنام پارامتر در برچسب >مانند هم باشند؛ توجه داشته باشيم كه جاوا نسبت به نوع حروف

حساس است.

.

Page 20: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

ب8رمي رش88ته يك هم8واره)(getParameter متد كه گف8تيم نيز قبأل از نيس888ت, قبل رش888ته يك واقعأ برگش888تي مق888دار اگر – گرداند

كنيم: عوض آنرا نوع بايد آن از استفاده

Int theSize;String s = getParameter (“size”);If (s = = null) TheSize = 12;Else theSize = integer.parselnt(s);

اپلت در تغي8888888يري ف8888888وق تكنيك از اس8888888تفاده با ح8888888الHelloAgainAppletاز بعد ن8888888888ام اينجا دهيم. در مي Helloبه

به ديگ88ري نگاه شد. ابتدا خواهد ارسال آن به پارامتر يك صورتاندازيم: مي اپلت اين اوليه شكل

Import java.awt.Graphics;Import java.awt.Font;Import java.awt.Color;

pubic class MoreHelloApplet extends java.applet.Applet { font f = new Font (“TimesRoman”, Font.BOLD, 36); public void paint (Graphics g) { g.setFont (f); g.setColor (color.red); g.drawstring (“Hello Again!, 5 , 50); }}

ب88راي متغ88ير يك تعريف دهيم مي اپلت اين در كه تغي88يري اوليناست: نام نگهداري

String name; پيش نام است. يك)(init متد پارامترها گرفتن براي محل بهترين در پارامتر اين وجود عدم صورت )در تا ايم كرده تعيين هم فرضنشود: اجرا نام بدون ( اپلتHTML فايل

public void init() {name = getParameter (“name”); if (name = = null) name = “Laura”; }

به دلخواه پيام تا كنيم مي تركيبHello كلمه با را نام اين سپسدهيم(: انجام)(init متد در هم را كار اين است آيد)بهتر دست

Name = “Hello “ + name + “!”; است:)(paint متد درdrawStringمتد دادن تغيير بعد قدم

g.drawstring (name, 5, 50) ;

Page 21: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

مي مش88اهده يكجا را فوق در شده اعمال تغييرات زير ليست دركنيم:

MoreHelloApplet كالس

1: Import java.awt.Graphics; 2: Import java.awt.Font; 3: Import java.awt.Color; 4: 5: pubic class MoreHelloApplet extends java.applet.Applet { 6: 7: Font f = new Font (“TimesRoman”, Font.BOLD, 36); 8: String name; 9:10: public void init() {11: name = getParameter(“name”);12: if (name = = null)13: name = “Laura”;14: name = “Hello “ + name + “!”;15: }16:17: public void paint(Graphics g) {18: g.setFont(f);19: g.setColor(Color.red);20: g.drawstring(name, 5, 40);21: }22: }

ليست در تغي88يرات اين ب88دهيم؛ تغييراتي بايد همHTML فايل در است: شده لحاظ زير

.MoreHelloApplet كالس برايHTML فايل

1: <HTML> 2: <HEAD> 3: <TITLE>Hello!</TITLE> 4: </HEAD> 5: <BODY> 6: <P> 7: <APPLET CODE=”MoreHelloApplet.class” WIDTH=200 HEIGHT=50> 8: <PARAM NAME=name VALUE=”Bonzo”> 9: Hello to whoever you are!

Page 22: بسمه تعالهzums.ac.ir › files › IT › site › maghale › javas.doc · Web viewاين شيء را كاوشگر ايجاد كرده و به متد paint مي فرستد

10: </APPLET>11: </BODY>12: </HTML>

برنامه: تحليلدارد)خط قرار آن در<APPLET> برچسب كه خطي زير در اپلت به نام يك كه بينيم مي را<PARAM> برچسب ( , يك8

فرستد. ميبينيم. مي را پارامتر بدونHTML فايل يك هم زير مثال در

MoreHelloApplet اپلت براي ديگرHTML فايل يك 1: <HTML> 2: <HEAD> 3: <TITLE>Hello!</TITLE> 4: </HEAD> 5: <BODY> 6: <P> 7: <APPLET CODE=”MoreHelloApplet.class” WIDTH=200 HEIGHT=50> 8: Hello to whoever you are! 9: </APPLET>10: </BODY>11: </HTML>

پايان

گرامي. استاد شما زحمات از تشكر با