Tải bản đầy đủ (.pdf) (35 trang)

Giáo trình c# và NET framework bài 3 và 4

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (375.84 KB, 35 trang )

L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
1
1
C# and .NET Framework
C# and .NET Framework
B
B
à
à
i 3: L


i 3: L


p tr
p tr
ì
ì
nh nâng cao
nh nâng cao
trong
trong
C#
C#
Đo
Đo
à
à
n Quang Minh
n Quang Minh


http
http
://www.VTPortal.net
://www.VTPortal.net
Last update:
Last update:
21. Dec 2006
21. Dec 2006
L

L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
2
2
M
M


c l
c l



c
c
Exceptions
Exceptions
User
User
-
-
Defined Casts
Defined Casts
Delegates
Delegates
Events
Events
Generics
Generics
Preprocessor Directive
Preprocessor Directive
Unsafe code
Unsafe code
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#

nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
3
3
Errors and Exception Handling
Errors and Exception Handling
L
L


i luôn luôn t
i luôn luôn t


n t
n t


i, cho d

i, cho d
ù
ù
h
h


th
th


ng đư
ng đư


c thi
c thi
ế
ế
t k
t k
ế
ế
t
t


t
t
th

th
ế
ế
n
n
à
à
o
o


L
L


i không đư
i không đư


c quy
c quy


n truy c
n truy c


p
p



L
L


i do thi
i do thi
ế
ế
t b
t b


h
h


ng
ng
(
(
đ
đ
í
í
a l
a l


i)

i)


L
L


i do đư
i do đư


ng truy
ng truy


n m
n m


ng h
ng h


ng
ng
Khi m
Khi m


t l

t l


i xu
i xu


t hi
t hi


n, .NET s
n, .NET s


n
n
é
é
m ra m
m ra m


t ngo
t ngo


i l
i l





C
C
á
á
c ngo
c ngo


i l
i l


đ
đ


u k
u k
ế
ế
th
th


a t
a t



l
l


p Exception
p Exception


T
T


t c
t c


c
c
á
á
c ngo
c ngo


i l
i l


cơ b

cơ b


n đ
n đ


u đư
u đư


c cung c
c cung c


p b
p b


i .NET
i .NET


N
N
ế
ế
u g
u g



p l
p l


i, ch
i, ch
ú
ú
ng ta nên n
ng ta nên n
é
é
m ra m
m ra m


t ngo
t ngo


i l
i l


đ
đ


c bi

c bi


t trong đ
t trong đ
ó
ó
c
c
ó
ó
mô t
mô t


thông tin rõ r
thông tin rõ r
à
à
ng v
ng v


ngo
ngo


i l
i l



đ
đ
ó
ó


N
N
ế
ế
u không t
u không t
ì
ì
m đư
m đư


c l
c l


p ngo
p ngo


i l
i l



ph
ph
ù
ù
h
h


p, c
p, c
ó
ó
th
th


xây d
xây d


ng l
ng l


p
p
ngo
ngo



i l
i l


c
c


a riêng m
a riêng m
ì
ì
nh
nh
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:

:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
4
4
Errors and Exception Handling
Errors and Exception Handling
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à

à
n Quang Minh
n Quang Minh
5
5
Errors and Exception Handling
Errors and Exception Handling
try
try
{
{


}
}
catch (Exception e)
catch (Exception e)
{
{


}
}
finally
finally
{
{


}

}
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
6
6
Errors and Exception Handling
Errors and Exception Handling
Ph
Ph



n
n
try
try
th
th


c
c
thi
thi
c
c
á
á
c
c
l
l


nh
nh
b
b
ì
ì
nh

nh
thư
thư


ng
ng
Ph
Ph


n
n
catch
catch
x
x




c
c
á
á
c
c
ngo
ngo



i
i
l
l


c
c
ó
ó
th
th


xu
xu


t
t
hi
hi


n
n


N

N
ế
ế
u
u
không
không
s
s


d
d


ng
ng
ngo
ngo


i
i
l
l


n
n
é

é
m
m
ra
ra
,
,
c
c
ó
ó
th
th


