مهندس علی رضوانی مقدم در

Download Report

Transcript مهندس علی رضوانی مقدم در

‫دانشگاه علمی کاربردی‬
‫جهاد دانشگاهی مشهد‬
‫‪Introduction to Java‬‬
‫فصل ‪1‬‬
‫مهندس علی رضوانی مقدم‬
‫بهار‪92‬‬
‫‪ ‬سرفصلهاي يادگيري هر زبان برنامه نويس ي عبارتند از‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫قالب كلي زبان‬
‫قالب كلي دستورات‬
‫انواع داده ها‬
‫تعريف متغير و نحوه انتساب و قوانين نامگذاري‬
‫دستورات شرطي و كنترلي‬
‫دستورات تكرار‬
‫ساختمان داده ها (آرايه ها ‪،‬رشته ها و‪)...‬‬
‫نحوه كار با فايلها‬
‫نحوه نوشتن توابع‬
‫و‪....‬‬
‫‪1‬‬
‫دسته بندي زبانهاي از لحاظ نزديكي به سخت افزار‪:‬‬
‫سطح پايين مانند اسمبلي‬
‫سطح ميانه مانند ‪C,C++‬‬
‫سطح باال مانند ‪.net،Delphi،Pascal،Java‬‬
‫دسته بندي به لحاظ ساخت يافتگي –ش ي گرا‪:‬‬
‫ساخت يافته ‪Pascal،C‬‬
‫ساخت يافته‪-‬ش ي گرا ‪.net،Delphi،JAVA،C++‬‬
‫غيرساخت يافته ‪qbasic‬‬
‫‪2‬‬
‫چرا فنجان قهوه؟‬
Any Where
Every Where
Java Is There
3
‫تاریخچه جاوا‬
‫‪Sun Microsystems‬‬
‫‪‬در آغاز تبدیل شدن به بزرگترین ایستگاههای کاری ‪Unix‬‬
‫‪‬عالقمند در زمینه بازار لوازم الکترونیکی‬
‫‪‬پیدایش ‪Green‬‬
‫‪‬شکست پروژه گرین و استقبال نشدن از این پروژه‬
‫‪‬آغاز به کار در سال ‪1994‬توسط جیمزگوسلینگ‬
‫‪ ‬هدف اجرای برنامه ها در بسترهای سخت افزاری مختلف‬
‫‪ ‬نارسایی ‪ C++‬در این زمینه‬
‫‪ OAK ‬ساخته شده از ویرانه یک پروژه کامال شکست خورده‬
‫‪‬تغیير نام ‪ OAK‬به ‪(Jsut Another Vague Acronym) Java‬‬
‫‪4‬‬
‫جیمز گوسلینگ پدید آورنده جاوا‬
‫اهداف اصلي در زمان پياده سازي جاوا‬
‫‪ ‬از متدولوژي ش يءگرايي در اين زبان بطور كامل استفاده شود‪.‬‬
‫‪ ‬قابليت اجراي برنامه هاي يكسان در سيستم عامل هاي مختلف‬
‫‪ ‬پشتيباني از ويژگي هاي شبكه هاي كامپيوتري‬
‫‪ ‬اجراي راه دور برنامه ها بصورت كامال امن‬
‫‪ ‬كاربرد راحت و ساده زبان به كمك انتخاب اجزاء مفيد‬
‫ساير زبانهاي ش يءگرا و استفاده از آن در جاوا (الگوبرداري)‬
‫‪5‬‬
‫خصوصیات زبان برنامه نويس ي جاوا‬
‫‪6‬‬
‫ساده)‪(simple‬‬
‫‪ ‬ﺟﺎوا ﻃﻮری ﺷﺪه ﮐﻪ ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺴﺎن ﺣﺮﻓﻪ ای ﺑﺴﺎدﮔﯽ آن را ﻓﺮاﮔﺮﻓﺘﻪ و ﺑﻄﻮر ﻣﻮﺛﺮی‬
‫ﺑﮑﺎر ﻣﯽ ﺑﺮﻧﺪ ‪.‬‬
‫‪ ‬ﺟـﺎوا دﺳـﺘﻮر زﺑـﺎن‪ C‬و‪C ++‬وﻫﻤﭽﻨﯿﻦ ﺑﺴﯿﺎری از ﺟﻮاﻧﺐ ﺷﯽ ئ ﮔﺮاﯾﯽ ‪C ++‬را ﺑﺎرث‬
‫ﺑﺮده ‪ ،‬اﮐﺜﺮ ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺴﺎن ﺑﺮای ﮐـﺎر ﺑـﺎ ﺟـﺎوا دﭼـﺎر ﻣﺸـﮑﻞ ﻧﺨﻮاﻫﻨﺪ ﺷﺪ ‪.‬‬
‫‪ ‬ﺟﺎوا ﺗﻼش ﮐﺮده ﮐﻪ ﺟﻨﺒﻪ ﻫﺎی اﺳـﺘﺜﻨﺎﯾﯽ و ﺧـﺎرق اﻟﻌـﺎده ﻧﺪاﺷـﺘﻪ ﺑﺎﺷـﺪ ‪ .‬در‬
‫ﺟﺎوا ‪ ،‬ﺗﻌﺪاد اﻧﺪﮐﯽ از ﺷﯿﻮه ﻫﺎی ﮐﺎﻣﻼ" ﺗﻮﺻﯿﻒ ﺷﺪه ﺑﺮای اﻧﺠﺎم ﯾﮏ وﻇﯿﻔﻪ وﺟﻮد‬
‫دارد ‪.‬‬
‫‪7‬‬
‫ﺷﯽ ئ ﮔﺮا‬
‫ﺟـ ـﺎوا از ﺑﺴـ ـﯿﺎری از ﻣﺤـ ـﯿﻂ ﻫـ ـﺎی ﻧـ ـﺮم اﻓـ ـﺰاری اوﻟﯿـ ـﻪﺑﺮاﺳـ ـﺎس‬
‫اشیاء مواردی را به ﻋﺎرﯾﺖ ﮔﺮﻓﺘﻪ و ﺗﻮازﻧﯽ ﺑﯿﻦ ﻧﻈﺮﯾﻪ ﻟﻔﻆ ﻗﻠﻤﯽ ﺗﺤﺖ ﻋﻨﻮان " ﻫﺮ ﭼﯿﺰی ﯾﮏ‬
‫ﺷﯽ ‪ .‬اﺳـﺖ " و ﻧﻈﺮﯾـﻪ واﻗﻌﯿـﺖﮔﺮاﯾﯽ " ﺟﻠﻮی راه ﻣﻦ ﻗﺮار ﻧﮕﯿﺮ " ﺑﻮﺟﻮد آورده اﺳﺖ ‪ .‬ﻣﺪل ﺷﯽ‬
‫ئ در ﺟﺎوا ﺑﺴﯿﺎر ﺳﺎده و ﺑﺮاﺣﺘﯽ ﻗﺎﺑﻞ ﮔﺴـﺘﺮش اﺳـﺖ‬
‫در ﺣﺎﻟﯿﮑﻪ اﻧﻮاع ﺳﺎده آن ﻧﻈﯿﺮ اﻋﺪاد ﺻﺤﯿﺢ ) (‪integers‬ﺑﻌﻨـﻮان ﻋﻤﻠﮑﺮدﻫـﺎی ﺳـﻄﺢ‬
‫ﺑـﺎﻻی ﻏﯿـﺮ ﺷـﯽ ئ ﺗﻠﻘـﯽ میشوند‪.‬‬
‫‪8‬‬
‫قدرتمند)‪(Robust‬‬
‫‪ ‬ﺗﻮاﻧـﺎﯾﯽ اﯾﺠـﺎد ﺑﺮﻧﺎﻣـﻪ ﻫـﺎی ﻗﺪرﺗﻤﻨـﺪ‬
‫‪ ‬ﺟﺎوا ﺷﻤﺎ را ﺑﻪ ﺗﻌﺪاد ﻣﺤﺪودی از ﻧﻮاﺣﯽ ﮐﻠﯿﺪی ﻣﺤﺪود ﻣﯽ ﮐﻨﺪ‬
‫ﺗﺎ ﻣﺠﺒﻮر ﺷـﻮﯾﺪ اﺷـﺘﺒﺎﻫﺎتﺧﻮد را در ﺗﻮﺳﻌﻪ ﺑﺮﻧﺎﻣﻪ ﺧﯿﻠﯽ زود پیداﮐﻨﯿﺪ ‪.‬‬
‫‪ ‬ﺟﺎوا ﺷﻤﺎ را از ﻧﮕﺮاﻧـﯽ درﺑـﺎره ﺑﺴـﯿﺎری از اﺷـﺘﺒﺎﻫﺎت راﯾـﺞﻧﺎﺷﯽ از ﺧﻄﺎﻫﺎی ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺴﯽ ﻣﯽ رﻫﺎﻧﺪ‬
‫‪ ‬ﺟﺎوا ﯾﮏ زﺑﺎن ﮐﺎﻣﻼ" ﻧﻮع ﺑﻨﺪی ﺷﺪه اﺳﺖ ‪ ،‬ﻫﻨﮕﺎم ﮐﺎﻣﭙﺎﯾﻞ ﮐـﺪ ﺷﻤﺎ را ﮐﻨﺘﺮل ﻣﯽ ﮐﻨﺪ ‪ .‬اﻣﺎ اﯾﻦ زﺑﺎن ﮐﺪﻫﺎی‬
‫‪ ‬ﺷﻤﺎ را ﻫﻨﮕﺎم اﺟﺮا ﻧﯿﺰ ﮐﻨﺘﺮل ﻣﯽ ﻧﻤﺎﯾـﺪ‬
‫در ﯾﮏ ﺑﺮﻧﺎﻣﻪ ﺧﻮش ﺳﺎﺧﺖ ﺟﺎوا‪ ،‬ﮐﻠﯿﻪ ﺧﻄﺎﻫﺎی ﻫﻨﮕﺎم اﺟﺮا ﺗﻮﺳﻂ ﺑﺮﻧﺎﻣﻪ ﺷﻤﺎ ﻣﺪﯾﺮﯾﺖ خواهد شد‬
‫‪9‬‬
‫ﭼﻨﺪ ﻧﺦ ﮐﺸﯽ ﺷﺪه)‪(Multi threaded‬‬
‫‪ ‬ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺴﯽ ﭼﻨﺪﻧﺦ ﮐﺸـﯽ اﻣﮑـﺎن‬
‫ﻧﻮﺷـﺘﻦ ﺑﺮﻧﺎﻣﻪ ﻫﺎﯾﯽ ﺑﻪ ﺷﻤﺎ ﻣﯿﺪﻫﺪ ﮐﻪ در‬
‫آن واﺣﺪ ﭼﻨﺪﯾﻦ ﮐﺎر را اﻧﺠﺎم ﻣﯽ دﻫﻨـﺪ ‪.‬‬
‫ﺳﯿﺴـﺘﻢ ﺣـﯿﻦ اﺟـﺮای ﺟـﺎوا ‪ ،‬ﯾـﮏ راه ﺣـﻞ‬
‫زﯾﺒـــﺎ و ﺑﺴـــﯿﺎر ﻣﺎﻫﺮاﻧـــﻪ ﺑـــﺮای‬
‫ﻫﻤﺰﻣـــﺎﻧﯽ ﭼﻨـــﺪﯾﻦ ﭘـــﺮدازش اراﺋـــﻪ‬
‫ﻣـــﯽ دﻫـــﺪ‪.‬‬
‫‪10‬‬
‫ﻣﻌﻤﺎری ﺧﻨﺜﯽ ‪Architecture-Neutral‬‬
‫ﯾﮑﯽ از ﻣﺸﮑﻼت اﺻﻠﯽ ﺳﺮ راه ﺑﺮﻧﺎﻣﻪﻧﻮﯾﺴﺎن اﯾﻦ اﺳﺖ ﮐﻪ ﺗﻀﻤﯿﻨﯽ وﺟﻮد ﻧﺪارد ﺗﺎ ﺑﺮﻧﺎﻣﻪ ای را‬
‫ﮐﻪ اﻣﺮوز ﻣﯽ ﻧﻮﯾﺴﯿﺪ ﻓﺮدا ﺣﺘﯽ روی ﻫﻤﺎن ﻣﺎﺷـﯿﻦ اﺟـﺮا ﺷـﻮد‪.‬‬
‫ارﺗﻘﺎئ ﺳﯿﺴﺘﻢ ﻫﺎی ﻋﺎﻣﻞ و ﭘﺮدازﻧﺪه ﻫﺎ و ﺗﻐﯿﯿﺮات در ﻣﻨﺎﺑﻊ ﻫﺴﺘﻪ ای ﺳﯿﺴﺘﻢ ﻣﻤﮑﻦ اﺳﺖ‬
‫دﺳﺖ ﺑﺪﺳﺖ ﻫـﻢ داده ﺗـﺎ ﯾـﮏﺑﺮﻧﺎﻣﻪ را از ﮐﺎر ﺑﯿﻨﺪازﻧﺪ ‪ .‬ﻃﺮاﺣﺎن ﺟﺎوا ﺗﺼﻤﯿﻤﺎت ﻣﺘﻌﺪد و‬
‫دﺷﻮاری در ﺟﺎوا و ﺣﯿﻦ اﺟـﺮا اﺗﺨـﺎذ ﻧﻤﻮدﻧـﺪ ﺗـﺎ ﺑﺘﻮاﻧﻨـﺪ اﯾـﻦ‬
‫ﻣﻮﻗﻌﯿﺖ را دﮔﺮﮔﻮن ﻧﻤﺎﯾﻨﺪ ‪ .‬ﻫﺪف آﻧﻬﺎ ﻋﺒﺎرت ﺑﻮد از ‪ :‬ﯾﮑﺒﺎر ﺑﻨﻮﯾﺴﯿﺪ ‪ ،‬ﻫﺮ ﺟﺎﯾﯽ ‪ ،‬ﻫﺮ زﻣﺎن و‬
‫ﺑﺮای ﻫﻤﯿﺸﻪ اﺟـﺮا ﮐﻨﯿـﺪ ‪.‬‬
‫‪12‬‬
‫‪11‬‬
‫ﺗﻔﺴﯿﺮ ﺷﺪه و ﻋﻤﻠﮑﺮد ﺳﻄﺢ ﺑﺎﻻ‬
‫‪ ‬ﺟﺎوا ﻗﺪرت اﯾﺠﺎد ﺑﺮﻧﺎﻣﻪ ﻫﺎﯾﯽ ﻗﺎﺑﻞ اﻧﻄﺒﺎق ﺑـﺎ ﭼﻨـﺪﯾﻦ ﻣﺤـﯿﻂ را ﺑﻮﺳـﯿﻠﻪ ﮐﺎﻣﭙﺎﯾـﻞ ﮐـﺮدن ﯾـﮏ ﻧـﻮع‬
‫ﻣﻌﺮﻓﯽ واﺳﻄﻪ ﺗﺤﺖ ﻋﻨﻮان ﮐﺪ ﺑﺎﯾﺘﯽ ﭘﯿﺪا ﮐﺮده اﺳﺖ ‪.‬‬
‫‪ ‬ﺟﺎوا ﻃﻮری ﻃﺮاﺣﯽ ﺷﺪه ﺗﺎ روی اﻧﻮاع ‪ cpu‬ﻧﯿـﺰ ﺑﺨـﻮﺑﯽ اﺟـﺮا ﺷـﻮد ‪ .‬ﮐﺪﻫﺎی ﺑﺎﯾﺘﯽ ﺟﺎوا آﻧﭽﻨﺎن دﻗﯿﻖ ﻃﺮاﺣﯽ‬
‫ﺷﺪه ﮐﻪ ﻣﯽ ﺗـﻮان آﻧﻬـﺎ را ﺑﺴـﺎدﮔﯽ وﺑﻄﻮر ﻣﺴﺘﻘﯿﻢ ﺑﻪ ﮐﺪﻫﺎی ﻣﺎﺷﯿﻦ ﺧﺎص ﺷﻤﺎ ﺑﺮای ﻋﻤﻠﮑﺮدﻫﺎی ﺳﻄﺢ ﺑﺎﻻ‬
‫ﺗﺮﺟﻤﻪ ﻧﻤﻮد ‪.‬‬
‫‪12‬‬
‫ﺗﻮزﯾﻊ ﺷﺪه)‪(Distributed‬‬
‫‪ ‬ﺟﺎوا ﻣﺨﺘﺺ ﻣﺤﯿﻂ ﺗﻮزﯾﻊ ﺷﺪه اﯾﻨﺘﺮﻧﺖ ﻃﺮاﺣﯽ ﺷﺪه‪.‬‬
‫رواﯾﺖ اوﻟﯿﻪ ﺟـﺎوا ﯾﻌﻨـﯽ ‪oak‬درﺑﺮﮔﯿﺮﻧﺪه ﺟﻨﺒﻪ ﻫﺎﯾﯽ‬
‫ﺑﺮای ﭘﯿﺎم رﺳﺎﻧﯽ آدرﺳﻬﺎی داﺧﻠﯽ ﻓﻀﺎی اﻟﮑﺘﺮوﻧﯿﮑﯽ ﺑﻮد ‪.‬‬
‫‪ ‬ﺟﺎوا اﺧﯿﺮا"اﯾﻦ راﺑﻄﻬﺎ را در ﯾﮏ ﺑﺴـﺘﻪ ﻧـﺮم اﻓـﺰاری ﺑﻨـﺎم‬
‫‪(RMI) Remote Method Invocation‬اﺣﯿﺎئ ﻧﻤﻮده اﺳﺖ ‪ .‬اﯾﻦ ﺟﻨﺒﻪ ﯾﮏ ﺳﻄﺢ‬
‫ﻏﯿﺮ ﻣﻮازی از ﺗﺠﺮد ﺑـﺮای ﺑﺮﻧﺎﻣﻪ ﻧﻮﯾﺲ ﺳﺮوﯾﺲ ﮔﯿﺮﻧﺪه ‪ /‬ﺳﺮوﯾﺲ دﻫﻨﺪه ﺑﻮﺟﻮد آورده اﺳﺖ ‪.‬‬
‫‪13‬‬
‫پویا)‪(Dynamic‬‬
‫‪ ‬جاوا یک زبان پویا است ‪ .‬هر کالس جاوا میتواند در هر زمانی روی مفسر جاوا بارگذاری شود ‪.‬‬
‫سپس این کالس های بارگذاری شده ی پویا میتوانند به صورت پویا معرفی شوند ‪ .‬شما میتوانید به‬
‫طور پویا در مورد یک کالس در زمان اجرا اطالعاتی بدست بیاورید ‪.‬با وجود بازتاب ‪ API‬اضافه‬
‫شده (‪ ) ApplicationProgram Interface‬که به برنامه ساز امکان میدهد که با برنامه از‬
‫طریق یک برنامه کاربردی دیگر ارتباط برقرار کند‪.‬‬
‫‪14‬‬
Class File
Java Api
Byte Code
15
‫فرايند توليد نرم افزار‬
‫‪ ‬برنامه ها ابتدا در يك محيط ويراستاري متني نوشته مي شود و با پسوند ‪ .java‬ذخيره مي‬
‫گردد‪ .‬سپس اين فايل بوسيله كامپايلر جاوا ترجمه و به فايلي با پسوند ‪ .class‬تبديل مي‬
‫گردد‪.‬‬
‫‪16‬‬
17
‫الیه های امنیتی جاوا‬
‫سیستم امنیتی جاوا از پنج قسمت تشکیل شده است‪:‬‬
‫‪ ‬کامپایلر آن تضمين می کند که قوانين امنیتی را زیرپا نمی گذارد‬
‫‪ ‬نظارت و کنترل بایت کدها‬
‫‪Verifier‬‬
‫‪‬بارکننده کالس ها )‪ (Class Loader‬بررس ی می کند که‬
‫کالس ها به محدودیت ها دسترس ی نداشته باشند‬
‫‪‬باز پس گرفتن فضا توسط ‪)Garbage Collector( Gc‬‬
‫‪18‬‬
‫نقاط ضعف جاوا‬
‫‪‬سرعت اجرای بسیار پایين به دلیل بایت کدها‬
‫‪‬نادیده گرفتن برخی از اصول ش ی گرایی به دلیل بازاریابی بهتر و انعطاف بیشتر‬
‫‪‬حذف اشاره گرها و وراثت چندگانه‬
‫‪‬عدم توانایی در استفاده از توابع سیستم عامل به دلیل مستقل از سکو بودن‬
‫‪19‬‬
‫پلتفرم های جاوا‬
:‫پلتفرم جاوا از دو مولفه تشكيل شده است‬
‫ ماشين مجازي جاوا‬-1
API -2
‫انواع پلتفرمهاي جاوا‬
Java Platform, Standard Edition – Java SE
Java Platform, Enterprise Edition – Java EE
Java Platform, Micro Edition – Java ME
Java Card
20
‫ساختار یک برنامه ساده ‪:‬‬
‫‪21‬‬
‫انواع داده ها در جاوا‬
‫‪22‬‬
‫داده ها در ‪:C‬‬
‫‪23‬‬
‫متغيرها و انواع دادهها‪:‬‬
‫‪ ‬اکثرا نیاز به ذخيره مقدارها دارند که می خواهیم از آنها استفاده کنیم ‪.‬برای‬
‫بازیابی یک مقدار باید آنرا در یک متغير نکهداری کنیم ‪ .‬یک متغیير محل ذخيره‬
‫در حافظه کامپیوتر است که ویژگیهایی مثل نام ‪ ،‬نوع ومحتویات دارد‪.‬‬
‫‪24‬‬
:‫تعريف متغيرها‬
:‫ تعريف متغير از يك نوع و يك نام‬
 int myAge
 string myname;
 boolean is tired
:‫ چند متغير از يك نوع‬
 int x,y,z
 string firstname, lastname;
25
:‫مقداردهي به متغير درهنگام تعريف‬
int myAge, mysize, numshoes= 28;
string myname= “laura”;
boolean is Tired= true
18
‫ثابت ها‬
‫تعریف ثابت در جاوا کافی است که به ابتدای فرایند تعریف متغیير کلمه کلیدی ‪final‬را اضافه کنیم‬
‫مانند مثال زیر‬
‫;‪Final String MANUFACTURER‬‬
‫مثال ‪:‬‬
‫‪27‬‬
‫عملگر تخصیص مقدار‬
‫‪ ‬مقدار متغیير را میتوان با یک عالمت (=) تغیير داد ‪.‬‬
‫‪1‬‬
‫‪ ‬اگر می خواهید که مقدار را عوض کنید به راحتی مقدار جدید بدهید‬
‫مانند مثال زیر‪ :‬مقدار جدید بجای مقدار اصلی قرار می گيرد‬
‫‪2‬‬
‫‪ ‬اگر از یک متغیير که هیچ مقداری نداشته استفاده منید با خطا مواجه می شوید ‪:‬‬
‫خطا مقدار دهی داده شده است‪.‬‬
‫‪28‬‬
‫نوع داده ای‬
‫مقدار پیش فرض‬
byte
۰
short
۰
int
۰
long
float
double
L۰
‫اندازه به بیت‬
bits in ۸
memory
bits in ۱۶
memory
bits in ۳۲
memory
64 bits in
memory
‫مقدار حداقل‬
‫مقدار حداکثر‬
‫کالس پوششی‬
۱۲۸-
۱۲۷+
Byte
۳۲۷۶۸-
۳۲۷۶۷+
Short
۲۱۴۷۴۸۳۶۴۸-
۲۱۴۷۴۸۳۶۴۷+
Integer
۹۲۲۳۳۷۲۰۳۶+
۹۲۲۳۳۷۲۰۳۶۸۵۴
۸۵۴۷۷۵۸۰۷
۷۷۵۸۰۸
Long
f ۰٫۰
32-bit IEEE
1.40129846432 ۳٫۴۰۲۸۲۳۴۶۶۳
754 floating
481707e-45 e+38 ۸۵۲۸۸۶۰
point
Float
d ۰٫۰
64-bit IEEE
۱٫۷۹۷۶۹۳۱۳۴۸
۴٫۹۴۰۶۵۶۴۵۸۴۱
754 floating
e+308۶۲۳۱۵۷۰
e-324d ۲۴۶۵۴۴
point
d
Double
char
‘\u0000′
boolean
false
16-bit,
unsigned
Unicode
character
1 bit
in memory
‫تعریف نشده‬
to 65,535 ۰
Char
‫تعریف نشده‬
Boolean
‫توضيحات در جاوا‪:‬‬
‫نوع اول ‪:‬از *‪ /‬شروع در خاتمه ‪ */‬قرار ميدهيم‪.‬‬
‫نوع دوم ‪ :‬براي توضيحات تك خطي از ‪ //‬استفاده ميكنيم‪.‬‬
‫نوع سوم‪ :‬برنامه ‪ javadoc‬از آن استفاده ميكند با **‪ /‬شروع و در پايان ‪ */‬قرار‬
‫ميدهيم‪.‬‬
‫‪30‬‬
1.import java.aw.point
2.class Testpoint {
‫برنامهاي را مشاهده ميكنيد كه دستورات انتساب‬
.‫مقدار به يك ش ي و ايجاد يك ش ي را مشاهده كرد‬
3.public static void main (string args [ ] {
4.point the point= new point (10,10);
5.system.out.println (“Xis” + the point.x);
6.system.out.println (“y is” + thepoint)
7.system.out.println (“setting X to 5.”);
:‫خروجي‬
8.The point.X=5;
9.system.out.println (“setting Y to 15.”);
X
is
10
10.the point.y= 15;
Y
is
10
11.system.out.println (“x is” + the point.x);
Setting X to 5.
13.system.out.println (“Y is” + the point.y);
Setting Y to 15.
}
X
}
31
is
5
‫اعالن نمودن اشیاء‬
‫‪ .1‬ابتدا باید یک متغير از نوع همان کالس اعالن نمائید ‪.‬‬
‫‪ .2‬یک کپی فيزیکی و واقعی از ش ٍی بدست آورده و به آن متغیير منتسب کنید ‪ .‬اینکار را با عملگر‬
‫‪NEW‬انجام دهید ‪.‬‬
‫مثال‪:‬‬
‫) ( ‪mybox=new Box‬‬
‫‪Mybox‬را به عنوان یک ارجاع به شیئی از نوع ‪Box‬اعالن میکند‬
‫‪32‬‬
‫اعالن نمودن اشیاء در جاوا‬
‫‪33‬‬
‫نگاهی دقیق تر به ‪NEW‬‬
‫;)(‪Class-var= new classname‬‬
‫‪Class-var‬یک متغير از نوع کالس ی است که ایجاد کرده ایم ‪ ،class name‬نام کالس ی‬
‫است که میخواهیم معرفی کنیم ‪.‬نام کالس که بعد از آن پرانتز ها قرار گرفته اند مشخص کننده‬
‫سازنده کالس است ‪.‬‬
‫تعریف سازنده ‪ :‬سازنده تعریف میکند وقتی یک سیئی از یک کالس ایجاد شود چه اتفاقی خواهد‬
‫افتاد ‪.‬‬
‫‪ :NEW‬حافظه را برای یک شیئی طی زمان اجرا تخصیص میدهد ‪.‬‬
‫‪34‬‬