SlideShare a Scribd company logo
Java Programming Languages
‫جاوا‬ ‫نویسی‬ ‫برنامه‬ ‫زبان‬
‫جوادی‬ ‫برات‬
‫بهــــــار‬91
‫مطالب‬ ‫فهرست‬
‫چیست؟‬ ‫سـکو‬
‫موبایل‬ ‫نویسی‬ ‫برنامه‬ ‫زبان‬ ‫تاریخچه‬
‫جاوا‬ ‫های‬ ‫قابلیت‬
‫اصلی‬ ‫داده‬ ‫نوع‬
‫جاوا‬ ‫زبان‬ ‫گرامر‬
‫جاوا‬ ‫زبان‬ ‫در‬ ‫ساختار‬
‫دستورات‬ ‫و‬ ‫دید‬ ‫میدان‬ ،‫عبارات‬
‫کنترلی‬ ‫ساختار‬
‫منابع‬
Index
‫چیست؟‬ ‫سـکو‬
‫مجموعه‬ ‫از‬ ‫اسـت‬ ‫عبارت‬ ،‫کاربردی‬ ‫و‬ ‫غیرعلمـی‬ ‫تعریـف‬ ‫یـک‬ ‫در‬ ‫سـکو‬
‫زیربنای‬ ‫قرارگرفتن‬ ‫هم‬ ‫کنار‬ ‫با‬ ‫که‬ ‫مافزاری‬‌‫ا‬ ‫نر‬ ‫و‬ ‫تافزاری‬‌‫ا‬ ‫سخ‬ ‫پایه‬ ‫ههای‬‌‫ا‬ ‫مؤلف‬
.‫یکنند‬‌‫ا‬ ‫م‬ ‫فراهم‬ ‫را‬ ‫مافزار‬‌‫ا‬ ‫نر‬ ‫یک‬ ‫اجرای‬ ‫و‬ ‫تهیه‬
.‫است‬ ‫افزار‬ ‫نرم‬ ‫توسعه‬ ‫در‬ ‫کننده‬ ‫تعیین‬ ‫عنصر‬ ‫یک‬ ‫سکو‬
‫کد‬ ‫کـه‬ ‫دهـد‬ ‫مـی‬ ‫پیشنهاد‬ ‫افراز‬ ‫نرم‬ ‫دهنده‬ ‫توسـعه‬ ‫بـه‬ ‫سـکو‬ ‫کننده‬ ‫فراهـم‬
‫اجرا‬ ‫سکوها‬ ‫بقیه‬ ‫برروی‬ ‫و‬ ‫طولنی‬ ‫مدت‬ ‫به‬ ،‫نقص‬ ‫بدون‬ ‫که‬ ‫کند‬ ‫اجرا‬ ‫منطقی‬
‫شود‬.
:‫موبایل‬ ‫سکوهای‬ ‫از‬ ‫برخی‬
•Android
•Symbian
•IOS
•Windos Phone
•...
What’s Platform?
‫نویسی‬ ‫برنامه‬ ‫زبانهای‬ ‫تاریخچه‬
‫موبایل‬
‫سال‬1991‫شرکت‬ ،‫میلدی‬Sun Microsystems ‫عنوان‬ ‫تحت‬ ‫ای‬ ‫پروژه‬Green‫را‬
.‫نمود‬ ‫آغاز‬
‫هایی‬ ‫دسـتگاه‬ ‫کنترل‬ ‫جهـت‬ ‫افزاری‬ ‫نرم‬ ‫ابزار‬ ‫ایجاد‬ ‫پروژـه‬ ‫ایـن‬ ‫اصلی‬ ‫هدف‬
‫ماننـد‬set-top Box‫و‬ (‫اینترنت‬ ‫بـه‬ ‫دسـترسی‬ ‫جهـت‬ ‫ای‬ ‫)وسـیله‬PDA (Personal
Digital Assistant( .‫بود‬ ... ‫و‬
‫با‬ ‫بازار‬ ‫به همسو کردن‬ ‫قادر‬ ‫جدید‬ ‫تکنولوژی‬ ‫یک‬ ‫ایجاد‬ ‫وجود‬ ‫با‬ ‫فوق‬ ‫گروه‬
.‫نبود‬ ‫همراه‬ ‫موفقیت‬ ‫با‬ ‫محصولشان‬ ‫فروش‬ ‫نتیجه‬ ‫در‬ ‫و‬ ‫نبودند‬ ‫خود‬ ‫اهداف‬
‫فهمیدند‬ ‫گروه‬ ‫اعضای‬ ،‫بررسی‬ ‫و‬ ‫تحقیق‬ ‫مدتی‬ ‫پس از‬
‫با‬ ‫که‬‫تکنولوژی‬ ‫کارگیری‬ ‫به‬ ‫و‬ ‫اینترنت‬ ‫عرصه‬ ‫به‬ ‫ورود‬
‫ابداعی‬.‫رسید‬ ‫خواهند‬ ‫موفقیت‬ ‫به‬ ،‫خود‬
History
‫نویسی‬ ‫برنامه‬ ‫زبانهای‬ ‫تاریخچه‬
‫موبایل‬
Gosling ‫گوید‬ ‫می‬ ‫زمینه‬ ‫این‬ ‫:در‬
‫ها‬ ‫برنامه‬ ‫اجرای‬ ‫و‬ ‫توزیع‬ ‫جهت‬ ‫امکانی‬ ‫ایجاد‬ ،‫بودیم‬ ‫آن‬ ‫بدنبال‬ ‫که‬ ‫چیزی‬ ‫ه‬‌‫ا‬ ‫"هم‬
".‫بود‬ ‫اینترنت‬ ‫تحت‬
‫شرکـت‬Sun‫سـال‬ ‫در‬1994 ‫نام‬ ‫بـا‬ ‫اینترنتـی‬ ‫مرورگـر‬ ‫یـک‬HotJtava ‫توانایی‬ ‫کـه‬
‫اجرای‬Applet .‫آورد‬ ‫بوجود‬ ،‫داشت‬ ‫را‬ ‫جاوا‬ ‫های‬
‫سال‬1995‫جاوا‬ ‫سازی‬ ‫برنامه‬ ‫زبان‬ ‫از‬ ‫نسخه‬ ‫اولین‬)Java 1.0 (‫برنامه‬ ‫اختیار‬ ‫در‬
.‫گرفت‬ ‫قرار‬ ‫نویسان‬
‫سوق‬ ‫زیر‬ ‫موارد‬ ‫مانند‬ ‫هایی‬ ‫فعالیت‬ ‫سمت‬ ‫به‬ ‫ابزار‬ ‫این‬ ،‫جاوا‬ ‫اول‬ ‫نسخه‬ ‫ورود‬ ‫با‬
:‫نمود‬ ‫پیدا‬
‫آنلین‬ ‫وب‬ ‫های‬ ‫فروشگاه‬
‫تراکنش‬ ‫پردازش‬
‫داده‬ ‫پایگاه‬ ‫های‬ ‫رابط‬
،‫موبایل‬ ‫مثل‬ ‫کوچک‬ ‫های‬ ‫پلتفرم‬PDA‫هوشمند‬ ‫های‬ ‫کارت‬ ،
History
‫نویسی‬ ‫برنامه‬ ‫زبانهای‬ ‫تاریخچه‬
‫موبایل‬
‫جدیـد‬ ‫نسـخه‬java2،‫مختلف‬ ‫ع‬‌‫ا‬ ‫انوا‬ ‫برای‬ ‫را‬ ‫جدیدی‬ ‫بهای‬‌‫ا‬ ‫ترکی‬ ‫توانسـت‬
.‫کند‬ ‫ایجاد‬ ‫مها‬‌‫ا‬ ‫پلتفر‬
‫سال‬ ‫در‬2006‫جدید‬ ‫نسخه‬ ‫شرکت‬ ‫این‬ ،‫بازاریابی‬ ‫هدف‬ ‫با‬J2‫مهای‬‌‫ا‬ ‫نا‬ ‫با‬ ‫را‬
JavaEE ،JavaME‫و‬JavaSE.‫کرد‬ ‫منتشر‬
:‫است‬ ‫شده‬ ‫گرفته‬ ‫نظر‬ ‫در‬ ‫جاوا‬ ‫سازی‬ ‫پیاده‬ ‫زمان‬ ‫در‬ ‫اصلی‬ ‫هدف‬ ‫پنج‬
‫شود‬ ‫استفاده‬ ‫کامل‬ ‫بطور‬ ‫زبان‬ ‫این‬ ‫در‬ ‫گرایی‬ ‫شی‬ ‫متدلوژی‬ ‫از‬
‫مختلف‬ ‫های‬ ‫عامل‬ ‫سیستم‬ ‫در‬ ‫یکسان‬ ‫های‬ ‫برنامه‬ ‫اجرای‬ ‫قابلیت‬
‫کامپیوتری‬ ‫های‬ ‫شبکه‬ ‫های‬ ‫ویژگی‬ ‫از‬ ‫پشتیبانی‬
‫امن‬ ‫کامل‬ ‫بصورت‬ ‫ها‬ ‫برنامه‬ ‫دور‬ ‫راه‬ ‫اجرای‬
‫زبانهای‬ ‫سایر‬ ‫مفید‬ ‫اجزاء‬ ‫انتخاب‬ ‫کمک‬ ‫به‬ ‫زبان‬ ‫ساده‬ ‫و‬ ‫راحت‬ ‫کاربرد‬
‫جاوا‬ ‫در‬ ‫آن‬ ‫از‬ ‫استفاده‬ ‫و‬ ‫شیءگرا‬
History
‫جاوا‬ ‫زبان‬ ‫های‬ ‫قابلیت‬
:‫از‬ ‫عبارتند‬ ‫جاوا‬ ‫زبان‬ ‫ی‬ ‫ها‬ ‫قابلیت‬
++ ‫به‬ ‫شبیه‬ ‫جاوا‬ ‫زبان‬C ‫است‬
‫دارد‬ ‫تری‬ ‫گرایی آسان‬ ‫شی‬ ‫مدل‬
‫می کند‬ ‫پشتیبانی‬ ‫کمتری‬ ‫پایین‬ ‫سطح‬ ‫قابلیتهای‬ ‫از‬
‫دهد‬ ‫می‬ ‫انجام‬ ‫خودکار‬ ‫بطور‬ ‫حافظه را‬ ‫مدیریت‬
‫است‬ ‫بال‬ ‫زبان‬ ‫این‬ ‫به‬ ‫شده‬ ‫نوشته‬ ‫ههای‬‌‫ه‬ ‫برنام‬ ‫عملکرد‬ ‫اطمینان‬ ‫ضریب‬
‫نیست‬ ‫)سکو( خاصی‬ ‫عامل‬ ‫به سیستم‬ ‫وابسته‬
‫یشوند‬‌‫ه‬ ‫م‬ ‫بیتی کامپایل‬ ‫کدهای‬ ‫صورت‬ ‫به‬ ‫جاوا‬ ‫ههای‬‌‫ه‬ ‫برنام‬
Capability
‫اصلی‬ ‫های‬ ‫داده‬ ‫نوع‬
:‫از‬ ‫عبارتند‬ ‫جاوا‬ ‫اصلی‬ ‫های‬ ‫داده‬ ‫نوع‬
byte: ‫یک‬8) ‫است‬ ‫صحیح‬ ‫عدد‬ ‫دو‬ ‫مکمل‬ ‫علمتدار‬ ‫بیتی‬127‫تا‬128-).
short: ‫یک‬16) ‫است‬ ‫صحیح‬ ‫عدد‬ ‫دو‬ ‫مکمل‬ ‫علمتدار‬ ‫بیتی‬32767‫تا‬
32768-).
int:‫یک‬32) ‫است‬ ‫صحیح‬ ‫عدد‬ ‫دو‬ ‫مکمل‬ ‫علمتدار‬ ‫بیتی‬2147483647‫تا‬
2147483648-).
long:‫یک‬64‫است‬ ‫صحیح‬ ‫عدد‬ ‫دو‬ ‫مکمل‬ ‫علمتدار‬ ‫بیتی‬
)9223372036854775807‫تا‬9223372036854775808-).
float: ‫یک‬32‫)در‬ ‫رقمی‬ ‫تک‬ ‫بیت‬IEEE) ‫دقت‬ ‫با‬754‫است‬ ‫شناور‬ ‫نقطه‬ .
double: ‫یک‬64‫)در‬ ‫رقمی‬ ‫دو‬ ‫بیت‬IEEE) ‫دقت‬ ‫با‬754‫است‬ ‫شناور‬ ‫نقطه‬ .
boolean: ‫بگیرد‬ ‫مقدار‬ ‫دو‬ ‫تواند‬ ‫می‬ ‫:فقط‬false, true
char: ‫یونیکد‬ ‫کاراکتر‬ ‫یک‬16‫تکی‬ ‫بیت‬ (u0000‫تا‬uffff) ) ‫یا‬0‫تا‬65535).
Primitive Data Type
‫جاوا‬ ‫زبان‬ ‫گرامر‬
‫از‬ ‫جاوا‬ ‫زبان‬ ‫گرامر‬ ‫بیشتر‬C++‫است‬ ‫شده‬ ‫مشتق‬
 ‫خل ف‬ ‫بر‬C++، ‫گرا‬ ‫یافته، عمومی، شی‬ ‫از برنامه نویسی ساخت‬ ‫که ترکیبی‬
