Ktl-icon-tai-lieu

Giao diện (Giao tiếp)

Được đăng lên bởi thienduong77777
Số trang: 9 trang   |   Lượt xem: 305 lần   |   Lượt tải: 0 lần
Giao diện (Giao tiếp)

Interface

OOP in C# - GV: Phạm Đình Sắc – sacvn@yahoo.com

11

Interface
¾Giao diện là một dạng của lớp trừu tượng
¾Chỉ có các nguyên mẫu phương thức, thuộc
tính, chỉ mục, được khai báo trong giao diện.
¾Tất cả các thành phần khai báo trong giao
diện mặc định là public (nên không có từ
khóa về mức độ truy cập trong khai báo các
thuộc tính và phương thức)
¾Khi một lớp kế thừa một giao diện ta nói rằng
lớp đó thực thi (Implement) giao diện

2

OOP in C# - GV: Phạm Đình Sắc – sacvn@yahoo.com

Interface
¾Khi một lớp kế thừa một giao diện ta phải
thực thi tất cả các phương thức, thuộc tính…
khai báo trong giao diện đó.
¾Trong C# chỉ có kế thừa đơn
¾Muốn thực hiện đa kế thừa phải kế thừa
thông qua Interface, nói các khác Một lớp chỉ
có thể kế thừa 1 lớp khác, đồng thời kế thừa
nhiều giao diện (đây tạm gọi là đa kế thừa
trong C#)

OOP in C# - GV: Phạm Đình Sắc – sacvn@yahoo.com

3

Interface
¾Cú pháp tạo giao diện:
[Mứ
[MứcĐộ
cĐộTruyCậ
TruyCập] Interface TênGiaoDiệ
TênGiaoDiện [: GiaoDiệ
GiaoDiệnCơ Sở
Sở]
{
/ / Nộ
Nội dung giao diệ
diện
}
Trong đó
đó:
[Mứ
[MứcĐộ
cĐộTruyCậ
TruyCập] : thườ
thường là
là public;
[: GiaoDiệ
GiaoDiệnCơ Sở
Sở] : danh sá
sách cá
các Interface khá
khác mà
mà nó kế
thừ
thừa, mỗ
mỗi Interface cá
các nhau bở
bởi dấ
dấu phẩ
phẩy (,)

4

OOP in C# - GV: Phạm Đình Sắc – sacvn@yahoo.com

VD:

public interface IPlayerManager
{
public void PlayMusic();
public void PauseMusic();
public void Stop();
public int OnOff
// thuộc tính của Interface
{
get ;
}
}
// Error ?
OOP in C# - GV: Phạm Đình Sắc – sacvn@yahoo.com

5

VD:

public interface IPlayerManager
{
void PlayMusic();
void PauseMusic();
void Stop();
int OnOff
// thuộc tính của Interface
{
get ;
}
}
// Error ?
6

OOP in C# - GV: Phạm Đình Sắc – sacvn@yahoo.com

VD:
public class Player : IPlayerManager
{
int _Switch;
public void PlayMusic()
{
Console.WriteLine(“Music is playing ”);
_Switch = 1 ;
}
public void PauseMusic()
{
Console.WriteLine(“Music is pause ”);
_Switch = 0 ;
}
public void Stop()
{
Console.WriteLine(“Music is stopped ”);
_Switch = -1 ;
}
} // Error ?
OOP in C# - GV: Phạm Đình Sắc – sacvn@yahoo.com

7

VD:
public class Player : IPlayerManager
{
int _Switch;
public void PlayMusic()
{
Console.WriteLine(“Music is playing ”);
_Switch = 1 ;
}
public void PauseMusic()
{
Console.WriteLine(“Music is pause ”);
_Switch = 0 ;
}
public void Stop()
{
Console.WriteLine(“Music is stop ”);
_Switch = -1 ;
}
public int OnOff
{
get { return _Switch ; }
}
}
8

OOP in C# - GV...
OOP in C# - GV: Phm Đình Sc – sacvn@yahoo.com
1
Giao di
Giao di
n (Giao ti
n (Giao ti
ế
ế
p)
p)
1
Interface
Interface
Interface
OOP in C# - GV: Phm Đình Sc – sacvn@yahoo.com
2
Interface
Interface
¾
¾
Giao di
Giao di
n
n
l
l
à
à
m
m
t d
t d
ng c
ng c
a l
a l
p tr
p tr
u tư
u tư
ng
ng
¾
¾
Ch
Ch
c
c
ó
ó
c
c
á
á
c nguyên m
c nguyên m
u phương th
u phương th
c, thu
c, thu
c
c
t
t
í
í
nh, ch
nh, ch
m
m
c,
c,
đư
đư
c khai b
c khai b
á
á
o trong giao di
o trong giao di
n.
n.
¾
¾
T
T
t c
t c
c
c
á
á
c th
c th
à
à
nh ph
nh ph
n khai b
n khai b
á
á
o trong giao
o trong giao
di
di
n m
n m
c đ
c đ
nh l
nh l
à
à
public
public
(nên không c
(nên không c
ó
ó
t
t
kh
kh
ó
ó
a v
a v
m
m
c đ
c đ
truy c
truy c
p trong khai b
p trong khai b
á
á
o c
o c
á
á
c
c
thu
thu
c t
c t
í
í
nh v
nh v
à
à
phương th
phương th
c)
c)
¾
¾
Khi m
Khi m
t l
t l
p k
p k
ế
ế
th
th
a m
a m
t giao di
t giao di
n ta n
n ta n
ó
ó
i r
i r
ng
ng
l
l
p đ
p đ
ó
ó
th
th
c thi
c thi
(Implement)
(Implement)
giao di
giao di
n
n
Giao diện (Giao tiếp) - Trang 2
Để xem tài liệu đầy đủ. Xin vui lòng
Giao diện (Giao tiếp) - Người đăng: thienduong77777
5 Tài liệu rất hay! Được đăng lên bởi - 1 giờ trước Đúng là cái mình đang tìm. Rất hay và bổ ích. Cảm ơn bạn!
9 Vietnamese
Giao diện (Giao tiếp) 9 10 84