Constructor Trong Java Là Gì? Tất Tần Tật Về Constructor Trong Java

[Globalizethis]

Trong Java, Constructor (hay còn gọi là hàm tạo) là một khối mã tương tự như phương thức. Nó được gọi lúc một thể hiện của class được tạo. Tại thời điểm gọi hàm tạo, bộ nhớ dành cho mục tiêu được phân bổ.

khách tham quan đang xem: Constructor trong java là gì?

*

Hàm tạo (Constructor) trong Java

Nó là một loại phương thức lạ lùng được sử dụng để khởi tạo mục tiêu.

Mỗi lúc một mục tiêu được tạo bằng cách sử dụng từ khóa new(), sở hữu ít nhất một hàm tạo được gọi.

Nó gọi một hàm tạo mặc định (default constructor) nếu ko sở hữu hàm tạo nào trong class. Trong trường hợp như vậy, trình biên dịch Java cung cấp một hàm tạo mặc định theo mặc định.

sở hữu hai loại hàm tạo trong Java:

Hàm tạo ko sở hữu đối sốHàm tạo tham số.

Lưu ý: Nó được gọi là hàm tạo (constructor) vì nó xây dựng những giá trị tại thời điểm tạo mục tiêu. ko cần thiết phải viết một constructor cho một class. Đó là bởi vì trình biên dịch java tạo ra một hàm tạo mặc định nếu class của khách tham quan ko sở hữu.

một. Quy tắc để tạo Hàm tạo

sở hữu 3 quy tắc để tạo ra một hàm tạo:

Tên hàm tạo phải giống với tên class của nóMột hàm tạo phải ko sở hữu kiểu trả về rõ ràngMột hàm tạo Java ko thể abstract, static, final và được đồng bộ hóa

Lưu ý: Chúng ta sở hữu thể sử dụng những từ khóa sửa đổi truy cập (access modifier) trong lúc khai báo một hàm tạo. Nó kiểm soát việc tạo mục tiêu. Nói cách khác, chúng ta sở hữu thể sở hữu hàm tạo private, protected, public hoặc mặc định trong Java.

2. những loại Hàm tạo

sở hữu 2 loại hàm tạo trong Java:

Hàm tạo ko sở hữu đối sốHàm tạo tham số.

3. Hàm tạo mặc định

Hàm tạo được gọi là Hàm tạo mặc định (Default Constructor) lúc nó ko sở hữu bất kỳ tham số nào.

3.một. Cú pháp hàm tạo mặc định

()

3.2. Ví dụ về hàm tạo mặc định

Trong ví dụ này, chúng ta đang tạo hàm tạo ko sở hữu đối số trong class Bike1. Nó sẽ được gọi vào thời điểm tạo mục tiêu.

//Java Program to create and call a default constructor class Bike1 // Tạo hàm tạo mặc định Bike1() System.out.println(“Bike1 được tạo”); //main method public static void main(String args) // Gọi hàm tạo mặc định Bike1 b = new Bike1(); Kết quả:

Bike1 được tạoLưu ý: Nếu ko sở hữu hàm tạo nào được tạo trong một class, trình biên dịch sẽ tự động tạo một hàm tạo mặc định.

3.3. Ví dụ về hàm tạo mặc định hiển thị giá trị mặc định

// Hãy thử một ví dụ hàm tạo khác // để tạo hiển thị giá trị mặc định class Student3 int id; String name; // Phương thức hiển thị id và name void display() System.out.println(id+” “+name); public static void main(String args) // Tạo mục tiêu Student3 s1=new Student3(); Student3 s2=new Student3(); // Hiển thị giá trị của mục tiêu s1.display(); s2.display(); Kết quả:

0 null0 nullGiải thích: Trong class Student3 trên, khách tham quan ko tạo bất kỳ hàm tạo nào để trình biên dịch tự động cung cấp cho khách tham quan một hàm tạo mặc định. Ở đây giá trị 0 và null được cung cấp bởi hàm tạo mặc định.

Xem thêm: Ngày Sinh Của Kelvin Khánh, Tiểu Sử Nam Ca Sĩ Kelvin Khánh

4. Hàm tham số

