Computer >> Máy Tính >  >> Lập trình >> Java

Cách sử dụng Java Constructors

Trong Java, các phương thức được sử dụng để lưu trữ các khối mã thực hiện một hành động cụ thể. Khi làm việc với các phương thức, bạn có thể gặp một khái niệm được gọi là constructors .

Các hàm tạo là các phương thức đặc biệt được sử dụng để khởi tạo các đối tượng trong Java. Các hàm tạo được gọi khi đối tượng của một lớp được tạo và được sử dụng để đặt các giá trị ban đầu cho một đối tượng.

Hướng dẫn này sẽ thảo luận, với các ví dụ, khái niệm cơ bản về các hàm tạo Java và cách sử dụng các hàm tạo trong mã của bạn. Khi đọc xong hướng dẫn này, bạn sẽ trở thành một chuyên gia trong việc sử dụng các hàm tạo Java để khởi tạo các đối tượng.

Trình tạo Java

Constructors khởi tạo một đối tượng mới được tạo trước khi nó được sử dụng trong một chương trình. Vì vậy, ví dụ, một phương thức khởi tạo được gọi là Nhà cung cấp sẽ tạo một đối tượng với các thuộc tính mặc định của một nhà cung cấp.

Các hàm tạo có cùng tên với lớp của chúng và không trả về bất kỳ giá trị nào. Đây là một ví dụ về một hàm tạo trong Java:

Nhà cung cấp
class Supplier {
	Supplier() {
		// Code here
	}
}

Trong ví dụ này, chúng tôi đã khai báo một phương thức khởi tạo được gọi là Supplier , có cùng tên với lớp của chúng tôi. Ngoài ra, phương thức khởi tạo của chúng ta không có bất kỳ kiểu trả về nào — chẳng hạn như void — là thứ phân biệt nó với các kiểu phương thức khác.

Có hai quy tắc bạn cần biết khi khai báo một hàm tạo. Đầu tiên, tên của một hàm tạo phải khớp với tên của lớp mà hàm tạo được khai báo chính xác. Thứ hai, các hàm tạo không thể trả về giá trị.

Cách tạo Java Constructor

Có hai loại hàm tạo Java:hàm tạo no-arg và hàm tạo tham số hóa. Hãy phân tích cách tạo một hàm tạo bằng cả hai loại này.

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia một cuộc thi đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

No-arg Constructors

Giả sử chúng ta đang điều hành một cửa hàng tạp hóa và chúng ta muốn tạo một chương trình lưu trữ thông tin chi tiết về nhà cung cấp pho mát chính của chúng ta. Chương trình này phải bao gồm một phương thức khởi tạo lưu trữ thông tin của nhà cung cấp và cũng phải in ra các giá trị đó ra bảng điều khiển.

Đây là mã chúng tôi sẽ sử dụng để tạo chương trình này:

class MainCheeseSupplier {
	private String name;
	private String address;
	private int discountRate;
	private String payDate;

	private MainCheeseSupplier() {
		name = "J. Acker Dairy";
		address = "1600 Johnson Ave. San Francisco 94127";
		discountRate = 2;
		payDate = "Last day of the month.";
	}

	public static void main(String[] args) {
		MainCheeseSupplier jadairy = new MainCheeseSupplier();

		System.out.println("Name: " + jadairy.name);
		System.out.println("Address: " + jadairy.address);
		System.out.println("Discount rate: " + jadairy.discountRate);
		System.out.println("Pay date: " + jadairy.payDate);
	}
}

Mã của chúng tôi trả về:

Name: J. Acker Dairy
Address: 1600 Johnson Ave. San Francisco 94127
Discount rate: 2
Pay date: Last day of the month.

Đầu tiên, chúng tôi đã xác định một lớp có tên là MainCheeseSupplier giữ mã cho chương trình của chúng tôi. Sau đó, chúng tôi khởi tạo bốn biến riêng— name , address , discountRatepayDate —Mà chúng tôi sử dụng để lưu trữ thông tin về nhà cung cấp pho mát chính của chúng tôi.

Khi chúng tôi đã khai báo các biến đó, chúng tôi tạo một phương thức khởi tạo có tên là MainCheeseSupplier khởi tạo chúng với các giá trị mặc định. Sau đó, trong chương trình chính của chúng tôi, chúng tôi khởi tạo một phiên bản của hàm tạo của chúng tôi bằng cách sử dụng mã này:

