Thứ Ba, 15 tháng 5, 2018

Cấu trúc trong ngôn ngữ Java

Cấu trúc trong Java có thể được xem như là phương thức trong lớp. Nhưng ở đây là một sự khác biệt lớn giữa cấu trúc và phương thức; điều khác nhau có thể được định nghĩa về mục đích, cú pháp và cách thức gọi.

1. Mục đích của cấu trúc – Constructor (Vs Method)

Cấu trúc chỉ có một mục đích là để tạo một trường hợp của một lớp. Trong trường hợp này bao gồm cấp pháp bộ nhớ và khởi tạo thêm biến.
Ngược lại, những phương thức này không thể được sử dụng để tạo một trường hợp của Lớp.

2. Cú pháp của Constructor(Vs Method)

Cú pháp của cấu trúc là sự khác biệt khi phương thức ở khía cạnh dưới đây:
– Cấu trúc không có sự truy cập Modifier trong khi phương thức thì có thể
– Cấu trúc không có trả giá trị của loại(ngoại trừ sử dụng void) trong khi phương thức có thể trả ra 1 giá trị.
– Tên cấu trúc có thể giống tên lớp trong khi phương thức có sự khác nhau về tên.
– Theo sự ước đặt tên trong Java, pương thức có thể được camelcase trong khi cấu trúc có thể bắt đầu bằng các ký tự.
Chú ý: Một phương thức có thể có tên giống như tên của lớp.

3. Cách thức gọi Constructor (Vs Method)

Dưới đây là một sự khác nhau giữa việc làm thế nào để gọi cấu trúc và phương thức. Cấu trúc không thể được gọi rõ ràng, cấu trúc sẽ được gọi ngầm khi trường hợp của lớp là bắt đầu tạo(sử dụng khóa mới).
Ví dụ : Constructor Invocation
VÍ dụ : Method Invocation
Một cấu trúc trong một lớp có tên giống như các tầng của lớp. Cú pháp của cấu trúc không bao gồm việc trả ra giá trị. Cấu trúc có thể bao gồm các thông số các nhau. Khi các cấu trúc được gọi bằng cách sử dụng toán tử mới, các loại phải phù hợp với những thiết lập được lập trong cấu trúc. Java cung cấp một cấu trúc mặc định, nó không có đối số và không thực hiện những hành động nào đặc biệt hoặc khởi tạo nào khi mà không có cấu trúc được cung cấp.
Hành động chỉ được hoạt động bởi cấu trúc mặc định là để gọi cấu trúc lớp cha bằng cách sử dụng super(). Các tham số cung cấp cho bạn với một cáchđể cung cấp các thông số cho việc khởi tạo một đối tượng.

Quy tắc của cấu trúc

– Một cấu trúc không thể trả ra một giá trị.
– Cấu trúc phải có tên như tên của lớp.
– Cấu trúc không thể được đánh dấu tĩnh
– Cấu trúc không thể bị ghi đè
– Cấu trúc không thể là Final.

Constructor Overloading:

Giống như các phương thức, cấu trúc có thể bị quá tải. Từ khi cấu trúc trong một lớp, tất cả đều có tên giống với lớp, ký hiệu của chúng được phân biệt bởi danh dách tham số của chúng.
Có thể sử dụng this() để thực hiện các chuỗi cấu trúc chính nó trong một lớp. Gọi this() trong một cấu trúc khác với các cấy trúc với danh sách tham số với lớp giống nhau. Ngôn ngữ java đòi hỏi gọi bất kỳ lệnh this() phải xảy ra như lệnh đầu tiên trong cấu trúc.

Constructor Chaining:

Mỗi cấu trúc gọi lớp cha của nó, một ý nghĩa của lệnh super() là được bao hàm trong các cấu trúc mà không có một trong hai điều này là this() và super(). Các lệnh super() sẽ gọi một cấu trúc của lớp super.
Lệnh super() ngầm có thể được thay thế bởi một lệnh super() rõ ràng hơn. Câu lệnh super phải là lệnh đầu tiên của cấu trúc. Các lệnh đưa ra rõ ràng cho phép các giá trị có thể được truyền tới cấu trúc của lớp cha của nó và phải phù hợp với tham số loại A với lệnh super() trong cấu trúc của lớp con có có kết quả trong cuộc gọi của cấu trúc liên quan đến lớp cha, dưa trên ký hiệu của lệnh gọi. Lệnh này được gọi luân phiên.
Cấu trúc lệnh super() như với this(): nếu được sử dụng, phải xảy ra như câu lệnh đầu tiên của một cấu trúc và có thể được sử dụng trong một khai báo của cấu trúc. Điều này có thể thấy rằng this() và super() không thể gọi cùng lúc trong cùng một cấu trúc. Chỉ gọi lệnh this() khi các chuỗi cấu trúc trong cùng một lớp và super() với các chuỗi lớp cha được phân lớp. Nếu một cấu trúc không có this() hoặc super() như lệnh đầu tiên, sau đó một lệnh super() sẽ được mặc định định trong lớp cha.
Giới thiệu các lớp java
Bạn muốn học lập trình hãy liên hệ ngay với Mỹ Vân để được nhận ưu đãi từ học viện nhé
Học lập trình tại Đà Nẵng
Học lập trình tại Đà Nẵng 0935029202
Số tài khoản : 56110000942174 BIDV Chi nhánh Đà Nẵng
HUYNH THI MY VAN

Không có nhận xét nào:

Đăng nhận xét