24/06/2020

Xin chào mọi người, em tên là Nghĩa, hiện tại đang học lớp C0620K1, hôm nay em đã học thêm được về Biến

Khai báo biến trong java

Cú pháp khai báo biến:?

1DataType varName [ = value] [, varName2] [ = value2]...;

Trong đó, DataType là kiểu dữ liệu của biến, varName là tên biến.

Quy tắc đặt tên biến trong java:

  • Chỉ được bắt đầu bằng một ký tự(chữ), hoặc một dấu gạch dưới(_), hoặc một ký tự dollar($)
  • Tên biến không được chứa khoảng trắng
  • Bắt đầu từ ký tự thứ hai, có thể dùng ký tự(chữ), dấu gạch dưới(_), hoặc ký tự dollar($)
  • Không được trùng với các từ khóa
  • Có phân biệt chữ hoa và chữ thường

Ví dụ về khai báo biến trong java:?

12345678910package vn.viettuts.bienvadulieu; public class Bien {public static float PI = 3.14f;   // Đây là biến staticint n;                            // Đây là biến instance public Bien () {char c = 'c';                 // Đây là biến local}}


1. Biến local trong java

  • Biến local được khai báo trong các phương thức, hàm contructor hoặc trong các block.
  • Biến local được tạo bên trong các phương thức, contructor, block và sẽ bị phá hủy khi kết thúc các phương thức, contructor và block.
  • Không được sử dụng “access modifier” khi khai báo biến local.
  • Các biến local được lưu trên vùng nhớ stack của bộ nhớ.
  • Bạn cần khởi tạo giá trị mặc định cho biến local trước khi có thể sử dụng.

Ví dụ 1: Khởi tạo biến local:?

1234567891011121314package vn.viettuts.bienvadulieu; public class Bien { public void sayHello() {int n = 10;                     // Đây là biến localSystem.out.println("Gia tri cua n la: " + n);} public static void main(String[] args) {Bien bienLocal = new Bien();bienLocal.sayHello();}}

Kết quả:

Gia tri cua n la: 10

Ví dụ 2: Không khởi tạo biến local:?

1234567891011121314package vn.viettuts.bienvadulieu; public class Bien { public void sayHello() {int n;                 // Đây là biến localSystem.out.println("Gia tri cua n la: " + n);} public static void main(String[] args) {Bien bienLocal = new Bien();bienLocal.sayHello();}}

Kết quả:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    The local variable n may not have been initialized

Khi không khởi tạo biến local, chương trình java sẽ báo lỗi khi biên dịch.


2. Biến biến instance (biến toàn cục) trong java

  • Biến instance được khai báo trong một lớp(class), bên ngoài các phương thức, constructor và các block.
  • Biến instance được lưu trong bộ nhớ heap.
  • Biến instance được tạo khi một đối tượng được tạo bằng việc sử dụng từ khóa “new” và sẽ bị phá hủy khi đối tượng bị phá hủy.
  • Biến instance có thể được sử dụng bởi các phương thức, constructor, block, … Nhưng nó phải được sử dụng thông qua một đối tượng cụ thể.
  • Bạn được phép sử dụng “access modifier” khi khai báo biến instance, mặc định là “default”.
  • Biến instance có giá trị mặc định phụ thuộc vào kiểu dữ liệu của nó. Ví dụ nếu là kiểu int, short, byte thì giá trị mặc định là 0, kiểu double thì là 0.0d, … Vì vậy, bạn sẽ không cần khởi tạo giá trị cho biến instance trước khi sử dụng.
  • Bên trong class mà bạn khai báo biến instance, bạn có thể gọi nó trực tiếp bằng tên khi sử dụng ở khắp nới bên trong class đó.

Ví dụ về biến instance trong java:?

123456789101112131415161718192021222324252627282930package vn.viettuts.bienvadulieu; public class Sinhvien {// biến instance "ten" kiểu String, có giá trị mặc định là nullpublic String ten; // biến instance "tuoi" kiểu Integer, có giá trị mặc định là 0private int tuoi; // sử dụng biến ten trong một constructorpublic Sinhvien(String ten) {this.ten = ten;} // sử dụng biến tuoi trong phương thức setTuoipublic void setTuoi(int tuoi) {this.tuoi = tuoi;} public void showStudent() {System.out.println("Ten  : " + ten);System.out.println("Tuoi : " + tuoi);} public static void main(String args[]) {Sinhvien sv = new Sinhvien("Nguyen Van A");sv.setTuoi(21);sv.showStudent();}}

Kết quả:

Ten  : Nguyen Van A
Tuoi : 21


3. Biến static trong java

  • Biến static được khai báo trong một class với từ khóa “static”, phía bên ngoài các phương thức, constructor và block.
  • Sẽ chỉ có duy nhất một bản sao của các biến static được tạo ra, dù bạn tạo bao nhiêu đối tượng từ lớp tương ứng.
  • Biến static được lưu trữ trong bộ nhớ static riêng.
  • Biến static được tạo khi chương trình bắt đầu chạy và chỉ bị phá hủy khi chương trình dừng.
  • Giá trị mặc định của biến static phụ thuộc vào kiểu dữ liệu bạn khai báo tương tự biến instance.
  • Biến static được truy cập thông qua tên của class chứa nó, với cú pháp: TenClass.tenBien.
  • Trong class, các phương thức sử dụng biến static bằng cách gọi tên của nó khi phương thức đó cũng được khai báo với từ khóa “static”.

Ví dụ về biến static trong java:?

1234567891011121314151617package vn.viettuts.bienvadulieu; public class Sinhvien {// biến static 'ten'public static String ten = "Nguyen Van A"; // biến static 'tuoi'public static int tuoi = 21; public static void main(String args[]) {// Sử dụng biến static bằng cách gọi trực tiếpSystem.out.println("Ten : " + ten); // Sử dụng biến static bằng cách gọi thông qua tên classSystem.out.println("Ten : " + Sinhvien.tuoi);}}

Kết quả:

Ten : Nguyen Van A
Ten : 21

1 comments On 24/06/2020

Leave a reply:

Your email address will not be published.

Site Footer

Sliding Sidebar

Facebook