آشنایی با مفهوم متغیر در زبان برنامه‌نویسی جاوا


در فرآیند توسعهٔ نرم‌افزار، دولوپرها نیاز دارند تا اطلاعات مورد نظر خود را در جایی ذخیره سازند که برای این منظور می‌توان داده‌ها را بسته به نوع‌شان در یک Variable (متغیر) ذخیره کرد. به عبارتی، هر متغیری همچون ظرفی است که نوع خاصی از دیتا یا داده را در خود ذخیره می‌سازد (در طول آموزش‌ها با انواع متغیرها، نحوۀ به‌کارگیری، اختصاص مقدار، انجام محاسبات ریاضیاتی همچون جمع، تفریق و سایر عملیاتی از این دست میان آن‌ها آشنا خواهیم شد.)

حال مثال مربوط به آموزش گذشته را مد نظر قرار می‌دهیم که در آن قصد داشتیم تا استرینگ «In the Name of God» را در خروجی نمایش دهیم و از همین روی نیاز به متغیری داریم تا مقداری از جنس کلمه، جمله یا پاراگراف را در آن نگهداری کنیم که برای این منظور می‌توانیم از کلاسی تحت عنوان String در زبان برنامه‌نویسی جاوا استفاده کنیم. همچنین توجه داشته باشیم که هر متغیر از دو بخش تشکیل می‌شود که بخش اول تایپ (نوع) خودِ متغیر است که در این جا شیئ ساخته‌شده از روی کلاس String می‌باشد و بخش دوم مربوط به نام متغیر است که کاملاً اختیاری می‌باشد اما در عین حال اصول نام‌گذاری در زبان جاوا در حین انتخاب نام باید رعایت شوند.

نکته
اسامی مربوط به نام کلاس‌ها بهتر است تا با حرف اول بزرگ نوشته شده و این در حالی است که نام متغیرها نیز به منظور افزایش خوانایی کد و همچنین تشخیص آن‌ها از متدهای تعریف‌شده در برنامه با حرف اول کوچک نوشته می‌شوند.

در همین راستا، به منظور نگهداری استرینگ فوق‌الذکر متغیری از جنس کلاس String تحت عنوان text تعریف می‌کنیم که مقدار منتسب به آن را نیز می‌باید مابین علائم " " قرار دهیم. همچنین به منظور اختصاص مقدار به هر یک از متغیرها، پس از نام متغیر علامت = را قرار داده و در نهایت یک ; تایپ می‌کنیم (در واقع، در زبان برنامه‌نویسی جاوا و همچنین برخی دیگر از زبان‌های برنامه‌نویسی علامت ; عملکردی همچون نقطه در حین نگارش متون فارسی دارا است. به عبارت دیگر، با قرار دادن یک ; در انتهای دستورها، به مفسر جاوا می‌گوییم که به پایان دستور مد نظر رسیده است.) در نهایت، متغیر text را به صورت زیر تعریف می‌کنیم:

String text = "In the name of God";

حال پس از تعریف متغیر text آن را داخل متد ()main قرار می‌دهیم تا در صورت اجرای دستورات برنامه، استرینگ مد نظر به این متغیر منتسب شود. در این مرحله، کدهای برنامه می‌باید به شکل زیر باشند:

public class HelloWorld {
    public static void main(String[] args) {
        String text = "In the name of God";    
    }
}

در واقع، در سطر سوم از کد فوق متغیری تعریف کرده‌ایم که استرینگ «In the Name of God» را نگهداری می‌کند و برای اینکه بتوانیم استرینگ ذخیره‌شده در این متغیر را در خروجی چاپ کنیم نیاز به ساختاری داریم تا آن را به کامپایلر فرستاده و نهایتاً در خروجی نمایش دهد که در ادامه به توضیح نحوۀ پیاده‌سازی این ساختار می‌پردازیم.

در حقیقت، ;()System.out.println دستوری که می‌تواند این کار را برای‌مان انجام دهد و نحوۀ کارکرد این دستور بدین صورت است که هر آنچه مابین دو پرانتز قرار دارد را در خروجی چاپ می‌کند و سپس نشانگر به سطر بعدی می‌رود (در محیط برنامه‌نویسی اکلیپس، خروجی حاصل از اجرای دستور فوق در قسمت کنسول نمایش داده می‌شود.) بنابراین در ادامه نیاز است تا نام متغیر text را داخل پرانتزهای ()println بنویسیم.