b
b


qua
qua
ph
ph


n
n
đ
đ



i
i




ng
ng
đ
đ
ó
ó
.
.


C
C
ó
ó
th
th


c
c
ó
ó
nhi

nhi


u
u
ph
ph


n
n
catch
catch
trong
trong
m
m


t
t
kh
kh


i
i
try catch
try catch
,

,
khi
khi
đ
đ
ó
ó
m
m


i
i
ph
ph


n
n
catch
catch
x
x




m
m



t
t
ngo
ngo


i
i
l
l


kh
kh
á
á
c
c
nhau
nhau
.
.


Ngo
Ngo


i

i
l
l


c
c
ó
ó
th
th


đư
đư


c
c
n
n
é
é
m
m
l
l


i

i
b
b


ng
ng
t
t


kh
kh
ó
ó
a
a
throw
throw
.
.
Ph
Ph


n
n
finally
finally
th

th


c
c
thi
thi
c
c
á
á
c
c
l
l


nh
nh
k
k
ế
ế
t
t
th
th
ú
ú
c

c
c
c


a
a
kh
kh


i
i
l
l


nh
nh
.
.
V
V
í
í
d
d


trong

trong
vi
vi


c
c
x
x




t
t


p
p
tin
tin


Ph
Ph


n
n
try

try
th
th


c
c
thi
thi
c
c
á
á
c
c
l
l


nh
nh
như
như
m
m


file,
file,
đ

đ


c
c
ghi
ghi
b
b
ì
ì
nh
nh
thư
thư


ng
ng


Ph
Ph


n
n
catch
catch
x

x




l
l


i
i
.
.


Ph
Ph


n
n
finally
finally
,
,
n
n
ế
ế
u

u
file
file
đư
đư


c
c
m
m


th
th
ì
ì
ph
ph


i
i
đ
đ
ó
ó
ng
ng
l

l


i
i
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
7
7
User

User
-
-
Defined Casts
Defined Casts
To
To
á
á
n
n
t
t


é
é
p
p
ki
ki


u
u
as
as
Ch
Ch
ú

ú
ng
ng
ta
ta
thư
thư


ng
ng
xuyên
xuyên
ph
ph


i
i
é
é
p
p
ki
ki


u
u
trong

trong
C#
C#


C
C
ó
ó
2
2
lo
lo


i
i
é
é
p
p
ki
ki


u
u
trong
trong
C#: implicit (an

C#: implicit (an
to
to
à
à
n
n
tuy
tuy


t
t
đ
đ


i
i
),
),
explicit(c
explicit(c
ó
ó
r
r


i

i
ro
ro
)
)


C
C
ó
ó
th
th


é
é
p
p
ki
ki


u
u
t
t


l

l


p
p
k
k
ế
ế
th
th


a
a
v
v


l
l


p
p


s
s



, song
, song
không
không
th
th


l
l
à
à
m
m
ngư
ngư


c
c
l
l


i
i


C

C
ó
ó
th
th


é
é
p
p
ki
ki


u
u
qua
qua
l
l


i
i
gi
gi


a

a
2
2
l
l


p
p
,
,
khi
khi
đ
đ
ó
ó
c
c


n
n
khai
khai
b
b
á
á
o

o
h
h
à
à
m
m
é
é
p
p
ki
ki


u
u
public static implicit operator
public static implicit operator
conv
conv
-
-
type
type
-
-
out
out
(

(
conv
conv
-
-
type
type
-
-
in
in
operand
operand
)
)
public static explicit operator
public static explicit operator
conv
conv
-
-
type
type
-
-
out
out
(
(
conv

conv
-
-
type
type
-
-
in
in
operand
operand
)
)
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo

Đo
à
à
n Quang Minh
n Quang Minh
8
8
Delegates
Delegates
delegate
delegate


C
C
ó
ó
nh
nh


ng
ng
công
công
vi
vi


c

c
không
không
x
x
á
á
c
c
đ
đ


nh
nh
l
l
ú
ú
c
c
biên
biên
d
d


ch
ch
,

,
ch
ch


x
x
á
á
c
c
đ
đ