MainCheeseSupplier jadairy = new MainCheeseSupplier();

Mã này chỉ định biến jadairy một phiên bản mới của MainCheeseSupplier vật. Sau đó, chúng tôi in ra từng giá trị được giữ trong jadairy vào bảng điều khiển bằng cách tham chiếu đến jadairy biến và thuộc tính mà chúng tôi muốn truy cập.

Đây là ví dụ về hàm tạo no-arg . Bởi vì hàm tạo của chúng tôi không chấp nhận bất kỳ tham số nào, chúng tôi gọi nó là no-arg.

Hàm tạo tham số

Tuy nhiên, có thể có trường hợp bạn muốn truyền các đối số thông qua một hàm tạo.

Hãy quay lại cửa hàng tạp hóa. Giả sử rằng chúng ta muốn xác định các giá trị của thông tin chi tiết về nhà cung cấp pho mát chính trong chương trình chính của chúng ta và gán chúng cho hàm tạo của chúng ta khi chương trình chính đã bắt đầu thực thi.

Chúng tôi có thể muốn làm điều này vì chúng tôi đang khởi tạo nhiều nhà cung cấp với các giá trị khác nhau hoặc vì chúng tôi không muốn gán các giá trị cụ thể cho phương thức khởi tạo.

Nếu chúng ta truyền các đối số qua một phương thức khởi tạo, chúng ta gọi nó là một phương thức khởi tạo được tham số hóa.

Chúng ta có thể truyền một danh sách tham số thông qua một hàm tạo như sau:

class MainCheeseSupplier {
	String name;
	String address;
	int discountRate;
	String payDate;

	public MainCheeseSupplier(String supplierName, String supplierAddress, int supplierDiscountRate, String supplierPayDate) {
		name = supplierName;
		address = supplierAddress;
		discountRate = supplierDiscountRate;
		payDate = supplierPayDate;
	}

	public static void main(String[] args) {
		MainCheeseSupplier jadairy = new MainCheeseSupplier("J. Acker Dairy", "1600 Johnson Ave. San Francisco 94127", 2,  "Last day of the month.");

		System.out.println("Name: " + jadairy.name);
		System.out.println("Address: " + jadairy.address);
		System.out.println("Discount rate: " + jadairy.discountRate);
		System.out.pintln("Pay date: " + jadairy.payDate);
	}
}

Mã của chúng tôi trả về:

Name: J. Acker Dairy
Address: 1600 Johnson Ave. San Francisco 94127
Discount rate: 2
Pay date: Last day of the month.

Như bạn có thể thấy, đầu ra của mã của chúng tôi trong ví dụ này giống như trong ví dụ đầu tiên của chúng tôi. Tuy nhiên, có một điểm khác biệt lớn trong mã của chúng ta:thay vì khởi tạo các giá trị của hàm tạo của chúng ta trong chính hàm tạo, chúng ta chuyển chúng dưới dạng tham số khi chúng ta khai báo một thể hiện của hàm tạo.

Trong ví dụ trên, MainCheeseSupplier hàm tạo chấp nhận bốn tham số:supplierName , supplierAddress , supplierDiscountRatesupplierPayDate . Khi chúng tôi khởi tạo một phiên bản của MainCheeseSupplier phương thức khởi tạo, chúng tôi chuyển các giá trị qua các tham số này, sau đó được đọc bởi phương thức khởi tạo của chúng tôi. Đây là mã chúng tôi sử dụng để khởi tạo một phiên bản của hàm tạo:

MainCheeseSupplier jadairy = new MainCheeseSupplier("J. Acker Dairy", "1600 Johnson Ave. San Francisco 94127", 2,  "Last day of the month.");

Sau đó, chúng tôi in ra nội dung của các giá trị mà chúng tôi đã lưu trữ trong MainCheeseSupplier constructor.

Kết luận

Các hàm tạo trong Java là các phương thức đặc biệt được sử dụng để khởi tạo các đối tượng. Các hàm tạo được gọi khi một đối tượng của một lớp được tạo và có thể được sử dụng để đặt các giá trị ban đầu cho các thuộc tính của đối tượng.

Hướng dẫn này đã thảo luận, có tham chiếu đến các ví dụ, cách tạo và làm việc với các hàm tạo trong Java. Bây giờ, bạn đã sẵn sàng để bắt đầu sử dụng các hàm tạo Java như một chuyên gia!