به خاطر داشته باشید
یکی از ویژگی‌های اکثر زبان‌های برنامه‌نویسی Case Sensitive بودن آن‌ها است بدین معنی که به بزرگ و کوچک بودن حروف حساس هستند. برای مثال، چنانچه کلمۀ System با حرف کوچک به صورت system نوشته شود، اجرای برنامه با مشکل مواجه می‌شود چرا که System جزو کیوردهای زبان جاوا می‌باشد که فقط با حرف اول بزرگ برای این زبان قابل‌فهم است.

با توجه به آنچه که در بالا بدان اشاره کردیم، نام متغیر در مثال فوق‌ را باید دقیقاً به صورت text بنویسیم چرا که در ابتدا این متغیر را به صورت text تعریف کردیم و همچنین گفتیم که زبان جاوا به بزرگ و کوچک بودن حروف حساس است به طوری که چنانچه در جایی از برنامه نام متغیر مذکور را به صورت Text استفاده کنیم، کامپایل برنامه دچار مشکل می‌شود. در این مرحله، برنامۀ جاوای مد نظر با موفقیت تکمیل شده است و سورس‌کد آن نیز دقیقاً باید با نمونۀ زیر مطابقت داشته باشد:

public class HelloWorld {    
    public static void main(String[] args) {        
        String text = "In the name of God";        
        System.out.println(text);    
    }
}

پیش از اجرای برنامه نیاز داریم تا ابتدا سورس‌کد بالا را کامپایل نماییم؛ به عبارتی، کدها را به دستوراتی قابل‌فهم برای سیستم خود مبدل سازیم که برای این منظور از منوی اصلی گزینۀ Run و مجدداً گزینۀ Run را انتخاب کرده و بدین ترتیب برنامه پس از کامپایل شدن به صورت خودکار توسط اکلیپس اجرا می‌شود و در بخش کنسول نرم‌افزار اکلیپس در قسمت پایین مقدار منتسب به متغیر text را نمایش می‌دهد.

همچنین در صورتی که مقدار مرتبط با متغیر text را تغییر دهیم و استرینگ دیگری را داخل علائم " " بنویسیم، این متغیر مقدار قبلی خود را از دست داده و مقدار جدید را در خود ذخیره می‌سازد و از همین روی در صورت اجرای مجدد برنامه، مقدار جدید منتسب به متغیر text در کنسول نمایش داده خواهد شد.


لیست نظرات
کاربر میهمان
دیدگاه شما چیست؟
کاربر میهمان
mmgh156789
mmgh156789
۱۳۹۸/۰۳/۲۵
سلام ببخشید من وقتی run رو میزنم این ارور رو میده
Errors occurred during the build.Errors running builder Java Builder on project helloword .java.lang.NullPointerException
ممنون میشم جواب بدین مشکل از کجاست
mahyamalekk
mahyamalekk
۱۳۹۷/۰۱/۱۹
سلام مرسی از اموزش خوبتون.
من کد رو نوشتم و چک کردم ولی اصلا run نمی شه، اروری که می ده هم متن نداره که من بفهمم از کجاست !؟
amin
amin
۱۳۹۶/۰۴/۰۵
خیلی عالی بود ممنون
فقط ببخشید ما باید تمام این هارو حفظ کنیم؟؟
sina
sina
۱۳۹۶/۰۲/۰۹
error: could not find or load main class mongy

این یعنی چی ؟؟
parisan
parisan
۱۳۹۵/۰۵/۱۳
ممنونم
MP.Sniper
MP.Sniper
۱۳۹۵/۰۱/۳۰
TNx a lot
javad
javad
۱۳۹۵/۰۱/۲۲
از آموزش بینظیرتون سپاس گذارم
mohammad m
mohammad m
۱۳۹۴/۱۲/۱۳
سلام خسته نباشید
وقتی میزنم run این ارور رو میده
Editor does not contain a main type
در صورتی که دقیقا مثل بالا گفته بود نوشتم, یعنی تابع main نوشتم
این مشکلو دونفر دیگه هم گفتن ولی کسی پاسخ نداده
ممنون میشم اگه جواب بدین
ُSoroush
ُSoroush
۱۳۹۴/۱۲/۰۳
مثل همیشه عالی بود
ممنون
Ali
Ali
۱۳۹۴/۱۱/۲۶
عالی بود