TỔNG QUAN
CẤU TRÚC ĐIỀU KHIỂN
VÒNG LẶP
CHUỖI VÀ MẢNG
COLLECTIONS
THƯ VIỆN QUAN TRỌNG
HƯỚNG ĐỐI TƯỢNG
XỬ LÝ LUỒNG
EXCEPTION
LÀM VIỆC VỚI FILE
THAM KHẢO
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Biến và hằng số trong Java

Trong bài trước, tôi đã giới thiệu cho các bạn khái niệm về kiểu dữ liệu trong Java và 2 kiểu dữ liệu thường gặp đó là Primitive data (Kiểu dữ liệu cơ sở) và Wrapper class. Trong bài này, chúng ta sẽ đi qua hai khái niệm quan trọng khác đó là khái niệm biến (Variable) và hằng số (Constant) trong Java.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

1. Biến (Variable) trong Java.

Biến trong Java là gì? Biến có vai trò như thế nào trong chương trình của chúng ta? Và có hay không mối liên hệ giữa kiểu dữ liệu và biến? Một biến của Java là tên gọi của một vùng nhớ bên trong máy tính dùng để lưu trữ giá trị mà chương trình của chúng ta có thể tương tác được. Giữa biến và kiểu dữ liệu có một mối liên hệ mật thiết với nhau, một kiểu dữ liệu phải có một biến để lưu trữ nó.

Mỗi biến trong Java bao gồm 3 phần sau: tên biếnkiểu dữ liệu và giá trị của biến đó.

  • Tên biến là sự biểu diễn tượng trưng của vùng nhớ trong đó thông tin được lưu trữ.
  • Kiểu dữ liệu dùng để xác định kích thước và loại giá trị có thể được lưu trữ.
  • Giá trị là dữ liệu thực tế được lưu trữ trên biến và có thể thay đổi được.

Trong Java có 3 loại biến thường gặp đó là: Local variable (biến cục bộ), Instance variable (thuộc tính) và Static variable (biến tĩnh). Chúng ta sẽ tìm hiểu kỹ về thuộc tính và biến tĩnh khi bước sang chương về lập trình hướng đối tượng.

Bài viết này được đăng tại [free tuts .net]

Cách khai báo biến trong Java: có 2 cách. Tuy nhiên chúng ta nên sử dụng cách 2.

  • Cách 1: [kiểu_dữ_liệu] [tên_biến]; ví dụ double d1;
  • Cách 2: [kiểu_dữ_liệu] [tên_biến] = [giá_trị]; ví dụ double d1 = 100.04;

Một số cách khai báo biến và khởi tạo giá trị cho biến hợp lệ:

int age; // Khai báo biến kiểu int.
String name = "Freetuts";   // Khai báo biến kiểu String và có khởi tạo giá trị

Về quy tắc đặt tên biến, các bạn xem lại bài cú pháp và quy tắc Java cơ bản mà tôi đã trình bày trước đó. Sau đây chúng ta sẽ đi vào chi tiết về từng loại biến trong Java.

2. Local variable (biến cục bộ).

Là biến được khai báo bên trong thân hàm, trong hàm tạo hoặc bên trong các khối lệnh và chỉ có phạm vi trong nội bộ thân hàm (chúng ta sẽ tìm hiểu về khái niệm hàm, hàm tạo và khối lệnh trong các bài sau).

Các biến cục bộ được khởi tạo khi các hàm, hàm tạo hoặc các khối lệnh được tạo ra và các biến này sẽ bị hủy bỏ một khi các hàm, hàm tạo hoặc các khối lệnh chứa nó kết thúc.

Các phạm vi truy cập không được sử dụng khi khai báo biến cục bộ.

Các biến cục bộ không có giá trị mặc định, vì vậy các bạn cần phải khai báo và khởi tạo giá trị ban đầu cho biến trước khi sử dụng.

Ví dụ.
package variable;

public class LocalVariable {
	public static void main(String[] args) {
		int localVariable1 = 19;		// đây là biến cục bộ
		float localVariable2 = 5.4f;	// đây là biến cục bộ
		System.out.println("Giá trị của biến localVariable1 = " + localVariable1);
		System.out.println("Giá trị của biến localVariable2 = " + localVariable2);
	}
}

Kết quả chương trình:

ketqua localvariable PNG

Đoạn code sau sẽ khai báo biến cục bộ không khởi tạo giá trị và sẽ gặp lỗi khi biên dịch chương trình:

package variable;

public class LocalVariableError {
	public void getInput() {
		String name;
		System.out.println("Your name is: " + name);
	}
	public static void main(String[] args) {
		LocalVariableError localVariableError = new LocalVariableError();
		localVariableError.getInput();
	}

}

Khi biên dịch thì màn hình console sẽ thông báo lỗi sau:

error localvariable PNG

3. Hằng số (Constant) trong Java.

Trong phần này chúng ta sẽ tìm hiểu về hằng số trong Java và cách khai báo hằng số để sử dụng trong khi viết chương trình.

