Java cơ bản - Các Biến trong java
Một biến cung cấp cho chúng tôi lưu trữ được đặt tên mà các chương trình của chúng tôi có thể thao tác. Mỗi biến trong Java có một loại cụ thể, xác định kích thước và bố cục của bộ nhớ của biến; phạm vi của các giá trị có thể được lưu trữ trong bộ nhớ đó; và tập hợp các hoạt động có thể được áp dụng cho biến.Bạn phải khai báo tất cả các biến trước khi chúng có thể được sử dụng. Sau đây là hình thức cơ bản của một khai báo biến:
- data type variable [ = value][, variable [ = value] ...] ;
Ở đây kiểu dữ liệu là một trong các kiểu dữ liệu của Java và biến là tên của biến. Để khai báo nhiều hơn một biến của loại đã chỉ định, bạn có thể sử dụng danh sách được phân tách bằng dấu phẩy.
Sau đây là các ví dụ hợp lệ về khai báo và khởi tạo biến trong Java
- int a, b, c;
- int a = 10, b = 10;
- byte B = 22;
- double pi = 3.14159;
- char a = 'a';
Chương này sẽ giải thích các loại biến khác nhau có sẵn trong Ngôn ngữ Java. Có ba loại biến trong Java
- Biến cục bộ
- Biến thực thể
- Biến lớp / tĩnh
Biến cục bộ
- Các biến cục bộ được khai báo trong các phương thức, hàm tạo hoặc khối.
- Các biến cục bộ được tạo khi phương thức, hàm tạo hoặc khối được nhập và biến sẽ bị hủy khi nó thoát khỏi phương thức, hàm tạo hoặc khối.
- Sửa đổi truy cập không thể được sử dụng cho các biến cục bộ.
- Các biến cục bộ chỉ hiển thị trong phương thức khai báo, hàm tạo hoặc khối.
- Các biến cục bộ được thực hiện ở cấp độ ngăn xếp trong nội bộ.
- Không có giá trị mặc định cho các biến cục bộ, vì vậy các biến cục bộ phải được khai báo và giá trị ban đầu phải được gán trước khi sử dụng lần đầu tiên.
- Ở đây, tuổi là một biến cục bộ. Điều này được định nghĩa bên trong phương thức PupAge () và phạm vi của nó chỉ giới hạn ở phương thức này
public class Test {Kết quả của ví dụ trên là :
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: 7Ví dụ sau sử dụng tuổi mà không khởi tạo nó, vì vậy nó sẽ báo lỗi tại thời điểm biên dịch
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();
}
}
Biến thực thể
- Các biến thực thể trong java được khai báo trong một lớp, nhưng bên ngoài một phương thức, hàm tạo hoặc bất kỳ khối nào.
- Khi một không gian được phân bổ cho một đối tượng trong heap, một vị trí cho mỗi giá trị biến đối tượng được tạo.
- Biến thực thể được tạo khi một đối tượng được tạo với việc sử dụng từ khóa 'new' và bị hủy khi đối tượng bị hủy.
- Các biến thực thể giữ các giá trị phải được tham chiếu bởi nhiều hơn một phương thức, hàm tạo hoặc khối hoặc các phần thiết yếu của trạng thái của một đối tượng phải có trong toàn bộ lớp.
- Biến thực thể có thể được khai báo ở cấp lớp trước hoặc sau khi sử dụng.
- Sửa đổi truy cập có thể được đưa ra cho các biến ví dụ.
- Các biến thực thể(Instance variables) được hiển thị cho tất cả các phương thức, hàm tạo và khối trong lớp. Thông thường, nên đặt các biến này ở chế độ riêng tư (mức truy cập). Tuy nhiên, khả năng hiển thị cho các lớp con có thể được cung cấp cho các biến này với việc sử dụng các công cụ sửa đổi truy cập.
- Biến thực thể có giá trị mặc định. Đối với các số, giá trị mặc định là 0, đối với Booleans, nó là sai và đối với các tham chiếu đối tượng thì nó là null. Các giá trị có thể được chỉ định trong khi khai báo hoặc trong hàm tạo.
- Các biến sơ thẩm có thể được truy cập trực tiếp bằng cách gọi tên biến trong lớp. Tuy nhiên, trong các phương thức tĩnh (khi các biến thể hiện được cung cấp khả năng truy cập), chúng nên được gọi bằng cách sử dụng tên đủ điều kiện. ObjectReference.VariableName.
import java.io.*;Kết quả của ví dụ trên là :
public class Employee {
public String name;
private double salary;
public Employee (String empName) {
name = empName;
}
public void setSalary(double empSal) {
salary = empSal;
}
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
Biến tĩnh trong java
- Các biến lớp còn được gọi là biến tĩnh được khai báo với từ khóa static trong một lớp, nhưng bên ngoài một phương thức, hàm khởi tạo hoặc một khối.
- Sẽ chỉ có một bản sao của mỗi biến lớp cho mỗi lớp, bất kể có bao nhiêu đối tượng được tạo từ nó.
- Các biến tĩnh hiếm khi được sử dụng ngoài việc được khai báo là hằng số. Các hằng số là các biến được khai báo là public/ private, cuối cùng và static. Các biến không đổi không bao giờ thay đổi từ giá trị ban đầu của chúng.
- Các biến tĩnh được lưu trữ trong bộ nhớ tĩnh. Rất hiếm khi sử dụng các biến tĩnh khác với khai báo cuối cùng và được sử dụng như là hằng công khai hoặc riêng.
- Biến tĩnh được tạo khi chương trình khởi động và hủy khi chương trình dừng.
- Khả năng hiển thị tương tự như các biến thể hiện. Tuy nhiên, hầu hết các biến tĩnh được khai báo công khai vì chúng phải có sẵn cho người dùng của lớp.
- Các giá trị mặc định giống như các biến thể hiện. Đối với các số, giá trị mặc định là 0; đối với Booleans, đó là sai; và đối với các tham chiếu đối tượng, nó là null. Các giá trị có thể được chỉ định trong khi khai báo hoặc trong hàm tạo. Ngoài ra, các giá trị có thể được chỉ định trong các khối khởi tạo static đặc biệt.
- Các biến tĩnh có thể được truy cập bằng cách gọi với tên lớp ClassName.VariableName.
- Khi khai báo các biến lớp là cuối cùng tĩnh công khai, thì các tên biến (hằng) đều ở dạng chữ hoa. Nếu các biến tĩnh không công khai và cuối cùng, cú pháp đặt tên giống như các biến thể hiện và biến cục bộ.
import java.io.*;Kết quả của chương trình trên:
public class Employee {
private static double salary;
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
No comments:
Post a Comment