‫شده‬ ‫گرا ساخته‬ ‫زبان شی‬ ‫انحصاری به عنوان یک‬ ‫طور‬ ‫به‬ ‫است، جاوا تقریبا‬
.‫است‬
‫جز‬ ‫به‬ ‫است؛‬ ‫شی‬ ‫یک‬ ‫چیز‬ ‫هر‬ ‫و‬ ‫شوند‬ ‫می‬ ‫نوشته‬ ‫کل س‬ ‫داخل‬ ‫کدها‬ ‫همه‬
‫اصلی‬ ‫های‬ ‫داده‬ ‫نوع‬
‫برخل ف‬C++،،‫کل س‬ ‫برای‬ ‫چندگانه‬ ‫وراثت‬ ‫و‬ ‫عملگرها‬ ‫سربارگذاری‬ ‫از‬ ‫جاوا‬
‫کند‬ ‫نمی‬ ‫پشتیبانی‬.‫و‬ ‫بالقوه‬ ‫خطاهای‬ ‫از‬ ‫جلوگیری‬ ‫در‬ ‫و‬ ‫ساده‬ ‫را‬ ‫زبان‬ ‫کار‬ ‫این‬
‫کند‬ ‫می‬ ‫کمک‬ ‫طراحی‬ ‫الگوی‬ ‫ضد‬
 :‫دارد‬ ‫وجود‬ ‫جاوا‬ ‫در‬ ‫توضیحات‬ ‫نوشتن‬ ‫برای‬ ‫مختلف‬ ‫راه‬ ‫سه‬