nh
nh
l
l
ú
ú
c
c
th
th


c
c
thi

thi
.
.


C
C
á
á
c
c
thu
thu


t
t
to
to
á
á
n
n
t
t


ng
ng
qu

qu
á
á
t
t
,
,
v
v
í
í
d
d


s
s


p
p
x
x
ế
ế
p
p
:
:
không

không
th
th


đ
đ


nh
nh
ngh
ngh
ĩ
ĩ
a
a
phương
phương
th
th


c
c
so
so
s
s
á

á
nh
nh
2
2
đ
đ


i
i




ng
ng
b
b


t
t
k
k




delegate

delegate
l
l
à
à
ki
ki


u
u
tham
tham
chi
chi
ế
ế
u
u
,
,
gi
gi


ng
ng
như
như
class (

class (
trong
trong
C#),
C#),
v
v


ý
ý
ngh
ngh
ĩ
ĩ
a
a
gi
gi


ng
ng
con
con
tr
tr


h

h
à
à
m
m
trong
trong
C++
C++
[
[
attributes
attributes
] [
] [
modifiers
modifiers
]
]
delegate
delegate
result
result
-
-
type
type
identifier
identifier
(

(
[
[
formal
formal
-
-
parameters
parameters
]
]
);
);
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo

Đo
à
à
n Quang Minh
n Quang Minh
9
9
Delegates
Delegates
delegate void
delegate void
MyDelegate(int
MyDelegate(int
i);
i);
class Program
class Program
{
{
public static void Main()
public static void Main()
{
{
TakesADelegate(new
TakesADelegate(new
MyDelegate(DelegateFunction
MyDelegate(DelegateFunction
));
));
}

}
public static void
public static void
TakesADelegate(MyDelegate
TakesADelegate(MyDelegate
SomeFunction
SomeFunction
)
)
{
{
SomeFunction(21);
SomeFunction(21);
}
}
public static void
public static void
DelegateFunction(int
DelegateFunction(int
i)
i)
{
{
System.Console.WriteLine("Called
System.Console.WriteLine("Called
by delegate with number: {0}.", i);
by delegate with number: {0}.", i);
}
}
}

}
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
10
10
Events
Events
S
S



ki
ki


n
n


Đư
Đư


c
c
s
s


d
d


ng
ng
đ
đ


b

b
á
á
o
o
hi
hi


u
u
m
m


t
t
đi
đi


u
u
g
g
ì
ì
đ
đ
ó

ó
x
x


y
y
ra
ra
.
.


Trong
Trong
Windows,
Windows,
c
c
ó
ó
r
r


t
t
nhi
nhi



u
u
s
s


ki
ki


n
n
.
.


Trong
Trong
C#, event
C#, event
l
l
à
à
m
m


t

t
d
d


ng
ng
đ
đ


c
c
bi
bi


t
t
c
c


a
a
delegate
delegate
[
[
attributes

attributes
] [
] [
modifiers
modifiers
]
]
event
event
type
type
declarator
declarator
;
;
[
[
attributes
attributes
] [
] [
modifiers
modifiers
]
]
event
event
type
type
member

member
-
-
name
name
{
{
accessor
accessor
-
-
declarations
declarations
};
};
Ph
Ph
á
á
t
t
sinh
sinh
s
s


ki
ki



n
n


Đ
Đ


nh
nh
ngh
ngh
ĩ
ĩ
a
a
tham
tham
s
s


s
s


ki
ki



n
n
,
,
đ
đ


t
t
tên
tên
l
l
à
à
EventName
EventName
EventArgs
EventArgs
,
,
k
k
ế
ế
th
th



a
a
t
t


System.EventArgs
System.EventArgs
.
.


Đ
Đ


nh
nh
ngh
ngh
ĩ
ĩ
a
a
m
m


t

t
delegates
delegates
cho
cho
s
s


ki
ki


n
n
,
,
đ
đ


t
t
tên
tên
l
l
à
à
EventName

EventName
EventHandler
EventHandler
.
.


Ph
Ph
á
á
t
t
sinh
sinh
s
s


ki
ki


n
n
Khai
Khai
b
b
á

á
o
o
s
s


ki
ki


n
n
Khai
Khai
b
b
á
á
o
o
m
m


t
t
phương
phương
th

th


c
c
On
On
EventName
EventName
đ
đ


ph
ph
á
á
t
t
sinh
sinh
s
s


ki
ki


n

n
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
11
11
Events
Events
X
X





s
s


ki
ki


n
n


N
N
ế
ế
u
u
m
m


t
t
component
component
ph

ph
á
á
t
t
sinh
sinh
m
m


t
t
s
s


ki
ki


n
n
,
,
c
c
ó
ó
th

th


b
b


t
t
v
v
à
à
x
x




s
s


ki
ki


n
n
đ

đ
ó
ó
.
.


Đ
Đ


hander
hander
s
s


ki
ki


n
n
trong
trong
Windows Form
Windows Form
ho
ho



c
c
trong
trong
Web Form:
Web Form:
Khai
Khai
b
b
á
á
o
o
component (
component (
v
v
í
í
d
d


button)
button)
Khai
Khai
b

b
á
á
o
o
h
h
à
à
m
m
x
x




s
s


ki
ki


n
n
G
G



n
n
h
h
à
à
m
m
v
v
à
à
o
o
s
s


ki
ki


n
n
L
L


p tr

p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
12
12
Generics
Generics
Generics
Generics


Cho
Cho
ph
ph
é

é
p
p
class,
class,
struct
struct
, interface, method
, interface, method
s
s


d
d


ng
ng
ki
ki


u
u
d
d


li

li


u
u
m
m
à
à
n
n
ó
ó
lưu
lưu
tr
tr


như
như
l
l
à
à
tham
tham
s
s



đ
đ


u
u
v
v
à
à
o
o
.
.


Kh
Kh
á
á
i
i
ni
ni


m
m
gi

gi


ng
ng
như
như
template
template
c
c


a
a
C++.
C++.


Generics
Generics
xu
xu


t
t
hi
hi



n
n
nh
nh


m
m
m
m


c
c
đ
đ
í
í
ch
ch
x
x


l
l
í
í
ch

ch
í
í
nh
nh
x
x
á
á
c
c
ki
ki


u
u
c
c


a
a
d
d


li
li



u
u
.
.
V
V
í
í
d
d


,
,
v
v


i
i
stack,
stack,
n
n
ế
ế
u
u
không

không
c
c
ó
ó
generics
generics
th
th
ì
ì
d
d


li
li


u
u
coi
coi
như
như
c
c
á
á
c

c
object,
object,
nên
nên
đòi
đòi
h
h


i
i
ph
ph


i
i
é
é
p
p
ki
ki


u
u
khi

khi
x
x


l
l
í
í
,
,
đi
đi


u
u
n
n
à
à
y
y
c
c
ó
ó
th
th



gây
gây
l
l


i
i
run
run
-
-
time.
time.
T
T


o
o
v
v
à
à
s
s


d

d


ng
ng
Generics
Generics


Khai
Khai
b
b
á
á
o
o
gi
gi


ng
ng
như
như
template
template
trong
trong
C++:

C++:
d
d
ù
ù
ng
ng
c
c


p
p
d
d


u
u
< >
< >


S
S


d
d



ng
ng
:
:
ph
ph


i
i
ch
ch


đ
đ


nh
nh
ch
ch
í
í
nh
nh
x
x
á

á
c
c
ki
ki


u
u
d
d


li
li


u
u
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-

-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
13
13
Generics
Generics
V
V
í
í
d
d


s
s


d
d



ng
ng
Generics
Generics


Khai
Khai
b
b
á
á
o
o
:
:
public class Stack<ItemType>
{
private ItemType[] items = new ItemType[100];
public void Push(ItemType data) {…}
public ItemType Pop() {…}
}
–Sử dụng
Stack<int> s = new Stack<int>();
s.Push(3);
int x = s.Pop();
L
L



p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
14
14
Preprocessor Directives
Preprocessor Directives
#define and #
#define and #
undef
undef
#if, #
#if, #
elif

elif
, #else, and #
, #else, and #
endif
endif
#warning and #error
#warning and #error
#region and #
#region and #
endregion
endregion
#line
#line
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo

Đo
à
à
n Quang Minh
n Quang Minh
15
15
Memory Management
Memory Management
C#
C#
t
t


đ
đ


ng
ng
qu
qu


n
n


b

b


nh
nh


nh
nh


v
v
à
à
o
o
b
b


thu
thu
gom
gom
r
r
á
á
c

c


B
B


nh
nh




o
o
trong
trong
Windows
Windows


Stack
Stack
v
v
à
à
heap
heap
C

C
ó
ó
2
2
lo
lo


i
i
ki
ki


u
u
d
d


li
li


u
u
trong
trong
C#

C#


Value Data Types:
Value Data Types:
D
D


li
li


u
u
ch
ch


a
a
t
t


i
i
nơi
nơi
n

n
ó
ó
đư
đư


c
c
c
c


p
p
ph
ph
á
á
t
t
v
v
ù
ù
ng
ng
nh
nh



C
C
á
á
c
c
ki
ki


u
u
s
s


,
,
bool
bool
, char, date,
, char, date,
c
c
á
á
c
c
c

c


u
u
tr
tr
ú
ú
c
c
,
,
c
c
á
á
c
c
ki
ki


u
u
li
li


t

t




Reference Data Types:
Reference Data Types:
Ch
Ch


a
a
m
m


t
t
con
con
tr
tr


tr
tr


t

t


i
i
nơi
nơi
c
c


t
t
gi
gi


d
d


li
li


u
u
Bao
Bao
g

g


m
m
ki
ki


u
u
string,
string,
m
m


ng
ng
, class, delegate
, class, delegate
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#

nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
16
16
Unsafe Code
Unsafe Code
C#
C#
t
t


qu
qu


n
n



b
b


nh
nh


,
,
tuy
tuy
nhiên
nhiên
c
c
ó
ó
nh
nh


ng
ng
l
l
ú
ú
c

c
ch
ch
ú
ú
ng
ng
ta
ta
c
c


n
n
s
s


d
d


ng
ng
con
con
tr
tr



.
.


D
D
ù
ù
ng
ng
t
t


kh
kh
ó
ó
a
a
unsafe
unsafe
t
t


i
i
v

v
ù
ù
ng
ng
l
l


nh
nh
mu
mu


n
n
s
s


d
d


ng
ng
con
con
tr

tr




Ph
Ph


i
i
c
c
ó
ó
tham
tham
s
s


biên
biên
d
d


ch
ch
unsafe

unsafe
khi
khi
d
d


ch
ch
chương
chương
tr
tr
ì
ì
nh
nh
Con
Con
tr
tr


:
:


C
C
á

á
c
c
khai
khai
b
b
á
á
o
o
v
v
à
à
s
s


d
d


ng
ng
tương
tương
t
t



C++
C++
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
17
17
T
T
à

à
i li
i li


u tham kh
u tham kh


o
o
Professional C#, Second Edition
Professional C#, Second Edition


/> />

Đ
Đ


a ch
a ch


download t
download t
à
à
i li

i li


u
u
/> />-
-
day/tab.aspx
day/tab.aspx
Di
Di


n đ
n đ
à
à
n C# & .NET
n C# & .NET
/> />ory/hoc
ory/hoc
-
-
tap
tap
-
-
nghien
nghien
-

-
cuu/dot
cuu/dot
-
-
net/tab.aspx
net/tab.aspx
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
1

1
C# and .NET Framework
C# and .NET Framework
B
B
à
à
i 4:
i 4:
.NET
.NET
v
v
à
à
c
c
á
á
c
c
l
l


p
p


b

b


n
n
Đo
Đo
à
à
n Quang Minh
n Quang Minh


http
http
://www.VTPortal.net
://www.VTPortal.net
Last update:
Last update:
28. December 2006
28. December 2006
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#

nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
2
2
M
M


c l
c l


c
c
System.Object
System.Object
X
X





String
String
Regular Expression
Regular Expression
Groups of Objects
Groups of Objects
Reflection
Reflection
Threading
Threading
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo

Đo
à
à
n Quang Minh
n Quang Minh
3
3
System.Object
System.Object
L
L
à
à
l
l


p cơ b
p cơ b


n c
n c


a C#
a C#


N

N
ế
ế
u không n
u không n
ó
ó
i g
i g
ì
ì
, m
, m


t l
t l


p b
p b


t k
t k


coi như đư
coi như đư



c k
c k
ế
ế
th
th


a t
a t


Object
Object
C
C
á
á
c phương th
c phương th


c
c


public
public
virutal

virutal
string
string
ToString
ToString
()
()
override phương th
override phương th


c n
c n
à
à
y đ
y đ


chuy
chuy


n m
n m


t đ
t đ



i tư
i tư


ng th
ng th
à
à
nh xâu ký
nh xâu ký
t
t


.
.
Thư
Thư


ng d
ng d
ù
ù
ng khi k
ng khi k
ế
ế
t xu

t xu


t thông tin v
t thông tin v


đ
đ


i tư
i tư


ng.
ng.


public
public
virutal
virutal
int
int
GetHashTable
GetHashTable
()
()
Tr

Tr


v
v


m
m


t gi
t gi
á
á
tr
tr


băm c
băm c


a đ
a đ


i tư
i tư



ng
ng
Thư
Thư


ng d
ng d
ù
ù
ng khi t
ng khi t


o kho
o kho
á
á
truy xu
truy xu


t cho đ
t cho đ


i tư
i tư



ng trong m
ng trong m


t t
t t


p d
p d


li
li


u như b
u như b


ng băm ho
ng băm ho


c t
c t


đi

đi


n.
n.


public
public
virutal
virutal
bool
bool
Equals(object
Equals(object
obj
obj
)
)


public static
public static
bool
bool
Equals(object
Equals(object
objA
objA
, object

, object
objB
objB
)
)


public static
public static
bool
bool
ReferenceEquals(object
ReferenceEquals(object
objA
objA
, object
, object
objB
objB
)
)
So s
So s
á
á
nh hai đ
nh hai đ


i tư

i tư


ng
ng
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
4
4
System.Object

System.Object
C
C
á
á
c
c
phương
phương
th
th


c
c
(
(
ti
ti
ế
ế
p
p
)
)


protected virtual void Finalize()
protected virtual void Finalize()
Mang

Mang
ý
ý
ngh
ngh
ĩ
ĩ
a
a
l
l
à
à
h
h
à
à
m
m
hu
hu


,
,
đư
đư


c

c
g
g


i
i
b
b


i
i
b
b


thu
thu
gom
gom
r
r
á
á
c
c
.
.
M

M


c
c
đ
đ


nh
nh
không
không
th
th


c
c
thi
thi
g
g
ì
ì
.
.
Ch
Ch



override
override
khi
khi
c
c


n
n
thi
thi
ế
ế
t
t
,
,
v
v
í
í
d
d


đ
đ
ó

ó
ng
ng
t
t


p
p
tin.
tin.


public Type
public Type
GetType
GetType
()
()
Tr
Tr


v
v


ki
ki



u
u
đ
đ


i
i




ng
ng
,
,
bao
bao
g
g


m
m
l
l


p

p
cha,
cha,
c
c
á
á
c
c
phương
phương
th
th


c
c
,
,
thu
thu


c
c
t
t
í
í
nh

nh
,
,




protected object
protected object
MemberwiseClone
MemberwiseClone
()
()
Copy
Copy
m
m


t
t
đ
đ


i
i





ng
ng
.
.
Ch
Ch
ú
ú
ý
ý
ch
ch


copy
copy
c
c
á
á
c
c
tham
tham
chi
chi
ế
ế
u

u
bên
bên
trong
trong
đ
đ


i
i




ng
ng
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor

Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
5
5
X
X




String
String
C
C
ó
ó
2
2
l
l


p

p
hay
hay
đư
đư


c
c
d
d
ù
ù
ng
ng
đ
đ


x
x




xâu
xâu


String:

String:
x
x




c
c
á
á
c
c
xâu
xâu


t
t




StringBuilder
StringBuilder
:
:
xây
xây
d

d


ng
ng
m
m


t
t
xâu
xâu


t
t


String:
String:
ch
ch


a
a
c
c
á

á
c
c
phương
phương
th
th


c
c


b
b


n
n
trong
trong
vi
vi


c
c
x
x





xâu
xâu


t
t


.
.


Compare(): so
Compare(): so
s
s
á
á
nh
nh
hai
hai
xâu
xâu
.
.



CompareOrdinal
CompareOrdinal
(): so
(): so
s
s
á
á
nh
nh
,
,
nhưng
nhưng
không
không
t
t
í
í
nh
nh
đ
đ
ế
ế
n
n
văn

văn
ho
ho
á
á
(culture)
(culture)


Format():
Format():
đ
đ


nh
nh
d
d


ng
ng
xâu
xâu
d
d


a

a
trên
trên
bi
bi


u
u
th
th


c
c
đ
đ


nh
nh
d
d


ng
ng
v
v
à

à
c
c
á
á
c
c
tham
tham
s
s


đ
đ


u
u
v
v
à
à
o
o
L
L


p tr

p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
6
6
X
X




String
String
C
C
á

á
c
c
phương
phương
th
th


c
c
c
c


a
a
String (
String (
ti
ti
ế
ế
p
p
)
)


IndexOf

IndexOf
(),
(),
IndexOfAny
IndexOfAny
(),
(),
LastIndexOf
LastIndexOf
(),
(),
LastIndexOfAny
LastIndexOfAny
():
():
t
t
ì
ì
m
m
ki
ki
ế
ế
m
m
chu
chu



i
i


t
t


,
,
ho
ho


c
c
m
m


t
t
ph
ph


n
n
chu

chu


i
i


t
t


trong
trong
m
m


t
t
xâu
xâu
cho
cho
trư
trư


c
c
.

.


PadLeft
PadLeft
(),
(),
PadRight
PadRight
():
():
đi
đi


n
n
thêm
thêm
v
v
à
à
o
o
đ
đ


u

u
ho
ho


c
c
cu
cu


i
i
xâu
xâu
b
b


i
i


t
t


cho
cho
trư

trư


c
c
.
.


Replace():
Replace():
thay
thay
th
th
ế
ế
m
m


t
t
m
m


u
u
trong

trong
xâu
xâu
b
b


i
i
m
m


t
t
chu
chu


i
i


t
t


kh
kh
á

á
c
c
.
.


Split():
Split():
c
c


t
t
m
m


t
t
xâu
xâu
th
th
à
à
nh
nh
m

m


t
t
t
t


p
p
h
h


p
p
c
c
á
á
c
c
xâu
xâu
con
con
d
d



a
a
theo
theo
m
m


t
t


t
t


phân
phân
c
c
á
á
ch
ch
cho
cho
trư
trư



c
c
.
.


Substring():
Substring():
l
l


y
y
m
m


t
t
ph
ph


n
n
xâu
xâu
con

con
t
t


m
m


t
t
xâu
xâu
cho
cho
trư
trư


c
c
.
.


ToLower
ToLower
(),
(),
ToUpper

ToUpper
():
():
bi
bi
ế
ế
n
n
c
c
á
á
c
c


t
t


trong
trong
xâu
xâu
th
th
à
à
nh

nh


t
t


thư
thư


ng
ng
ho
ho


c
c


t
t


hoa
hoa
.
.



Trim(),
Trim(),
TrimEnd
TrimEnd
(),
(),
TrimStart
TrimStart
():
():
xo
xo
á
á
c
c
á
á
c
c


t
t


tr
tr



ng
ng


đ
đ


u
u
,
,
cu
cu


i
i
xâu
xâu
.
.


Insert(), Remove():
Insert(), Remove():
ch
ch
è

è
n
n
v
v
à
à
o
o
,
,
xo
xo
á
á
đi
đi
m
m


t
t
xâu
xâu
con
con
trong
trong
m

m


t
t
xâu
xâu
cho
cho
trư
trư


c
c
.
.


StartsWith
StartsWith
(),
(),
EndsWith
EndsWith
():
():
ki
ki



m
m
tra
tra
xem
xem
xâu
xâu
c
c
ó
ó
b
b


t
t
đ
đ


u
u
,
,
k
k
ế

ế
t
t
th
th
ú
ú
c
c
b
b


i
i
m
m


t
t
xâu
xâu
kh
kh
á
á
c
c
.

.
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
7
7
X
X





String
String
Đ
Đ


x
x




xâu
xâu
,
,
ch
ch
ú
ú
ng
ng
ta
ta
hay
hay
d
d
ù

ù
ng
ng
c
c
á
á
c
c
ph
ph
é
é
p
p
to
to
á
á
n
n
như
như
so
so
s
s
á
á
nh

nh
,
,
g
g
á
á
n
n
,
,
c
c


ng
ng
thêm
thêm
(+=)
(+=)


Ưu
Ưu
đi
đi


m

m
:
:
C
C
á
á
c
c
ph
ph
é
é
p
p
to
to
á
á
n
n
đơn
đơn
gi
gi


n
n
,

,
d
d


d
d
ù
ù
ng
ng


Như
Như


c
c
đi
đi


m
m
:
:
Hi
Hi



u
u
su
su


t
t
qu
qu


n
n


b
b


nh
nh


th
th


p

p
Khi
Khi
c
c


n
n
xây
xây
d
d


ng
ng
m
m


t
t
chu
chu


i
i
văn

văn
b
b


n
n
ph
ph


c
c
t
t


p
p
v
v
à
à
c
c
ó
ó
đ
đ



d
d
à
à
i
i
tương
tương
đ
đ


i
i
l
l


n
n
,
,
ch
ch
ú
ú
ng
ng
ta

ta
d
d
ù
ù
ng
ng
l
l


p
p
StringBuilder
StringBuilder


StringBuilder
StringBuilder
cho
cho
ph
ph
é
é
p
p
n
n



i
i
thêm
thêm
c
c
á
á
c
c
xâu
xâu
m
m


i
i
v
v
à
à
o
o
trong
trong
m
m



t
t
t
t


p
p
h
h


p
p
c
c
á
á
c
c
xâu
xâu
c
c
ó
ó
s
s



n
n
m
m
à
à
không
không
c
c


n
n
qu
qu
á
á
nhi
nhi


u
u
c
c
á
á
c

c
thao
thao
t
t
á
á
c
c
x
x




v
v
ù
ù
ng
ng
nh
nh




V
V
í

í
d
d


:
:
L
L


p tr
p tr
ì
ì
nh nâng cao trong C#
nh nâng cao trong C#
-
-
Editor
Editor
:
:
Đo
Đo
à
à
n Quang Minh
n Quang Minh
8

8
X
X




String
String
StringBuilder
StringBuilder


Append():
Append():
n
n


i
i
thêm
thêm
v
v
à
à
o
o
đuôi

đuôi
m
m


t
t
xâu
xâu
m
m


i
i


Insert():
Insert():
ch
ch
è
è
n
n
v
v
à
à
o

o
m
m


t
t
v
v


tr
tr
í
í
b
b


t
t
k
k


m
m


t

t
xâu
xâu
m
m


i
i
.
.


Remove():
Remove():
xo
xo
á
á
b
b


m
m


t
t
xâu

xâu
con
con
t
t


i
i
v
v


tr
tr
í
í
hi
hi


n
n
th
th


i
i



ToString
ToString
():
():
sau
sau
khi
khi
xây
xây
d
d


ng
ng
t
t


p
p
c
c
á
á
c
c
xâu

xâu
xong
xong
,
,
phương
phương
th
th


c
c
n
n
à
à
y
y
bi
bi
ế
ế
n
n
đ
đ


i

i
t
t


p
p
c
c
á
á
c
c
xâu
xâu
th
th
à
à
nh
nh
chu
chu


i
i
văn
văn
b

b


n
n
duy
duy
nh
nh


t
t
.
.

×