Trong bài viết này chúng ta sẽ cùng nhau tìm hiểu về các biến trong Java và các kiểu khác nhau của biến được sử dụng trong ngôn ngữ Java, làm thế nào để khai báo các biến và cách sử dụng
Biến trong Java là gì?
Các biến trong Java về cơ bản là cấp phát bộ nhớ, các lưu trữ được đặt tên mà sau đó có thể được chương trình dùng. Mỗi biến trong Java có kiểu cụ thể, quyết định bộ nhớ của nó và dữ liệu mà nó có thể lưu trữ. Tất cả các biến nên được lưu trữ trước trong Java
Khai báo biến
Có 3 cách khai báo các biến:
- Kiểu dữ liệu (Datatype) – Kiểu dữ liệu có thể lưu trữ trong biến
- Tên biến (variable_name) – Tên của biến trong Java
- Giá trị (value) – Giá trị ban đầu được lưu trữ trong biến
Ví dụ
float simpleInterest; // Khái báo biến kiểu float int time = 10, speed = 20; //Khai báo và khởi tạo biến integer char var = 'h'; // Khai báo và khởi tạo biến character
Các loại biến
Có 3 loại biến trong Java
Biến cục bộ
Các biến cục bộ được định nghĩa bên trong phương thức Java, khối (block) hoặc constructor và phạm vi của chúng chỉ giới hạn trong các khối, class trong Java, chỉ trong constructor.
Các biến này tạo khi một hàm gọi và xoá sau khi chúng thoát khỏi khối hoặc trả về giá trị.
Ví dụ
public class StudentDetails { public void StudentAge() { //biên cục bộ age int age = 0; age = age + 5; System.out.println("Student age is : " + age); } public static void main(String args[]) { StudentDetails obj = new StudentDetails(); obj.StudentAge(); } }
Các biến instance
Các biến instance khai báo trong class nằm ngoài bất kỳ phương thức, constructor, hay khối nào, nó là kiểu tĩnh. Những biến này được tạo khi một object được tạo và bị huỷ khi object huỷ. Chúng ta có thể định nghĩa các truy cập được chỉ định và nếu không thì nó sẽ truy cập theo mặc định.
import java.io.*; class Marks { //Đây là các biến instance. //Những biến trong class và không nằm bên trong bất kỳ hàm nào int engMarks; int mathsMarks; int phyMarks; } class MarksDemo { public static void main(String args[]) { // object đầu tiên Marks obj1 = new Marks(); obj1.engMarks = 50; obj1.mathsMarks = 80; obj1.phyMarks = 90; // object thứ hai Marks obj2 = new Marks(); obj2.engMarks = 80; obj2.mathsMarks = 60; obj2.phyMarks = 85; //Hiển thị marks cho object đầu tiên System.out.println("Marks for first object:"); System.out.println(obj1.engMarks); System.out.println(obj1.mathsMarks); System.out.println(obj1.phyMarks); //Hiển thị marks cho object thứ hai System.out.println("Marks for second object:"); System.out.println(obj2.engMarks); System.out.println(obj2.mathsMarks); System.out.println(obj2.phyMarks); } }
Các biến static
Chúng ta khai báo với từ khoá static giống như cách khai báo các biến instance. Nó nằm ngoài bất kỳ object, khối hay constructor nào, sự khác nhau ở đây là trong cú pháp Java sử dụng từ khoá static. Nó cũng có thể có nhiều bản sao nghĩa là nó có thể sử dụng cho nhiều class. Chúng được tạo khi chương trình bắt đầu chạy và huỷ sau khi chương trình kết thúc.
Ví dụ
import java.io.*; class Emp { // biến static salary public static double salary; public static String name = "Harsh"; } public class EmpDemo { public static void main(String args[]) { //Truy cập biến static mà không cần object Emp.salary = 1000; System.out.println(Emp.name + "'s average salary:" + Emp.salary) } }