...
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Giáo trình phân tích ứng dụng nguyên lý
cảm thụ truyền nhận kích thích thần kinh thực vật
.
Trường ðại học Nông nghiệp Hà Nội – Giáo trình Giáo trình Chẩn ñoán bệnh thú ...
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
.
Trường ðại học Nông nghiệp Hà Nội – Giáo trình Giáo trình Chẩn ñoán bệnh thú …………………….
1...
...
using System;
struct TheStruct
{
Cấu Trúc
173
Giáo trình phân tích ứng dụng nguyên lý gán đối
tượng cho một giao diện đối lập
.
Ngôn Ngữ Lập Trình C#
public int x;
public TheStruct()
{
x = 10;
}
}
class ... sẽ thảo luận cách tạo, thực thi và sử dụng các giao diện.
Ngoài ra chúng ta cũng sẽ bàn tới cách thực thi nhiều giao diện cùng với cách kết hợp và mở
rộng gia...
... và
ICompressible.
Kết hợp các giao diện
Một cách tương tự, chúng ta có thể tạo giao diện mới bằng cách kết hợp các giao diện
cũ và ta có thể thêm các phương thức hay các thuộc tính cho giao diện mới. ... rộng giao diện
C# cung cấp chức năng cho chúng ta mở rộng một giao diện đã có bằng cách thêm các
phương thức và các thành viên hay bổ sung cách làm việc cho các thành vi...
... cập thông qua giao diện cho phép chúng ta đối xử
giao diện một cách đa hình. Nói cách khác, chúng ta tạo hai hay nhiều hơn những lớp thực thi
giao diện, và sau đó bằng cách truy cập lớp này chỉ ... Document”);
Nói chung, cách thiết kế tốt nhất là quyết định truy cập những phương thức của giao diện
thông qua tham chiếu của giao diện. Do vậy cách tốt nhất là sử dụng isDoc.Read(), hơn là...
... nào.
Sử dụng toán tử as để loại bỏ việc thực hiện các xử lý ngoại lệ. Đồng thời cũng né tránh việc
thực hiện kiểm tra dư thừa hai lần. Do vậy, việc sử dụng tối ưu của phép gán cho giao diện là
sử dụng ... C# không
cho phép thực hiện đa kế thừa từ những lớp.
Tuy nhiên, ngôn ngữ C# cho phép chúng ta thực thi bất cứ những giao diện nào và dẫn xuất
từ một lớp cơ sở. Do đó, bằng cá...
... nhưng nó sẽ tạo ra hàng loạt các hiệu ứng thú vị.
Đầu tiên, không cần thiết sử dụng thực thi tường minh với những phương thức khác của Talk:
public void Talk();
vì không có sự tranh chấp cho nên ... diện tạo từ đối tượng dẫn xuất
Thực hiện cách gọi thứ nhất, một tham chiếu Document được tạo ra, và địa chỉ của một đối
tượng mới là lớp dẫn xuất Note được tạo trên heap và gán trở...
... viết:
theDoc.Read();
Trình biên dịch chỉ hiểu rằng chúng ta thực thi phương thức giao diện ngầm định cho
IStorable. Chỉ một cách duy nhất truy cập các phương thức thực thi tường minh là thông qua
việc gán cho ... được boxing vẫn không thay đổi. Ví dụ
8.6 tạo ra một cấu trúc và thực thi một giao diện IStorable và minh họa việc boxing ngầm
định khi gán một cấu trúc cho một tham...
... đầu bằng việc tạo một thể hiện của cấu
trúc và khởi tạo thuộc tính là –1, sau đó giá trị của status được in ra:0
myStruct theStruct = new myStruct();
theStruct.Status = -1; // khởi tạo
Console.WriteLine(“theStruct.Status: ... boxing một giá trị nguyên để phương thức GetString của lớp object được gọi.
Điều muốn nhấn mạnh là ở dòng lệnh IL_0056 khi một cấu trúc myStruct đã được boxi...
... hơn một lớp trừu tượng.
Câu hỏi 3: Các lớp thực thi giao diện sẽ phải làm gì?
Trả lời 3: Các lớp thực thi giao diện phải cung cấp các phần thực thi chi tiết cho các phương
thức, thuộc tính, chỉ ... những thuộc tính truy cập nào?
Trả lời 5: Mặc định các thành viên của giao diện là public. Vì mục tiêu của giao diện là xây
dựng cho các lớp khác sử dụng. Nếu chúng ta thay đổi thu...
... hết các chương trình đều sử dụng cú
pháp ngắn hơn do sự tự nhiên và lười đánh nhiều lệnh của người lập trình.
Sử dụng từ khóa params
Chúng ta có thể tạo một phương thức rồi sau đó hiển thị các ... đó hiển thị các số nguyên ra màn hình
console bằng cách truyền vào một mảng các số nguyên và sử dụng vòng lặp foreach để
duyệt qua từng thành phần trong mảng. Từ khóa param...