دوره‌ها / JAVA / متغیرها (Java Variables)

متغیرها (Java Variables)

15 دقیقه Article

متغیرها در جاوا: ظرف‌هایی برای نگهداری داده‌ها 📦☕

متغیرها (Variables) در واقع خانه‌هایی از حافظه هستند که ما نامی برای آن‌ها انتخاب می‌کنیم تا مقادیری را در آن‌ها ذخیره کنیم. جاوا یک زبان Strongly Typed است، یعنی نوعِ داده هر متغیر باید از ابتدا مشخص شود.

انواعِ اصلی متغیرها در جاوا

  • String: برای ذخیره متن‌ها مثل "Hello" (همیشه داخل دو کوتیشن).
  • int: برای ذخیره اعداد صحیح (بدون اعشار) مثل 123 یا -456.
  • float: برای ذخیره اعداد اعشاری مثل 19.99.
  • char: برای ذخیره یک تک کاراکتر مثل 'A' (داخل تک کوتیشن).
  • boolean: برای ذخیره مقادیر منطقی true یا false.

تعریف متغیر (Declaration & Assignment) ✍️

ساختار کلی تعریف متغیر به این صورت است: type variableName = value;

{code_block('String name = "Ali";\nint age = 20;\nSystem.out.println(name);')}
تغییر مقدار: شما می‌توانید بعداً مقدار متغیر را عوض کنید، مگر اینکه از کلمه کلیدی final استفاده کرده باشید.

متغیرهای ثابت (Final Variables) 🔒

اگر بخواهید متغیری بسازید که مقدارش هرگز عوض نشود، از final استفاده کنید (مانند ثابت‌ها در زبان‌های دیگر):

{code_block('final int MY_NUM = 15;\n// MY_NUM = 20; // این خط باعث ایجاد خطا می‌شود!')}

چاپ ترکیبی (Concatenation):

می‌توانید متن‌ها و متغیرها را با علامت + با هم ترکیب کنید:

{code_block('String firstName = "Mohamad ";\nString lastName = "Reza";\nString fullName = firstName + lastName;\nSystem.out.println(fullName);')}
نکته مهم: در جاوا نمی‌توانید یک مقدارِ رشته‌ای را در متغیرِ عددی بریزید یا برعکس. هر متغیر فقط مقادیری از نوعِ خودش را قبول می‌کند.
<hr style="margin: 50px 0; border: 0; border-top: 1px dashed rgba(255,255,255,0.1);">

بخش تخصصی: عمیق‌تر در دنیای جاوا 🛠️💎

در این بخش، به نکاتی می‌پردازیم که در سطح حرفه‌ای و مصاحبه‌های کاری بسیار مهم هستند.

۱. مدیریت حافظه (Memory Management)

در جاوا، داده‌ها در دو بخش از حافظه ذخیره می‌شوند: Stack و Heap. انواعِ داده اولیه (Primitives) معمولاً در Stack ذخیره می‌شوند که سرعت دسترسی به آن‌ها بسیار بالاست. اشیاء و آرایه‌ها در Heap ذخیره می‌شوند که حجم بیشتری دارد اما مدیریت آن توسط Garbage Collector انجام می‌شود. درک این تفاوت، کلید اصلی برای نوشتن برنامه‌های بهینه است.

۲. مفاهیم امنیت در سطح زبان

جاوا یکی از امن‌ترین زبان‌هاست چون اجازه دسترسی مستقیم به آدرس‌های فیزیکی حافظه (مانند اشاره‌گرها در C++) را نمی‌دهد. مضاف بر این، وجود Bytecode Verifier قبل از اجرا، تضمین می‌کند که کدهای مخرب یا نامعتبر اجرا نشوند.

۳. کدهای تمیز (Clean Code)

در پروژه‌های تیمی، خوانایی کد مهم‌تر از هوشمندانه بودن آن است. همیشه از نام‌های معنادار برای متغیرها استفاده کنید (مثلاً به جای a از userAge استفاده کنید). همچنین رعایتِ CamelCase و استفاده درست از کامنت‌ها، نگهداری پروژه را در آینده بسیار ساده‌تر می‌کند.

نکته پایانی: یادگیری یک زبان فقط یادگیری دستورات آن نیست؛ بلکه یادگیریِ طرز فکر و معماریِ آن اکوسیستم است. جاوا با ساختارِ منضبط خود، ذهن شما را برای مهندسی نرم‌افزار به سبکِ صحیح تربیت می‌کند.

تمرین‌های عملی

برای تثبیت یادگیری این درس تمرین‌های زیر را حل کنید

تعریف متغیر سن Easy
سوال تمرین

یک متغیر از نوع int به نام age تعریف کنید و مقدار 25 را در آن قرار دهید. سپس آن را چاپ کنید.

پاسخ تمرین
JAVA
public class Main {
  public static void main(String[] args) {
    int age = 25;
    System.out.println(age);
  }
}

آماده رفتن به درس بعدی هستید؟

این درس را به پایان رساندید و می‌توانید به درس بعدی بروید.