نماد سایت برنامه چی | Barnamechi

جلسه هشتم – آموزش انواع متغیر ها در جاوا

متغیر ها در جاوا

متغیر در اصطلاح به ظرفی میگویند که میتواند مقادیر مختلفی را درون خود ذخیره نماید. متغیر ها در جاوا هم دقیقا همینطور هستند. یعنی در زبان های برنامه نویسی مفهومی به نام متغیر داریم که انواع مختلفی دارد و با توجه به نوعی که برای آنها تعریف میکنیم میتوانند مقادیر خاصی را درون خود داشته باشند. برای آشنایی با انواع متغیر ها در جاوا با برنامه چی همراه باشید. (منبع نوشته: tutorialspoint)

در این جلسه چه چیزی یاد خواهیم گرفت؟
مفهوم متغیر ها در جاوا
تعریف متغیر ها در جاوا
متغیر های محلی (Local Variables) در جاوا
متغیر های نمونه (Instance Variables) در جاوا
متغیر های استاتیک یا کلاس (Static/Class Variables)
دانلود فایل PDF این جلسه
در جلسه بعد چه چیزی یاد میگیریم؟


مفهوم متغیر ها در جاوا

متغیر قسمتی از حافظه است که نامگذاری شده و برنامه ما میتواند آن را دستکاری نماید. همه متغیر ها در جاوا نوع خاصی دارند، که همین نوع خاص باعث میشود سایز و ظاهر مموری آن متغیر ها، بازه مقادیری که میتواند در آن مموری ذخیره شود و همه انواع اعمالی که میتوانید روی آن متغیر ها اعمال کنید را مشخص میکند.


تعریف متغیر ها در جاوا

شما باید قبل از اینکه بتوانید از انها استفاده کنید، با نحوه تعریف انواع متغیر ها در جاوا آشنا باشید. در ادامه یک فرم ساده از تعریف متغییر ها در جاوا را میبینید:

data type variable [ = value][, variable [ = value] ...] ;

data type در اینجا همان دیتا تایپ هایی هستند که در جلسه قبل درباره آنها صحبت کردیم. variable هم اینجا جایگزین نامی میشود که برای متغیر خودمان انتخاب میکنیم.

در ادامه نمونه های واقعی از تعریف کردن متغیر ها در جاوا و همچنین مقدار دهی اولیه آنها را میبینیم. مثال:

int a, b, c;         // 3 Adad int Taarif mikonim be nam haye a, b, and c.
int a = 10, b = 10;  // Mesali az Initialize
byte B = 22;         // Meghdar dehi avaliye yek motaghayere byte be name B.
double pi = 3.14159; // moarefi va meghdar dehi yek motaghayer be name PI.
char a = 'a';        // Motaghayere char be name a ba meghdare 'a' Initialize mishavad.

در این درس انواع مختلف متغیر ها در جاوا را یاد میگیریم. در زبان برنامه نویسی جاوا سه نوع متغیر مختلف داریم:


متغیر های محلی (Local Variables) در جاوا

مثال

در مثال زیر، age یک متغیر محلی است که درون متد pupAge() تعریف شده است. بنابراین حوزه دید (scope) این متغیر هم محدود به همین متد میباشد. (توضیح کوتاه: مثلا متغیر های محلی اگر درون یک متد تعریف بشوند، فقط برای کدهایی که درون همان متد قرار دارند قابل رویت خواهند بود. به این قانون، حوزه دید یا scope متغیر ها در جاوا گفته میشود).

public class Test {
public void pupAge() {
int age = 0;
age = age + 7;
System.out.println("Puppy age is : " + age);
}

public static void main(String args[]) {
Test test = new Test();
test.pupAge();
}
}

کدهای بالا باید نتیجه خروجی زیر را تولید کنند:

Puppy age is: 7

مثال

در مثال زیر از متغیر محلی age استفاده کرده ایم ولی آن را مقداردهی اولیه (Initialize) نکرده ایم. به همین دلیل برنامه در هنگام کامپایل شدن یک خطا به ما نشان میدهد.

public class Test {
public void pupAge() {
int age;
age = age + 7;
System.out.println("Puppy age is : " + age);
}

public static void main(String args[]) {
Test test = new Test();
test.pupAge();
}
}

مثال بالا باید خروجی زیر را تولید کند:

Test.java:4:variable number might not have been initialized
age = age + 7;
^
۱ error

متغیر های نمونه (Instance Variables) در جاوا

مثال

import java.io.*;
public class Employee {

// this instance variable is visible for any child class.
public String name;

// salary  variable is visible in Employee class only.
private double salary;

// The name variable is assigned in the constructor.
public Employee (String empName) {
name = empName;
}

// The salary variable is assigned a value.
public void setSalary(double empSal) {
salary = empSal;
}

// This method prints the employee details.
public void printEmp() {
System.out.println("name  : " + name );
System.out.println("salary :" + salary);
}

public static void main(String args[]) {
Employee empOne = new Employee("Ransika");
empOne.setSalary(1000);
empOne.printEmp();
}
}

این کدها خروجی زیر را تولید میکنند:

name  : Ransika
salary :1000.0

متغیر های استاتیک یا کلاس (Static/Class Variables)

مثال

import java.io.*;
public class Employee {

// salary  variable is a private static variable
private static double salary;

// DEPARTMENT is a constant
public static final String DEPARTMENT = "Development ";

public static void main(String args[]) {
salary = 1000;
System.out.println(DEPARTMENT + "average salary:" + salary);
}
}

این کدها باید خروجی زیر را تولید کنند.

Development average salary:1000

دانلود فایل PDF این جلسه


در جلسه بعد چه چیزی یاد میگیریم؟

شما در این درس از access modifier ها استفاده کردید. در جلسه بعد درباره تعیین کننده های سطوح دسترسی (Access Modifier) ها و Non-Access Modifier ها با جزئیات بحث خواهیم کرد.

خروج از نسخه موبایل