(‫خط‬ ‫)یک‬ ‫توضیحات‬ ‫جمله‬ ‫اول‬ ‫در‬ // ‫از‬ ‫استفاده‬
‫توضیحات‬ ‫جمله‬ ‫آخر‬ ‫در‬ */ ‫و‬ ‫جمله‬ ‫اول‬ ‫در‬ /* ‫از‬ ‫استفاده‬(‫خط‬ ‫)چند‬
‫برای‬ ‫خاص‬ ‫)حالت‬ ‫توضیحات‬ ‫جمله‬ ‫آخر‬ ‫در‬ */ ‫و‬ ‫جمله‬ ‫اول‬ ‫در‬ /** ‫از‬ ‫استفاده‬
Javadoc(
Syntax
‫جاوا‬ ‫زبان‬ ‫ساختار‬
:‫جاوا‬ ‫ساختارهای‬ ‫از‬ ‫برخی‬
)‫خودکار‬ ‫تبدیل‬Automatic Conversion‫دیگر؛‬ ‫نوعی‬ ‫به‬ ‫داده‬ ‫نوع‬ ‫یک‬ ‫تبدیل‬ :(
:‫درصورتیکه‬
•‫باشند‬ ‫سازگار‬ ‫یکدیگر‬ ‫یا‬ ‫نوع‬ ‫دو‬
•‫باشد‬ ‫مبدا‬ ‫نوع‬ ‫از‬ ‫بزرگتر‬ ‫مقصد‬ ‫نوع‬
) ‫خودکار‬ ‫غیر‬ ‫تبدیل‬Type Casting‫سازگار‬ ‫داده‬ ‫نوع‬ ‫به‬ ‫داده‬ ‫نوع‬ ‫یک‬ ‫تبدیل‬ :(
‫از‬ ‫صریحا‬ ‫باید‬ ‫خودکار‬ ‫غیر‬ ‫تبدیل‬ ‫برای‬ .‫دیگر‬Cast.‫کنید‬ ‫استفاده‬
) ‫فرض‬ ‫پیش‬ ‫مقدار‬ ،‫متغیرهها‬ ‫برخل ف‬ ‫فیلدهها‬ :‫فرض‬ ‫پیهش‬ ‫مقادیهر‬Default
Value) ‫زباله‬ ‫مقدار‬ ‫دارای‬ ‫متغیرها‬ .‫دارند‬ (Garbage Value.‫هستند‬ (
Java Structure
Data Type Byte Short Int Long Float Double Char String Booelan
Default 0 0 0 0L 0.0f 0.0d u0000 Null False
‫دید‬ ‫میدان‬ ،‫دستورات‬ ،‫عبارات‬
‫عبارت‬‫شده‬ ‫بنا‬ ‫زبان‬ ‫آن‬ ‫گرامر‬ ‫اسا س‬ ‫بر‬ ‫که‬ ‫متدهایی‬ ‫و‬ ‫عملگر‬ ،‫متغیر‬ ‫از‬ :
.‫شوند‬ ‫می‬ ‫ساخته‬ ،‫اند‬
:‫ید‬‫د‬ ‫میدان‬‫و‬ ‫است‬ ‫بسته‬ ‫و‬ ‫باز‬ ‫اکولد‬ ‫بین‬ ‫بیشتر‬ ‫یا‬ ‫دستور‬ ‫صفر‬ ‫از‬ ‫جمعی‬
.‫گیرد‬ ‫قرار‬ ‫استفاده‬ ‫مورد‬ ‫است‬ ‫مجاز‬ ‫دستور‬ ‫یک‬ ‫که‬ ‫هرجا‬ ‫تواند‬ ‫می‬
‫ستور‬‫د‬‫یک‬ ‫دستور‬ .‫هستند‬ ‫طبیعی‬ ‫زبان‬ ‫در‬ ‫جملت‬ ‫معادل‬ ‫تقریبا‬ ‫دستورات‬ :
‫یک‬ ‫داخهل‬ ‫تواننهد‬ ‫مهی‬ ‫عبارات‬ ‫انواع‬ .‫دهد‬ ‫مهی‬ ‫شکهل‬ ‫را‬ ‫اجرا‬ ‫از‬ ‫کامهل‬ ‫واحهد‬
.‫شوند‬ ‫ساخته‬ ،‫کولن‬ ‫سمی‬ ‫یک‬ ‫با‬ ‫عبارت‬ ‫دادن‬ ‫پایان‬ ‫توسط‬ ‫دستور‬
‫زیر‬ ‫دستورات‬“‫بیانی‬ ‫دستورات‬”.‫شوند‬ ‫می‬ ‫نامیده‬
‫جایگزینی‬ ‫عبارات‬
-- ++‫یا‬ ‫از‬ ‫استفاده‬ ‫هر‬
‫متدها‬ ‫فراخوانی‬
‫شی‬ ‫ساخت‬ ‫عبارات‬
Expressions, Statements,
Blocks
‫کنترلی‬ ‫دستورات‬
‫و‬ ‫حلقه‬ ،‫گیری‬ ‫تصمیم‬ ‫بکارگیری‬ ‫با‬ ‫را‬ ‫جاری‬ ‫دستور‬ ‫اجرای‬ ‫کنترلی‬ ‫دستورات‬
‫صورت‬ ‫بهه‬ ‫تها‬ ‫سهازند‬ ‫مهی‬ ‫قادر‬ ‫را‬ ‫شمها‬ ‫برنامهه‬ ‫و‬ ‫کنهد‬ ‫مهی‬ ‫تفکیهک‬ ‫انشعاب‬
.‫شود‬ ‫اجرا‬ ‫کد‬ ‫از‬ ‫خاصی‬ ‫بل ک‬ ‫مشروط‬
) ‫گیری‬ ‫تصمیم‬ ‫دسهتورات‬ ‫درباره‬ ‫بخهش‬ ‫ایهن‬if-then, if-then-else, switch،(
) ‫هه‬‫ه‬‫حلق‬ ‫هتورات‬‫ه‬‫دس‬for, while, do-while) ‫انشعاب‬ ‫دستورات‬ ‫و‬ (break,
continue, return:‫دهد‬ ‫می‬ ‫توضیح‬ ‫شوند‬ ‫می‬ ‫پشتیبانی‬ ‫جاوا‬ ‫توسط‬ ‫که‬ (
False True
Control Flow
Statements
Start
Is
True?
Statement
Stop
‫تصمیم‬ ‫دستورات‬
‫گیری‬
If-then: ‫دستور‬If-then‫به‬ ‫دستور‬ ‫این‬ .‫است‬ ‫کنترلی‬ ‫دستورات‬ ‫ترین‬ ‫ابتدایی‬ ‫از‬
،‫شد‬ "‫"درست‬ ‫ارزیابی‬ ‫خاص‬ ‫آزمون‬ ‫یک‬ ‫اگر‬ ‫فقط‬ ‫که‬ ‫گوید‬ ‫می‬ ‫شما‬ ‫برنامه‬
‫کل س‬ ‫مثال‬ ‫برای‬ .‫کن‬ ‫اجرا‬ ‫را‬ ‫کد‬ ‫از‬ ‫مشخص‬ ‫بخش‬ ‫یک‬Bicycle‫به‬ ‫تواند‬ ‫می‬
‫حال‬ ‫در‬ ‫از‬ ‫دوچرخه‬ ‫اگر‬ ‫فقط‬ ‫دهد؛‬ ‫اجازه‬ ‫دوچرخه‬ ‫سرعت‬ ‫کاهش‬ ‫برای‬ ‫ترمز‬
‫باشد‬ ‫.حرکت‬
void applyBrakes() {
// the "if" clause: bicycle must be moving
if (isMoving){
// the "then" clause: decrease current speed
currentSpeed--;
}
}
Decision Statements
‫تصمیم‬ ‫دستورات‬
‫گیری‬
If-then-else: ‫عبارت‬ ‫یک‬ ‫وقتی‬“if”‫دستور‬ ،‫شود‬ ‫می‬ "‫"نادرست‬ ‫ارزیابی‬If-
then-else‫متد‬ ‫در‬ .‫کند‬ ‫می‬ ‫فراهم‬ ‫اجرا‬ ‫برای‬ ‫را‬ ‫دومی‬ ‫راه‬ ‫یک‬applyBrakes،
‫دستور‬ ‫از‬ ‫توانیید‬ ‫می‬if-then-else‫کنید؛‬ ‫استفاده‬ ‫عملیات‬ ‫برخی‬ ‫انجام‬ ‫برای‬
‫شدند‬ ‫گرفته‬ ‫ترمزها‬ ‫و‬ ‫نبود‬ ‫حرکت‬ ‫حال‬ ‫در‬ ‫دوچرخه‬ ‫.وقتی‬
void applyBrakes() {
if (isMoving) {
currentSpeed--;
} else {
System.err.println("The bicycle has " + "already stopped!");
}
}
Decision Statements
‫تصمیم‬ ‫دستورات‬
‫گیری‬
Switch: ‫دستورات‬ ‫برخل ف‬if-then‫و‬if-then-else، ‫دستور‬switch‫تواند‬ ‫می‬
‫دستور‬ .‫باشد‬ ‫داشته‬ ‫ممکن‬ ‫اجرای‬ ‫مسیر‬ ‫چندین‬switch‫اصلی‬ ‫داده‬ ‫انواع‬ ‫با‬
byte، short، char‫و‬int‫نوع‬ ‫با‬ ‫همچنین‬ .‫کند‬ ‫می‬ ‫کار‬enumerated، ‫کل س‬
String، ‫میدهند‬ ‫پوشیش‬ ‫را‬ ‫اصیلی‬ ‫داده‬ ‫انواع‬ ‫کیه‬ ‫ویژیه‬ ‫کل س‬ ‫تعدادی‬ ‫و‬
)Character, Byte, Short, Integer( ‫کند‬ ‫می‬ ‫.کار‬
int day = 5;
Switch(day){
Case 1: dayString = “Saturday”; break;
Case 2: dayString = “Sunday”; break;
Case 3: dayString = “Monday”; break;
Case 4: dayString = “Tuesday”; break;
Case 5: dayString = “Wednesday”; break;
Case 6: dayString = “Thursday”; break;
Case 7: dayString = “Friday”; break;
default: dayString = “Invalid Input!”; break;
}
Decision Statements
‫حلقه‬ ‫دستورات‬
While: ‫دستور‬while‫ارزیابی‬ ،‫برگرداند‬ ‫را‬ ‫بولی‬ ‫مقدار‬ ‫یک‬ ‫باید‬ ‫که‬ ‫عبارتی‬
‫دسیتور‬ ،‫بود‬ "‫"درسیت‬ ‫ارزیابیی‬ ‫نتیجیه‬ ‫اگیر‬ .‫کند‬ ‫میی‬while‫داخل‬ )‫دسیتور(ات‬
‫بل ک‬while‫کند‬ ‫می‬ ‫اجرا‬ ‫.را‬
‫دستور‬while‫کند‬ ‫می‬ ‫اجرا‬ ‫را‬ ‫آن‬ ‫بل ک‬ ‫و‬ ‫دهد‬ ‫می‬ ‫ادامه‬ ‫را‬ ‫عبارت‬ ‫تست‬ ‫عمل‬
.‫شود‬ "‫"نادرست‬ ‫ارزیابی‬ ‫نتیجه‬ ‫که‬ ‫زمانی‬ ‫تا‬
Do-while: ‫بین‬ ‫تفاوت‬while‫و‬do-while‫که‬ ‫است‬ ‫این‬class WhileDemo {
do-while‫حلقه‬ ‫پائین‬ ‫را‬ ‫عبارت‬public static void main(String[] args(}
‫حلقه‬ ‫داخل‬ ‫دستورات‬ ‫بنابراین‬ ‫کند؛‬ ‫می‬ ‫ارزیابی‬int count = 1;
do‫شوند‬ ‫می‬ ‫اجرا‬ ‫یکبار‬ ‫حداقل‬ ‫.همیشه‬while (count < 11) {
System.out.println("Count is: " +
count);
Loop Statements
‫حلقه‬ ‫دستورات‬
for: ‫دستور‬for‫فراهم‬ ‫را‬ ‫مقادیر‬ ‫از‬ ‫بال‬ ‫رنج‬ ‫یک‬ ‫تکرار‬ ‫برای‬ ‫فشرده‬ ‫راه‬ ‫یک‬
‫"حلقه‬ ‫بعنوان‬ ‫آن‬ ‫به‬ ‫اغلب‬ ‫ها‬ ‫نویس‬ ‫برنامه‬ .‫کند‬ ‫می‬for" ‫کنند؛‬ ‫می‬ ‫رجوع‬
‫زمانیکه‬ ‫تا‬ ‫شود‬ ‫می‬ ‫تکرار‬ ‫بارها‬ ‫و‬ ‫بارها‬ ‫حلقه‬ ‫که‬ ‫است‬ ‫روشهای‬ ‫از‬ ‫یکی‬ ‫چون‬
‫است‬ ‫برقرار‬ ‫مخصوص‬ ‫شرط‬ ‫.یک‬
:‫که‬ ‫باشید‬ ‫داشته‬ ‫یاد‬ ‫به‬
•‫عبارت‬“initialization”‫اجرا‬ ‫بار‬ ‫یک‬ ‫آن‬ ‫کند؛‬ ‫می‬ ‫اولیه‬ ‫دهی‬ ‫مقدار‬ ‫را‬ ‫حلقه‬
‫شود‬ ‫می‬
•‫عبارت‬ ‫وقتی‬“termination”.‫یابد‬ ‫می‬ ‫خاتمه‬ ‫حلقه‬ ،‫شود‬ "‫"نادرست‬ ‫ارزیابی‬
•‫عبارت‬“increment”‫برای‬ ‫عبارت‬ ‫این‬ .‫شود‬ ‫می‬ ‫احضار‬ ‫حلقه‬ ‫تکرار‬ ‫هر‬ ‫از‬ ‫بعد‬
.‫است‬ ‫قبول‬ ‫قابل‬ ‫کامل‬ ‫مقدار‬ ‫یک‬ ‫کاهش‬ ‫یا‬ ‫افزایش‬
for (initialization; termination; increment) {
statement(s)
}
Loop Statements
‫انشعاب‬ ‫دستورات‬
Break: ‫دسیتور‬break‫بدون‬ .‫برچسب‬ ‫بدون‬ ‫و‬ ‫دار‬ ‫برچسیب‬ :‫دارد‬ ‫شکیل‬ ‫دو‬
‫دستور‬ ‫در‬ ‫را‬ ‫برچسب‬switch‫یک‬ ‫دادن‬ ‫پایان‬ ‫برای‬ ‫توانید‬ ‫می‬ ‫همچنین‬ ‫و‬ ‫دیدید‬
‫دستور‬ ‫از‬ ‫حلقه‬break‫کنید‬ ‫استفاده‬ ‫برچسب‬ ‫.بدون‬
‫دسیتور‬ ‫ییک‬break‫دستور‬ ‫تریین‬ ‫داخلیی‬ ‫برچسیب‬ ‫بدون‬switch ،for ،while،
do-while‫دستور‬ ‫اما‬ ‫دهد‬ ‫می‬ ‫پایان‬ ‫را‬break‫خارجی‬ ‫دستور‬ ‫یک‬ ‫دار‬ ‫برچسب‬
:‫دهد‬ ‫می‬ ‫پایان‬ ‫را‬ ‫تر‬
search:
for (i = 0; i < arrayOfInts.length; i++) {
for (j = 0; j < arrayOfInts[i].length; j++) {
if (arrayOfInts[i][j] == searchfor) {
foundIt = true;
break search;
}
}
}
Branch Statements
‫انشعاب‬ ‫دستورات‬
Continue: ‫دسستور‬continue‫حلقسه‬ ‫یسک‬ ‫فعلسی‬ ‫تکرار‬ ‫از‬for، while‫یسا‬do-
while‫حلقه‬ ‫بدنه‬ ‫ترین‬ ‫داخلی‬ ‫پایان‬ ‫به‬ ‫برچسب‬ ‫بدون‬ ‫حالت‬ .‫کند‬ ‫می‬ ‫هقلح هندب نیرت یلخاد نایاپ هب بسچرب نودب تلاح .دنک یم رظنفرصرفنظر‬
‫کند‬ ‫می‬ ‫ارزیابی‬ ،‫کند‬ ‫می‬ ‫چک‬ ‫را‬ ‫حلقه‬ ‫که‬ ‫شرطی‬ ‫عبارت‬ ‫و‬ ‫کند‬ ‫می‬ ‫.پرش‬
‫دسستور‬continue‫برچسب‬ ‫بسا‬ ‫خارجسی‬ ‫حلقسه‬ ‫فعلسی‬ ‫تکرار‬ ‫از‬ ‫دار‬ ‫برچسسب‬
.‫میکند‬ ‫پرش‬ ،‫مشخص‬
test:
for (int i = 0; i <= max; i++) {
int n = substring.length(), j = I, k = 0;
while (n-- != 0) {
if (searchMe.charAt(j++) != substring.charAt(k++)) {
continue test;
}
}
foundIt = true; break test;
}
Branch Statements
‫انشعاب‬ ‫دستورات‬
Return: ‫دستور‬ ،‫انشعاب‬ ‫دستور‬ ‫روتسد ،باعشنا روتسد نیرخآخرین‬return‫دستور‬ .‫است‬return‫باعث‬
‫کرده‬ ‫فراخوانی‬ ‫را‬ ‫متد‬ ‫که‬ ‫جایی‬ ‫به‬ ‫را‬ ‫کنترل‬ ‫و‬ ‫شود‬ ‫می‬ ‫جاری‬ ‫متد‬ ‫از‬ ‫خروج‬
‫گرداند‬ ‫برمی‬ ،‫.بود‬
‫دستور‬return‫برای‬ .‫نه‬ ‫دیگری‬ ‫و‬ ‫گرداند‬ ‫برمی‬ ‫مقدار‬ ‫یک‬ ‫یکی‬ :‫دارد‬ ‫حالت‬ ‫دو‬
‫می‬ ‫محاسبه‬ ‫را‬ ‫مقدار‬ ‫یک‬ ‫که‬ ‫عبارت‬ ‫یک‬ ‫)یا‬ ‫مقدار‬ ‫یک‬ ،‫مقدار‬ ‫یک‬ ‫برگرداندن‬
‫کلیدی‬ ‫کلمه‬ ‫از‬ ‫بعد‬ (‫کند‬return:‫روتسد ،باعشنا روتسد نیرخآید‬ ‫می‬
return ++count;
.‫باشد‬ ‫یکی‬ ‫متد‬ ‫شده‬ ‫اعلن‬ ‫برگشتی‬ ‫مقدار‬ ‫با‬ ‫باید‬ ‫بازگشتی‬ ‫داده‬ ‫نوع‬ ‫مقدار‬
‫متد‬ ‫یک‬ ‫وقتی‬void‫نمی‬ ‫داده‬ ‫برگشت‬ ‫مقدار‬ ‫که‬ ‫حالتی‬ ‫از‬ ،‫شود‬ ‫می‬ ‫اعلن‬
:‫شود‬ ‫می‬ ‫استفاده‬ ‫شود‬
return;
Branch Statements
References
[1]http://docs.oracle.com/javase/tutorial/java/nutsand
bolts/index.html
[2]http://en.wikipedia.org/wiki/Computing_platform
[3]http://forum.downloadina.com/thread19025.html
[4]http://sun73.persianblog.ir/post/68/
[5]http://www.sampadia.com/forum/index.php?
topic=3051.0
‫مسآخذ‬ ‫و‬ ‫منسابع‬

More Related Content

PPTX
Kotlin
AlirezaGoshayesh
 
PDF
Cpusimulation
danesh_fd
 
PDF
Mohamady zahedy c#
danesh_fd
 
PDF
Jozve c#2 mohamady_zahedy
danesh_fd
 
PPT
C++
guestdcb75
 
ODP
Go Programming Language
Muhammadreza Haghiri
 
PPTX
Calculator
UVSofts Technologies
 
DOC
رزومه باستی مهر 94
hamid basti
 
Cpusimulation
danesh_fd
 
Mohamady zahedy c#
danesh_fd
 
Jozve c#2 mohamady_zahedy
danesh_fd
 
Go Programming Language
Muhammadreza Haghiri
 
رزومه باستی مهر 94
hamid basti
 

Viewers also liked (20)

DOCX
CATERING ASSISTANT CV
Michelle Frederick
 
PDF
дороги побед
DirDOgM
 
PPTX
Ethnic Identities
TirzaAshruf
 
PDF
Literary Criticism Based on the Social Psychology
Mahmood Amirinia
 
DOC
ERIC NEW RESUME[1]
Eric Bushman
 
PPTX
Articles
amazingamishi
 
PPTX
Reversible Jackets
emsshirts11
 
PPTX
Lienket
Ngoc2009
 
PPTX
Luz
ladelaida
 
PPT
Eating the Elephant
Hazel Catalan
 
PDF
PACS Literature Review
Alice Kedge
 
PPTX
Powerpoint for walmart
Melanie Overstreet
 
PDF
Socket Programming in C++
saeed_delphi
 
PDF
مجموعه آموزش های برنامه نویسی آردوینو با محوریت پروژه های رباتیک
faradars
 
PPTX
ATMEGA 328
ABHISHEK MAURYA
 
PPT
War field spying robot
ARUN S L
 
PPTX
THE VEIL FRAMEWORK
Sukesh Shetty
 
PPTX
Seminar on Body Area Networks
Vinayak Narayanan
 
PPTX
War Field Spying Robot with Fire Fighting Alarm.
vansh_raheja
 
PPTX
Wireless Body Area Networks
Musfiqur Rahman
 
CATERING ASSISTANT CV
Michelle Frederick
 
дороги побед
DirDOgM
 
Ethnic Identities
TirzaAshruf
 
Literary Criticism Based on the Social Psychology
Mahmood Amirinia
 
ERIC NEW RESUME[1]
Eric Bushman
 
Articles
amazingamishi
 
Reversible Jackets
emsshirts11
 
Lienket
Ngoc2009
 
Eating the Elephant
Hazel Catalan
 
PACS Literature Review
Alice Kedge
 
Powerpoint for walmart
Melanie Overstreet
 
Socket Programming in C++
saeed_delphi
 
مجموعه آموزش های برنامه نویسی آردوینو با محوریت پروژه های رباتیک
faradars
 
ATMEGA 328
ABHISHEK MAURYA
 
War field spying robot
ARUN S L
 
THE VEIL FRAMEWORK
Sukesh Shetty
 
Seminar on Body Area Networks
Vinayak Narayanan
 
War Field Spying Robot with Fire Fighting Alarm.
vansh_raheja
 
Wireless Body Area Networks
Musfiqur Rahman
 
Ad

Similar to Java programming languages (20)

PPTX
Javascript
javadboroji
 
PPTX
Javascript
javadboroji
 
PPTX
مقدمه ای بر F#
Shahriar Yazdipour
 
PPTX
اسلاید های شروع برنامه نویسی اندروید با جاوا - مهندس سید وحید هاشمی
Vahid Hashemi
 
PPTX
مقایسه دو زبان جاوا و لیسپ درس پی ال
Ali Ghaeni
 
PDF
how enable ceph dashboard
Yashar Esmaildokht
 
PDF
rbdmap in ceph
Yashar Esmaildokht
 
PDF
Pg autoscaling in ceph
Yashar Esmaildokht
 
PPTX
Java script
BaharehFarmani
 
PDF
Rbdmap ceph realease 0.2
Yashar Esmaildokht
 
PPTX
About Programming - persion.pptx
Hossein Darvishi
 
PPTX
آشنایی با زبان جاوا - مقدماتی اندروید
Sadegh Ghanbari Shohani
 
PDF
Sql tuning
mehrdadkarami3
 
PDF
Cisco Exploration 2 In Persion-Muhibullah Aman
Muhibullah Aman
 
PDF
مسیردهی و پروتوکولهای مسیریابی
Muhibullah Aman
 
PDF
How Create Waf With Naxsi
Yashar Esmaildokht
 
PDF
Ssh edition 2
Yashar Esmaildokht
 
PDF
(Linux Ubuntu Guide in Persian- Basic)رهنمود سیستم عامل اوبنتو فارسی- محب ال...
Muhibullah Aman
 
PDF
Machine & Assembly Language - Chapter 1
M Nemati
 
PPTX
سی پلاس پلاس به عنوان زبان دومی برای یادگیری شی گرایی
mrm_196
 
Javascript
javadboroji
 
Javascript
javadboroji
 
مقدمه ای بر F#
Shahriar Yazdipour
 
اسلاید های شروع برنامه نویسی اندروید با جاوا - مهندس سید وحید هاشمی
Vahid Hashemi
 
مقایسه دو زبان جاوا و لیسپ درس پی ال
Ali Ghaeni
 
how enable ceph dashboard
Yashar Esmaildokht
 
rbdmap in ceph
Yashar Esmaildokht
 
Pg autoscaling in ceph
Yashar Esmaildokht
 
Java script
BaharehFarmani
 
Rbdmap ceph realease 0.2
Yashar Esmaildokht
 
About Programming - persion.pptx
Hossein Darvishi
 
آشنایی با زبان جاوا - مقدماتی اندروید
Sadegh Ghanbari Shohani
 
Sql tuning
mehrdadkarami3
 
Cisco Exploration 2 In Persion-Muhibullah Aman
Muhibullah Aman
 
مسیردهی و پروتوکولهای مسیریابی
Muhibullah Aman
 
How Create Waf With Naxsi
Yashar Esmaildokht
 
Ssh edition 2
Yashar Esmaildokht
 
(Linux Ubuntu Guide in Persian- Basic)رهنمود سیستم عامل اوبنتو فارسی- محب ال...
Muhibullah Aman
 
Machine & Assembly Language - Chapter 1
M Nemati
 
سی پلاس پلاس به عنوان زبان دومی برای یادگیری شی گرایی
mrm_196
 
Ad

Java programming languages

  • 1. Java Programming Languages ‫جاوا‬ ‫نویسی‬ ‫برنامه‬ ‫زبان‬ ‫جوادی‬ ‫برات‬ ‫بهــــــار‬91
  • 2. ‫مطالب‬ ‫فهرست‬ ‫چیست؟‬ ‫سـکو‬ ‫موبایل‬ ‫نویسی‬ ‫برنامه‬ ‫زبان‬ ‫تاریخچه‬ ‫جاوا‬ ‫های‬ ‫قابلیت‬ ‫اصلی‬ ‫داده‬ ‫نوع‬ ‫جاوا‬ ‫زبان‬ ‫گرامر‬ ‫جاوا‬ ‫زبان‬ ‫در‬ ‫ساختار‬ ‫دستورات‬ ‫و‬ ‫دید‬ ‫میدان‬ ،‫عبارات‬ ‫کنترلی‬ ‫ساختار‬ ‫منابع‬ Index
  • 3. ‫چیست؟‬ ‫سـکو‬ ‫مجموعه‬ ‫از‬ ‫اسـت‬ ‫عبارت‬ ،‫کاربردی‬ ‫و‬ ‫غیرعلمـی‬ ‫تعریـف‬ ‫یـک‬ ‫در‬ ‫سـکو‬ ‫زیربنای‬ ‫قرارگرفتن‬ ‫هم‬ ‫کنار‬ ‫با‬ ‫که‬ ‫مافزاری‬‌‫ا‬ ‫نر‬ ‫و‬ ‫تافزاری‬‌‫ا‬ ‫سخ‬ ‫پایه‬ ‫ههای‬‌‫ا‬ ‫مؤلف‬ .‫یکنند‬‌‫ا‬ ‫م‬ ‫فراهم‬ ‫را‬ ‫مافزار‬‌‫ا‬ ‫نر‬ ‫یک‬ ‫اجرای‬ ‫و‬ ‫تهیه‬ .‫است‬ ‫افزار‬ ‫نرم‬ ‫توسعه‬ ‫در‬ ‫کننده‬ ‫تعیین‬ ‫عنصر‬ ‫یک‬ ‫سکو‬ ‫کد‬ ‫کـه‬ ‫دهـد‬ ‫مـی‬ ‫پیشنهاد‬ ‫افراز‬ ‫نرم‬ ‫دهنده‬ ‫توسـعه‬ ‫بـه‬ ‫سـکو‬ ‫کننده‬ ‫فراهـم‬ ‫اجرا‬ ‫سکوها‬ ‫بقیه‬ ‫برروی‬ ‫و‬ ‫طولنی‬ ‫مدت‬ ‫به‬ ،‫نقص‬ ‫بدون‬ ‫که‬ ‫کند‬ ‫اجرا‬ ‫منطقی‬ ‫شود‬. :‫موبایل‬ ‫سکوهای‬ ‫از‬ ‫برخی‬ •Android •Symbian •IOS •Windos Phone •... What’s Platform?
  • 4. ‫نویسی‬ ‫برنامه‬ ‫زبانهای‬ ‫تاریخچه‬ ‫موبایل‬ ‫سال‬1991‫شرکت‬ ،‫میلدی‬Sun Microsystems ‫عنوان‬ ‫تحت‬ ‫ای‬ ‫پروژه‬Green‫را‬ .‫نمود‬ ‫آغاز‬ ‫هایی‬ ‫دسـتگاه‬ ‫کنترل‬ ‫جهـت‬ ‫افزاری‬ ‫نرم‬ ‫ابزار‬ ‫ایجاد‬ ‫پروژـه‬ ‫ایـن‬ ‫اصلی‬ ‫هدف‬ ‫ماننـد‬set-top Box‫و‬ (‫اینترنت‬ ‫بـه‬ ‫دسـترسی‬ ‫جهـت‬ ‫ای‬ ‫)وسـیله‬PDA (Personal Digital Assistant( .‫بود‬ ... ‫و‬ ‫با‬ ‫بازار‬ ‫به همسو کردن‬ ‫قادر‬ ‫جدید‬ ‫تکنولوژی‬ ‫یک‬ ‫ایجاد‬ ‫وجود‬ ‫با‬ ‫فوق‬ ‫گروه‬ .‫نبود‬ ‫همراه‬ ‫موفقیت‬ ‫با‬ ‫محصولشان‬ ‫فروش‬ ‫نتیجه‬ ‫در‬ ‫و‬ ‫نبودند‬ ‫خود‬ ‫اهداف‬ ‫فهمیدند‬ ‫گروه‬ ‫اعضای‬ ،‫بررسی‬ ‫و‬ ‫تحقیق‬ ‫مدتی‬ ‫پس از‬ ‫با‬ ‫که‬‫تکنولوژی‬ ‫کارگیری‬ ‫به‬ ‫و‬ ‫اینترنت‬ ‫عرصه‬ ‫به‬ ‫ورود‬ ‫ابداعی‬.‫رسید‬ ‫خواهند‬ ‫موفقیت‬ ‫به‬ ،‫خود‬ History
  • 5. ‫نویسی‬ ‫برنامه‬ ‫زبانهای‬ ‫تاریخچه‬ ‫موبایل‬ Gosling ‫گوید‬ ‫می‬ ‫زمینه‬ ‫این‬ ‫:در‬ ‫ها‬ ‫برنامه‬ ‫اجرای‬ ‫و‬ ‫توزیع‬ ‫جهت‬ ‫امکانی‬ ‫ایجاد‬ ،‫بودیم‬ ‫آن‬ ‫بدنبال‬ ‫که‬ ‫چیزی‬ ‫ه‬‌‫ا‬ ‫"هم‬ ".‫بود‬ ‫اینترنت‬ ‫تحت‬ ‫شرکـت‬Sun‫سـال‬ ‫در‬1994 ‫نام‬ ‫بـا‬ ‫اینترنتـی‬ ‫مرورگـر‬ ‫یـک‬HotJtava ‫توانایی‬ ‫کـه‬ ‫اجرای‬Applet .‫آورد‬ ‫بوجود‬ ،‫داشت‬ ‫را‬ ‫جاوا‬ ‫های‬ ‫سال‬1995‫جاوا‬ ‫سازی‬ ‫برنامه‬ ‫زبان‬ ‫از‬ ‫نسخه‬ ‫اولین‬)Java 1.0 (‫برنامه‬ ‫اختیار‬ ‫در‬ .‫گرفت‬ ‫قرار‬ ‫نویسان‬ ‫سوق‬ ‫زیر‬ ‫موارد‬ ‫مانند‬ ‫هایی‬ ‫فعالیت‬ ‫سمت‬ ‫به‬ ‫ابزار‬ ‫این‬ ،‫جاوا‬ ‫اول‬ ‫نسخه‬ ‫ورود‬ ‫با‬ :‫نمود‬ ‫پیدا‬ ‫آنلین‬ ‫وب‬ ‫های‬ ‫فروشگاه‬ ‫تراکنش‬ ‫پردازش‬ ‫داده‬ ‫پایگاه‬ ‫های‬ ‫رابط‬ ،‫موبایل‬ ‫مثل‬ ‫کوچک‬ ‫های‬ ‫پلتفرم‬PDA‫هوشمند‬ ‫های‬ ‫کارت‬ ، History
  • 6. ‫نویسی‬ ‫برنامه‬ ‫زبانهای‬ ‫تاریخچه‬ ‫موبایل‬ ‫جدیـد‬ ‫نسـخه‬java2،‫مختلف‬ ‫ع‬‌‫ا‬ ‫انوا‬ ‫برای‬ ‫را‬ ‫جدیدی‬ ‫بهای‬‌‫ا‬ ‫ترکی‬ ‫توانسـت‬ .‫کند‬ ‫ایجاد‬ ‫مها‬‌‫ا‬ ‫پلتفر‬ ‫سال‬ ‫در‬2006‫جدید‬ ‫نسخه‬ ‫شرکت‬ ‫این‬ ،‫بازاریابی‬ ‫هدف‬ ‫با‬J2‫مهای‬‌‫ا‬ ‫نا‬ ‫با‬ ‫را‬ JavaEE ،JavaME‫و‬JavaSE.‫کرد‬ ‫منتشر‬ :‫است‬ ‫شده‬ ‫گرفته‬ ‫نظر‬ ‫در‬ ‫جاوا‬ ‫سازی‬ ‫پیاده‬ ‫زمان‬ ‫در‬ ‫اصلی‬ ‫هدف‬ ‫پنج‬ ‫شود‬ ‫استفاده‬ ‫کامل‬ ‫بطور‬ ‫زبان‬ ‫این‬ ‫در‬ ‫گرایی‬ ‫شی‬ ‫متدلوژی‬ ‫از‬ ‫مختلف‬ ‫های‬ ‫عامل‬ ‫سیستم‬ ‫در‬ ‫یکسان‬ ‫های‬ ‫برنامه‬ ‫اجرای‬ ‫قابلیت‬ ‫کامپیوتری‬ ‫های‬ ‫شبکه‬ ‫های‬ ‫ویژگی‬ ‫از‬ ‫پشتیبانی‬ ‫امن‬ ‫کامل‬ ‫بصورت‬ ‫ها‬ ‫برنامه‬ ‫دور‬ ‫راه‬ ‫اجرای‬ ‫زبانهای‬ ‫سایر‬ ‫مفید‬ ‫اجزاء‬ ‫انتخاب‬ ‫کمک‬ ‫به‬ ‫زبان‬ ‫ساده‬ ‫و‬ ‫راحت‬ ‫کاربرد‬ ‫جاوا‬ ‫در‬ ‫آن‬ ‫از‬ ‫استفاده‬ ‫و‬ ‫شیءگرا‬ History
  • 7. ‫جاوا‬ ‫زبان‬ ‫های‬ ‫قابلیت‬ :‫از‬ ‫عبارتند‬ ‫جاوا‬ ‫زبان‬ ‫ی‬ ‫ها‬ ‫قابلیت‬ ++ ‫به‬ ‫شبیه‬ ‫جاوا‬ ‫زبان‬C ‫است‬ ‫دارد‬ ‫تری‬ ‫گرایی آسان‬ ‫شی‬ ‫مدل‬ ‫می کند‬ ‫پشتیبانی‬ ‫کمتری‬ ‫پایین‬ ‫سطح‬ ‫قابلیتهای‬ ‫از‬ ‫دهد‬ ‫می‬ ‫انجام‬ ‫خودکار‬ ‫بطور‬ ‫حافظه را‬ ‫مدیریت‬ ‫است‬ ‫بال‬ ‫زبان‬ ‫این‬ ‫به‬ ‫شده‬ ‫نوشته‬ ‫ههای‬‌‫ه‬ ‫برنام‬ ‫عملکرد‬ ‫اطمینان‬ ‫ضریب‬ ‫نیست‬ ‫)سکو( خاصی‬ ‫عامل‬ ‫به سیستم‬ ‫وابسته‬ ‫یشوند‬‌‫ه‬ ‫م‬ ‫بیتی کامپایل‬ ‫کدهای‬ ‫صورت‬ ‫به‬ ‫جاوا‬ ‫ههای‬‌‫ه‬ ‫برنام‬ Capability
  • 8. ‫اصلی‬ ‫های‬ ‫داده‬ ‫نوع‬ :‫از‬ ‫عبارتند‬ ‫جاوا‬ ‫اصلی‬ ‫های‬ ‫داده‬ ‫نوع‬ byte: ‫یک‬8) ‫است‬ ‫صحیح‬ ‫عدد‬ ‫دو‬ ‫مکمل‬ ‫علمتدار‬ ‫بیتی‬127‫تا‬128-). short: ‫یک‬16) ‫است‬ ‫صحیح‬ ‫عدد‬ ‫دو‬ ‫مکمل‬ ‫علمتدار‬ ‫بیتی‬32767‫تا‬ 32768-). int:‫یک‬32) ‫است‬ ‫صحیح‬ ‫عدد‬ ‫دو‬ ‫مکمل‬ ‫علمتدار‬ ‫بیتی‬2147483647‫تا‬ 2147483648-). long:‫یک‬64‫است‬ ‫صحیح‬ ‫عدد‬ ‫دو‬ ‫مکمل‬ ‫علمتدار‬ ‫بیتی‬ )9223372036854775807‫تا‬9223372036854775808-). float: ‫یک‬32‫)در‬ ‫رقمی‬ ‫تک‬ ‫بیت‬IEEE) ‫دقت‬ ‫با‬754‫است‬ ‫شناور‬ ‫نقطه‬ . double: ‫یک‬64‫)در‬ ‫رقمی‬ ‫دو‬ ‫بیت‬IEEE) ‫دقت‬ ‫با‬754‫است‬ ‫شناور‬ ‫نقطه‬ . boolean: ‫بگیرد‬ ‫مقدار‬ ‫دو‬ ‫تواند‬ ‫می‬ ‫:فقط‬false, true char: ‫یونیکد‬ ‫کاراکتر‬ ‫یک‬16‫تکی‬ ‫بیت‬ (u0000‫تا‬uffff) ) ‫یا‬0‫تا‬65535). Primitive Data Type
  • 9. ‫جاوا‬ ‫زبان‬ ‫گرامر‬ ‫از‬ ‫جاوا‬ ‫زبان‬ ‫گرامر‬ ‫بیشتر‬C++‫است‬ ‫شده‬ ‫مشتق‬  ‫خل ف‬ ‫بر‬C++، ‫گرا‬ ‫یافته، عمومی، شی‬ ‫از برنامه نویسی ساخت‬ ‫که ترکیبی‬ ‫شده‬ ‫گرا ساخته‬ ‫زبان شی‬ ‫انحصاری به عنوان یک‬ ‫طور‬ ‫به‬ ‫است، جاوا تقریبا‬ .‫است‬ ‫جز‬ ‫به‬ ‫است؛‬ ‫شی‬ ‫یک‬ ‫چیز‬ ‫هر‬ ‫و‬ ‫شوند‬ ‫می‬ ‫نوشته‬ ‫کل س‬ ‫داخل‬ ‫کدها‬ ‫همه‬ ‫اصلی‬ ‫های‬ ‫داده‬ ‫نوع‬ ‫برخل ف‬C++،،‫کل س‬ ‫برای‬ ‫چندگانه‬ ‫وراثت‬ ‫و‬ ‫عملگرها‬ ‫سربارگذاری‬ ‫از‬ ‫جاوا‬ ‫کند‬ ‫نمی‬ ‫پشتیبانی‬.‫و‬ ‫بالقوه‬ ‫خطاهای‬ ‫از‬ ‫جلوگیری‬ ‫در‬ ‫و‬ ‫ساده‬ ‫را‬ ‫زبان‬ ‫کار‬ ‫این‬ ‫کند‬ ‫می‬ ‫کمک‬ ‫طراحی‬ ‫الگوی‬ ‫ضد‬  :‫دارد‬ ‫وجود‬ ‫جاوا‬ ‫در‬ ‫توضیحات‬ ‫نوشتن‬ ‫برای‬ ‫مختلف‬ ‫راه‬ ‫سه‬ (‫خط‬ ‫)یک‬ ‫توضیحات‬ ‫جمله‬ ‫اول‬ ‫در‬ // ‫از‬ ‫استفاده‬ ‫توضیحات‬ ‫جمله‬ ‫آخر‬ ‫در‬ */ ‫و‬ ‫جمله‬ ‫اول‬ ‫در‬ /* ‫از‬ ‫استفاده‬(‫خط‬ ‫)چند‬ ‫برای‬ ‫خاص‬ ‫)حالت‬ ‫توضیحات‬ ‫جمله‬ ‫آخر‬ ‫در‬ */ ‫و‬ ‫جمله‬ ‫اول‬ ‫در‬ /** ‫از‬ ‫استفاده‬ Javadoc( Syntax
  • 10. ‫جاوا‬ ‫زبان‬ ‫ساختار‬ :‫جاوا‬ ‫ساختارهای‬ ‫از‬ ‫برخی‬ )‫خودکار‬ ‫تبدیل‬Automatic Conversion‫دیگر؛‬ ‫نوعی‬ ‫به‬ ‫داده‬ ‫نوع‬ ‫یک‬ ‫تبدیل‬ :( :‫درصورتیکه‬ •‫باشند‬ ‫سازگار‬ ‫یکدیگر‬ ‫یا‬ ‫نوع‬ ‫دو‬ •‫باشد‬ ‫مبدا‬ ‫نوع‬ ‫از‬ ‫بزرگتر‬ ‫مقصد‬ ‫نوع‬ ) ‫خودکار‬ ‫غیر‬ ‫تبدیل‬Type Casting‫سازگار‬ ‫داده‬ ‫نوع‬ ‫به‬ ‫داده‬ ‫نوع‬ ‫یک‬ ‫تبدیل‬ :( ‫از‬ ‫صریحا‬ ‫باید‬ ‫خودکار‬ ‫غیر‬ ‫تبدیل‬ ‫برای‬ .‫دیگر‬Cast.‫کنید‬ ‫استفاده‬ ) ‫فرض‬ ‫پیش‬ ‫مقدار‬ ،‫متغیرهها‬ ‫برخل ف‬ ‫فیلدهها‬ :‫فرض‬ ‫پیهش‬ ‫مقادیهر‬Default Value) ‫زباله‬ ‫مقدار‬ ‫دارای‬ ‫متغیرها‬ .‫دارند‬ (Garbage Value.‫هستند‬ ( Java Structure Data Type Byte Short Int Long Float Double Char String Booelan Default 0 0 0 0L 0.0f 0.0d u0000 Null False
  • 11. ‫دید‬ ‫میدان‬ ،‫دستورات‬ ،‫عبارات‬ ‫عبارت‬‫شده‬ ‫بنا‬ ‫زبان‬ ‫آن‬ ‫گرامر‬ ‫اسا س‬ ‫بر‬ ‫که‬ ‫متدهایی‬ ‫و‬ ‫عملگر‬ ،‫متغیر‬ ‫از‬ : .‫شوند‬ ‫می‬ ‫ساخته‬ ،‫اند‬ :‫ید‬‫د‬ ‫میدان‬‫و‬ ‫است‬ ‫بسته‬ ‫و‬ ‫باز‬ ‫اکولد‬ ‫بین‬ ‫بیشتر‬ ‫یا‬ ‫دستور‬ ‫صفر‬ ‫از‬ ‫جمعی‬ .‫گیرد‬ ‫قرار‬ ‫استفاده‬ ‫مورد‬ ‫است‬ ‫مجاز‬ ‫دستور‬ ‫یک‬ ‫که‬ ‫هرجا‬ ‫تواند‬ ‫می‬ ‫ستور‬‫د‬‫یک‬ ‫دستور‬ .‫هستند‬ ‫طبیعی‬ ‫زبان‬ ‫در‬ ‫جملت‬ ‫معادل‬ ‫تقریبا‬ ‫دستورات‬ : ‫یک‬ ‫داخهل‬ ‫تواننهد‬ ‫مهی‬ ‫عبارات‬ ‫انواع‬ .‫دهد‬ ‫مهی‬ ‫شکهل‬ ‫را‬ ‫اجرا‬ ‫از‬ ‫کامهل‬ ‫واحهد‬ .‫شوند‬ ‫ساخته‬ ،‫کولن‬ ‫سمی‬ ‫یک‬ ‫با‬ ‫عبارت‬ ‫دادن‬ ‫پایان‬ ‫توسط‬ ‫دستور‬ ‫زیر‬ ‫دستورات‬“‫بیانی‬ ‫دستورات‬”.‫شوند‬ ‫می‬ ‫نامیده‬ ‫جایگزینی‬ ‫عبارات‬ -- ++‫یا‬ ‫از‬ ‫استفاده‬ ‫هر‬ ‫متدها‬ ‫فراخوانی‬ ‫شی‬ ‫ساخت‬ ‫عبارات‬ Expressions, Statements, Blocks
  • 12. ‫کنترلی‬ ‫دستورات‬ ‫و‬ ‫حلقه‬ ،‫گیری‬ ‫تصمیم‬ ‫بکارگیری‬ ‫با‬ ‫را‬ ‫جاری‬ ‫دستور‬ ‫اجرای‬ ‫کنترلی‬ ‫دستورات‬ ‫صورت‬ ‫بهه‬ ‫تها‬ ‫سهازند‬ ‫مهی‬ ‫قادر‬ ‫را‬ ‫شمها‬ ‫برنامهه‬ ‫و‬ ‫کنهد‬ ‫مهی‬ ‫تفکیهک‬ ‫انشعاب‬ .‫شود‬ ‫اجرا‬ ‫کد‬ ‫از‬ ‫خاصی‬ ‫بل ک‬ ‫مشروط‬ ) ‫گیری‬ ‫تصمیم‬ ‫دسهتورات‬ ‫درباره‬ ‫بخهش‬ ‫ایهن‬if-then, if-then-else, switch،( ) ‫هه‬‫ه‬‫حلق‬ ‫هتورات‬‫ه‬‫دس‬for, while, do-while) ‫انشعاب‬ ‫دستورات‬ ‫و‬ (break, continue, return:‫دهد‬ ‫می‬ ‫توضیح‬ ‫شوند‬ ‫می‬ ‫پشتیبانی‬ ‫جاوا‬ ‫توسط‬ ‫که‬ ( False True Control Flow Statements Start Is True? Statement Stop
  • 13. ‫تصمیم‬ ‫دستورات‬ ‫گیری‬ If-then: ‫دستور‬If-then‫به‬ ‫دستور‬ ‫این‬ .‫است‬ ‫کنترلی‬ ‫دستورات‬ ‫ترین‬ ‫ابتدایی‬ ‫از‬ ،‫شد‬ "‫"درست‬ ‫ارزیابی‬ ‫خاص‬ ‫آزمون‬ ‫یک‬ ‫اگر‬ ‫فقط‬ ‫که‬ ‫گوید‬ ‫می‬ ‫شما‬ ‫برنامه‬ ‫کل س‬ ‫مثال‬ ‫برای‬ .‫کن‬ ‫اجرا‬ ‫را‬ ‫کد‬ ‫از‬ ‫مشخص‬ ‫بخش‬ ‫یک‬Bicycle‫به‬ ‫تواند‬ ‫می‬ ‫حال‬ ‫در‬ ‫از‬ ‫دوچرخه‬ ‫اگر‬ ‫فقط‬ ‫دهد؛‬ ‫اجازه‬ ‫دوچرخه‬ ‫سرعت‬ ‫کاهش‬ ‫برای‬ ‫ترمز‬ ‫باشد‬ ‫.حرکت‬ void applyBrakes() { // the "if" clause: bicycle must be moving if (isMoving){ // the "then" clause: decrease current speed currentSpeed--; } } Decision Statements
  • 14. ‫تصمیم‬ ‫دستورات‬ ‫گیری‬ If-then-else: ‫عبارت‬ ‫یک‬ ‫وقتی‬“if”‫دستور‬ ،‫شود‬ ‫می‬ "‫"نادرست‬ ‫ارزیابی‬If- then-else‫متد‬ ‫در‬ .‫کند‬ ‫می‬ ‫فراهم‬ ‫اجرا‬ ‫برای‬ ‫را‬ ‫دومی‬ ‫راه‬ ‫یک‬applyBrakes، ‫دستور‬ ‫از‬ ‫توانیید‬ ‫می‬if-then-else‫کنید؛‬ ‫استفاده‬ ‫عملیات‬ ‫برخی‬ ‫انجام‬ ‫برای‬ ‫شدند‬ ‫گرفته‬ ‫ترمزها‬ ‫و‬ ‫نبود‬ ‫حرکت‬ ‫حال‬ ‫در‬ ‫دوچرخه‬ ‫.وقتی‬ void applyBrakes() { if (isMoving) { currentSpeed--; } else { System.err.println("The bicycle has " + "already stopped!"); } } Decision Statements
  • 15. ‫تصمیم‬ ‫دستورات‬ ‫گیری‬ Switch: ‫دستورات‬ ‫برخل ف‬if-then‫و‬if-then-else، ‫دستور‬switch‫تواند‬ ‫می‬ ‫دستور‬ .‫باشد‬ ‫داشته‬ ‫ممکن‬ ‫اجرای‬ ‫مسیر‬ ‫چندین‬switch‫اصلی‬ ‫داده‬ ‫انواع‬ ‫با‬ byte، short، char‫و‬int‫نوع‬ ‫با‬ ‫همچنین‬ .‫کند‬ ‫می‬ ‫کار‬enumerated، ‫کل س‬ String، ‫میدهند‬ ‫پوشیش‬ ‫را‬ ‫اصیلی‬ ‫داده‬ ‫انواع‬ ‫کیه‬ ‫ویژیه‬ ‫کل س‬ ‫تعدادی‬ ‫و‬ )Character, Byte, Short, Integer( ‫کند‬ ‫می‬ ‫.کار‬ int day = 5; Switch(day){ Case 1: dayString = “Saturday”; break; Case 2: dayString = “Sunday”; break; Case 3: dayString = “Monday”; break; Case 4: dayString = “Tuesday”; break; Case 5: dayString = “Wednesday”; break; Case 6: dayString = “Thursday”; break; Case 7: dayString = “Friday”; break; default: dayString = “Invalid Input!”; break; } Decision Statements
  • 16. ‫حلقه‬ ‫دستورات‬ While: ‫دستور‬while‫ارزیابی‬ ،‫برگرداند‬ ‫را‬ ‫بولی‬ ‫مقدار‬ ‫یک‬ ‫باید‬ ‫که‬ ‫عبارتی‬ ‫دسیتور‬ ،‫بود‬ "‫"درسیت‬ ‫ارزیابیی‬ ‫نتیجیه‬ ‫اگیر‬ .‫کند‬ ‫میی‬while‫داخل‬ )‫دسیتور(ات‬ ‫بل ک‬while‫کند‬ ‫می‬ ‫اجرا‬ ‫.را‬ ‫دستور‬while‫کند‬ ‫می‬ ‫اجرا‬ ‫را‬ ‫آن‬ ‫بل ک‬ ‫و‬ ‫دهد‬ ‫می‬ ‫ادامه‬ ‫را‬ ‫عبارت‬ ‫تست‬ ‫عمل‬ .‫شود‬ "‫"نادرست‬ ‫ارزیابی‬ ‫نتیجه‬ ‫که‬ ‫زمانی‬ ‫تا‬ Do-while: ‫بین‬ ‫تفاوت‬while‫و‬do-while‫که‬ ‫است‬ ‫این‬class WhileDemo { do-while‫حلقه‬ ‫پائین‬ ‫را‬ ‫عبارت‬public static void main(String[] args(} ‫حلقه‬ ‫داخل‬ ‫دستورات‬ ‫بنابراین‬ ‫کند؛‬ ‫می‬ ‫ارزیابی‬int count = 1; do‫شوند‬ ‫می‬ ‫اجرا‬ ‫یکبار‬ ‫حداقل‬ ‫.همیشه‬while (count < 11) { System.out.println("Count is: " + count); Loop Statements
  • 17. ‫حلقه‬ ‫دستورات‬ for: ‫دستور‬for‫فراهم‬ ‫را‬ ‫مقادیر‬ ‫از‬ ‫بال‬ ‫رنج‬ ‫یک‬ ‫تکرار‬ ‫برای‬ ‫فشرده‬ ‫راه‬ ‫یک‬ ‫"حلقه‬ ‫بعنوان‬ ‫آن‬ ‫به‬ ‫اغلب‬ ‫ها‬ ‫نویس‬ ‫برنامه‬ .‫کند‬ ‫می‬for" ‫کنند؛‬ ‫می‬ ‫رجوع‬ ‫زمانیکه‬ ‫تا‬ ‫شود‬ ‫می‬ ‫تکرار‬ ‫بارها‬ ‫و‬ ‫بارها‬ ‫حلقه‬ ‫که‬ ‫است‬ ‫روشهای‬ ‫از‬ ‫یکی‬ ‫چون‬ ‫است‬ ‫برقرار‬ ‫مخصوص‬ ‫شرط‬ ‫.یک‬ :‫که‬ ‫باشید‬ ‫داشته‬ ‫یاد‬ ‫به‬ •‫عبارت‬“initialization”‫اجرا‬ ‫بار‬ ‫یک‬ ‫آن‬ ‫کند؛‬ ‫می‬ ‫اولیه‬ ‫دهی‬ ‫مقدار‬ ‫را‬ ‫حلقه‬ ‫شود‬ ‫می‬ •‫عبارت‬ ‫وقتی‬“termination”.‫یابد‬ ‫می‬ ‫خاتمه‬ ‫حلقه‬ ،‫شود‬ "‫"نادرست‬ ‫ارزیابی‬ •‫عبارت‬“increment”‫برای‬ ‫عبارت‬ ‫این‬ .‫شود‬ ‫می‬ ‫احضار‬ ‫حلقه‬ ‫تکرار‬ ‫هر‬ ‫از‬ ‫بعد‬ .‫است‬ ‫قبول‬ ‫قابل‬ ‫کامل‬ ‫مقدار‬ ‫یک‬ ‫کاهش‬ ‫یا‬ ‫افزایش‬ for (initialization; termination; increment) { statement(s) } Loop Statements
  • 18. ‫انشعاب‬ ‫دستورات‬ Break: ‫دسیتور‬break‫بدون‬ .‫برچسب‬ ‫بدون‬ ‫و‬ ‫دار‬ ‫برچسیب‬ :‫دارد‬ ‫شکیل‬ ‫دو‬ ‫دستور‬ ‫در‬ ‫را‬ ‫برچسب‬switch‫یک‬ ‫دادن‬ ‫پایان‬ ‫برای‬ ‫توانید‬ ‫می‬ ‫همچنین‬ ‫و‬ ‫دیدید‬ ‫دستور‬ ‫از‬ ‫حلقه‬break‫کنید‬ ‫استفاده‬ ‫برچسب‬ ‫.بدون‬ ‫دسیتور‬ ‫ییک‬break‫دستور‬ ‫تریین‬ ‫داخلیی‬ ‫برچسیب‬ ‫بدون‬switch ،for ،while، do-while‫دستور‬ ‫اما‬ ‫دهد‬ ‫می‬ ‫پایان‬ ‫را‬break‫خارجی‬ ‫دستور‬ ‫یک‬ ‫دار‬ ‫برچسب‬ :‫دهد‬ ‫می‬ ‫پایان‬ ‫را‬ ‫تر‬ search: for (i = 0; i < arrayOfInts.length; i++) { for (j = 0; j < arrayOfInts[i].length; j++) { if (arrayOfInts[i][j] == searchfor) { foundIt = true; break search; } } } Branch Statements
  • 19. ‫انشعاب‬ ‫دستورات‬ Continue: ‫دسستور‬continue‫حلقسه‬ ‫یسک‬ ‫فعلسی‬ ‫تکرار‬ ‫از‬for، while‫یسا‬do- while‫حلقه‬ ‫بدنه‬ ‫ترین‬ ‫داخلی‬ ‫پایان‬ ‫به‬ ‫برچسب‬ ‫بدون‬ ‫حالت‬ .‫کند‬ ‫می‬ ‫هقلح هندب نیرت یلخاد نایاپ هب بسچرب نودب تلاح .دنک یم رظنفرصرفنظر‬ ‫کند‬ ‫می‬ ‫ارزیابی‬ ،‫کند‬ ‫می‬ ‫چک‬ ‫را‬ ‫حلقه‬ ‫که‬ ‫شرطی‬ ‫عبارت‬ ‫و‬ ‫کند‬ ‫می‬ ‫.پرش‬ ‫دسستور‬continue‫برچسب‬ ‫بسا‬ ‫خارجسی‬ ‫حلقسه‬ ‫فعلسی‬ ‫تکرار‬ ‫از‬ ‫دار‬ ‫برچسسب‬ .‫میکند‬ ‫پرش‬ ،‫مشخص‬ test: for (int i = 0; i <= max; i++) { int n = substring.length(), j = I, k = 0; while (n-- != 0) { if (searchMe.charAt(j++) != substring.charAt(k++)) { continue test; } } foundIt = true; break test; } Branch Statements
  • 20. ‫انشعاب‬ ‫دستورات‬ Return: ‫دستور‬ ،‫انشعاب‬ ‫دستور‬ ‫روتسد ،باعشنا روتسد نیرخآخرین‬return‫دستور‬ .‫است‬return‫باعث‬ ‫کرده‬ ‫فراخوانی‬ ‫را‬ ‫متد‬ ‫که‬ ‫جایی‬ ‫به‬ ‫را‬ ‫کنترل‬ ‫و‬ ‫شود‬ ‫می‬ ‫جاری‬ ‫متد‬ ‫از‬ ‫خروج‬ ‫گرداند‬ ‫برمی‬ ،‫.بود‬ ‫دستور‬return‫برای‬ .‫نه‬ ‫دیگری‬ ‫و‬ ‫گرداند‬ ‫برمی‬ ‫مقدار‬ ‫یک‬ ‫یکی‬ :‫دارد‬ ‫حالت‬ ‫دو‬ ‫می‬ ‫محاسبه‬ ‫را‬ ‫مقدار‬ ‫یک‬ ‫که‬ ‫عبارت‬ ‫یک‬ ‫)یا‬ ‫مقدار‬ ‫یک‬ ،‫مقدار‬ ‫یک‬ ‫برگرداندن‬ ‫کلیدی‬ ‫کلمه‬ ‫از‬ ‫بعد‬ (‫کند‬return:‫روتسد ،باعشنا روتسد نیرخآید‬ ‫می‬ return ++count; .‫باشد‬ ‫یکی‬ ‫متد‬ ‫شده‬ ‫اعلن‬ ‫برگشتی‬ ‫مقدار‬ ‫با‬ ‫باید‬ ‫بازگشتی‬ ‫داده‬ ‫نوع‬ ‫مقدار‬ ‫متد‬ ‫یک‬ ‫وقتی‬void‫نمی‬ ‫داده‬ ‫برگشت‬ ‫مقدار‬ ‫که‬ ‫حالتی‬ ‫از‬ ،‫شود‬ ‫می‬ ‫اعلن‬ :‫شود‬ ‫می‬ ‫استفاده‬ ‫شود‬ return; Branch Statements