Vậy theo các bạn hằng số là gì? Chúng ta có thể hình dung như sau: Trong đời sống hằng ngày, có những giá trị không bao giờ thay đổi chẳng hạn như: Một ngày có 24 giờ, một năm có 12 tháng và trong toán học giá trị không thay đổi này được thể hiện thông quá số PI, số Fibonacci,... Trong Java cũng vậy, hằng số là những giá trị không bao giờ thay đổi trong suốt quá trình sử dụng, là một giá trị bất biến trong chương trình.

Về quy tắc đặt tên hằng tôi đã đề cập trong bài Cú pháp và quy tắc Java cơ bản. Trong phần này, tôi sẽ không nhắc lại vấn đề này mà tôi sẽ trình bày cách khai báo hằng số và đưa ra các ví dụ có sử dụng hằng.

Để khai báo hằng số ta sử dụng từ khóa static final đặt trước tên hằng số: [Phạm vi truy cập] static final [kiểu dữ liệu] [tên hằng số] = [giá trị];

Dưới đây là chương trình minh họa cách sử dụng hằng số.

Ví dụ
package constant;

public class Constant {
	// Khai báo hằng số
	public static final int HOUR_OF_DAY = 24;
	public static final String CHUOI = "Hello Freetuts!";
	
	public static void main(String[] args) {
		System.out.println("Một ngày có " + HOUR_OF_DAY + " giờ");
		System.out.println(CHUOI);
	}

}

Kết quả sau khi thực thi chương trình:

ketqua constant PNG

Trong lớp ConstantError dưới đây, tôi cố tình thay đổi giá trị của hằng số và lúc này trình biên dịch sẽ báo lỗi vì hằng số thì không được phép thay đổi giá trị trong chương trình.

Ví dụ
package constant;

public class ConstantError {
	// Khai báo hằng số
	public static final String CHUOI = "Hello Freetuts!";
	
	public static void main(String[] args) {
		System.out.println(CHUOI);
		
		// Thay đổi giá trị biến CHUOI, lúc này trình biên dịch sẽ báo lỗi
		CHUOI = "Welcome to Freetuts!";
		System.out.println(CHUOI);
	}

}

Kết quả sau khi thực thi chương trình:

error constant1 PNG

4. Lời kết.

Qua bài này, tôi đã giới thiệu đến với các bạn các khái niệm về biến và hằng số trong Java. Sang bài sau, tôi sẽ hướng dẫn các bạn tìm hiểu về một số các toán tử thường dùng trong Java. Sau khi kết thúc bài tìm hiểu về toán tử, tôi sẽ đưa ra một số bài tập kết hợp hai bài này để các bạn luyện tập. Các bạn cố gắng theo dõi nhé!

Cùng chuyên mục:

Hướng dẫn Upload file với Spring Boot và jQuery Ajax trong Java

Hướng dẫn Upload file với Spring Boot và jQuery Ajax trong Java

Hướng dẫn download file với Spring Boot trong Java

Hướng dẫn download file với Spring Boot trong Java

Hướng dẫn Upload file với Spring Boot trong Java

Hướng dẫn Upload file với Spring Boot trong Java

Hướng dẫn CRUD với Spring Boot, REST và AngularJS trong Java

Hướng dẫn CRUD với Spring Boot, REST và AngularJS trong Java

Cách sử dụng Spring  Scheduled trong Spring Boot

Cách sử dụng Spring Scheduled trong Spring Boot

Cách dùng Groovy trong Spring Boot Java

Cách dùng Groovy trong Spring Boot Java

Cách dùng Spring Boot và Mustache trong Java

Cách dùng Spring Boot và Mustache trong Java

Cách dùng Spring Boot và MongoDB trong Java

Cách dùng Spring Boot và MongoDB trong Java

Cách tạo Restful Client bằng RestTemplate trong Spring Boot

Cách tạo Restful Client bằng RestTemplate trong Spring Boot

Hướng dẫn sử dụng Interceptor trong Spring Boot

Hướng dẫn sử dụng Interceptor trong Spring Boot

Sử dụng Twitter Bootstrap trong Spring Boot

Sử dụng Twitter Bootstrap trong Spring Boot

Tạo trang web đa ngôn ngữ với Spring Boot trong Java

Tạo trang web đa ngôn ngữ với Spring Boot trong Java

Tạo ứng dụng Chat với Spring Boot và Websocket

Tạo ứng dụng Chat với Spring Boot và Websocket

Sử dụng JUnit để tạo unit test trong Spring Boot

Sử dụng JUnit để tạo unit test trong Spring Boot

Cách triển khai Spring Boot trên Tomcat Server

Cách triển khai Spring Boot trên Tomcat Server

Cách test RESTful API trong Spring Boot

Cách test RESTful API trong Spring Boot

Cách dùng Spring Security trong Spring Boot để xác thực và phân quyền

Cách dùng Spring Security trong Spring Boot để xác thực và phân quyền

Duyệt cây nhị phân bằng phương pháp inOder trong Java

Duyệt cây nhị phân bằng phương pháp inOder trong Java

Xóa node của cây nhị phân tìm kiếm trong Java

Xóa node của cây nhị phân tìm kiếm trong Java

Bảo mật Spring Boot RESTful Service sử dụng Basic Authentication trong Java

Bảo mật Spring Boot RESTful Service sử dụng Basic Authentication trong Java

Top