Hàm tạo sở hữu số lượng tham số cụ thể được gọi là hàm tạo tham số.

4.một. Ví dụ về hàm tạo tham số

Trong ví dụ này, Danang Discovery đã tạo ra hàm tạo của class Student sở hữu hai tham số. Chúng ta sở hữu thể sở hữu nhiều tham số.

// Ví dụ về hàm tạo tham số trong Java. class Student4 int id; String name; // Tạo một hàm tạo tham số Student4(int i, String n) id = i; name = n; // Phương thức hiển thị giá trị void display()System.out.println(id+” “+name); public static void main(String args) // Tạo mục tiêu và truyền giá trị Student4 s1 = new Student4(17,”Hải”); Student4 s2 = new Student4(18,”Doanh”); // Gọi phương thức hiển thị dữ liệu s1.display(); s2.display(); Kết quả:

17 Hải18 Doanh

5. Constructor Overloading trong Java

Trong Java, một hàm tạo tương tự một phương thức nhưng ko sở hữu kiểu trả về. Nó cũng sở hữu thể bị quá tải (overloading) như những phương thức trong Java.

Constructor Overloading trong Java là một kỹ thuật sở hữu nhiều hơn một hàm tạo với những danh sách tham số khác nhau.

Chúng được sắp xếp theo cách mà mỗi constructor hiện một nhiệm vụ khác nhau.

Chúng được trình biên dịch phân biệt bởi số lượng tham số trong và kiểu tham số của chúng.

5.một. Ví dụ về Constructor Overloading trong Java

// Chương trình ví dụ về Constructor Overloading trong Java class Student5 int id; String name; int age; // Tạo hàm tạo với 2 tham số Student5(int i,String n) id = i; name = n; // Tạo hàm tạo với 3 tham số Student5(int i, String n, int a) id = i; name = n; age = a; void display() System.out.println(id+” “+name+” “+age); public static void main(String args) Student5 s1 = new Student5(17,”Hải”); Student5 s2 = new Student5(18,”Doanh”, 21); s1.display(); s2.display(); Kết quả

17 Hải 018 Doanh 21

6. Sự khác lạ giữa Constructor và Method trong Java

sở hữu nhiều sự khác lạ giữa những constructor và method:

Java ConstructorJava Method
Một constructor được sử dụng để khởi tạo trạng thái của một mục tiêu. Một phương thức được sử dụng để làm hành vi của một mục tiêu.
Một constructor ko được sở hữu kiểu trả về. Một phương thức phải sở hữu kiểu trả về
Constructor được gọi ngầm và rõ ràng Một phương thức được gọi rõ ràng
Trình biên dịch Java cung cấp một Constructor mặc định nếu ko sở hữu constructor nào được tạo ko sở hữu phương thức nào được cung cấp bởi trình biên dịch
Tên của constructor phải giống với tên của class Tên phương thức thì sở hữu thể giống hoặc khác tên class

7. Copy Constructor trong Java

ko copy được constructor trong Java. Tuy nhiên, chúng ta sở hữu thể sao chép những giá trị từ mục tiêu này sang mục tiêu khác như constructor trong C ++.

sở hữu nhiều cách để sao chép những giá trị của một mục tiêu vào một mục tiêu khác trong Java:

Bằng constructorBằng cách gán những giá trị của một mục tiêu vào một mục tiêu khácTheo phương thức clone() của class Object

Trong ví dụ này, chúng ta sẽ sao chép những giá trị của một mục tiêu sang mục tiêu khác bằng cách sử dụng hàm tạo trong Java.

// Ví dụ sao chép giá trị của một mục tiêu sang mục tiêu khác class Student6 int id; String name; // Hàm tạo Student6(int i, String n) id = i; name = n; // Hàm tạo để khởi tạo một mục tiêu khác Student6(Student6 s) id = s.id; name =s.name; void display()System.out.println(id+” “+name); public static void main(String args) Student6 s1 = new Student6(17,”Hải”); Student6 s2 = new Student6(s1); s1.display(); s2.display(); Kết quả:

Nguồn : Sưu tầm

Danh mục:
Nguồn: https://globalizethis.org
This entry was posted in Chưa phân loại. Bookmark the permalink.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *