Tải bản đầy đủ (.ppt) (29 trang)

Bài giảng Lập trình hướng đối tượng 1: Chương 1.1 - ThS. Thái Kim Phụng

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 (396.15 KB, 29 trang )

Trường ĐH Kinh Tế
Tp.HCM
Khoa Tin Học Quản Lý

LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
1
NGÔN NGỮ C#


Giới thiệu ngôn ngữ C#


Giới thiệu ngôn ngữ C#
C# được coi là một ngôn ngữ hướng đối tượng
vì nó cung cấp các tiện ích đặc biệt cho việc tổ
chức chương trình và dữ liệu theo mơ hình
hướng đối tượng


Giới thiệu ngôn ngữ C#
 Được phát triển bởi đội ngũ kỹ sư của
Microsoft, dẫn đầu là: Anders Hejlsberg và Scott
Wiltamuth
 C# là một ngôn ngữ:






Đơn giản


Hiện đại
Hướng đối tượng
Mạnh mẽ & Mềm dẻo
Ít từ khố


Giới thiệu ngôn ngữ C#
 C# là một ngôn ngữ đơn giản:




Loại bỏ những phức tạp có trong Java hay C++ như
macro , template , đa kế thừa , virtual base class
Giống về diện mạo cú pháp C và C++ nhưng được cải
tiến đơn giản hơn (Ví dụ : “:: , . , ” chỉ còn “.”

 C# là một ngơn ngữ hiện đại:


Có đầy đủ các tính năng: Xử lý ngoại lệ, thu gom bộ
nhớ tự động, kiểu dữ liệu an toàn, bảo mật mã
nguồn…


Giới thiệu ngôn ngữ C#
 C# là ngôn ngữ hướng đối tượng:





Đóng gói (encapsulation)
Kế thừa (inheritance)
Đa hình (polymorphism)

 C# là một ngôn ngữ mạnh mẽ và mềm dẻo:




Tuỳ thuộc vào bản thân người dùng, khơng có giới
hạn ở bản chất ngơn ngữ.
Tạo các ứng dụng đồ hoạ, bàn tính, xử lý văn bản,
trình biên dịch cho các ngơn ngữ khác


Giới thiệu ngơn ngữ C#
 C# có ít từ khố:



Cơ sở ngôn ngữ C#
 Các ghi chú : // (1 dịng) , /* (nhiều dịng) */
#region :
 Từ khố using: giúp sử dụng lớp có sẵn của khơng
gian tên nào đó tiện lợi hơn
 Ví dụ: using System.IO;
Sử dụng được các lớp làm việc với luồng dữ liệu, tập tin,
thư mục ổ đĩa


 Ứng dụng dạng console:




Nhập: string sInput ;
sInput = System.Console.ReadLine();
(chuyển kiểu : System.Convert.To????(sInput) )
Xuất : System.Console.WriteLine(“KQ = {0}”, sInput);


Cơ sở ngôn ngữ C#
 Phân biệt chữ hoa chữ thường
 Có các kiểu:




Dựng sẵn: byte , char , sbyte , int , float , double…
Hằng: const int PI = 3.1416;
Liệt kê: enum Ngay {Hai,Ba,Tu,Nam,Sau,Bay,CN};

 Câu lệnh: if else, switch, for, while, goto, foreach
Ví dụ:
Vịng lặp để duyệt tất cả các phần tử của mảng, tập hợp
int[] intarray = new int[5];
foreach(int i in intarray)
Console.WriteLine(i.ToString());



Cơ sở ngôn ngữ C#
 Không gian tên
(namespace)


Cơ sở ngôn ngữ C#









Kiểu dữ liệu (Type)
Biến (Variable) và Hằng (Constant)
Biểu thức (Expression)
Khoảng trắng (Whitespace)
Các câu lệnh (Statements)
Toán tử (Operators)
Không gian tên (Namespace)
Các chỉ thị tiền xử lý (Preprocessor Directives)


Kiểu dữ liệu (Type)
 C# là một ngôn ngữ kiểm sốt chặt chẽ về mặt
kiểu dữ liệu.
 Hai nhóm kiểu dữ liệu: nội tại (build-in), tự tạo
(user-defined).

 Hai loại kiểu dữ liệu: kiểu tham trị (value-type),
kiểu tham chiếu (reference type).
 Dữ liệu được lưu trên stack hoặc heap tùy vào
đặc thù của kiểu dữ liệu.


Kiểu dữ liệu (Type).
Type

Size
(bytes)

.NET type

Description

byte

1

Byte

Unsigned (trị 0-255).

char

2

Char


Unicode ký tự.

bool

1

Boolean

True or false.

sbyte

1

Sbyte

Signed (trị -128 to 127).

short

2

Int16

Signed (short) (trị -32,768 to 32,767).

ushort

2


UInt16

Unsigned (short) (trị 0 to 65,535).

int

4

Int32

Số nguyên có dấu (signed).
Trị từ -2,147,483,648 đến 2,147,483,647.

uint

4

UInt32

Số nguyên không dấu (Unsigned). Trị từ 0
đến 4,294,967,295.

float

4

Single

3.4 x 1038 với 7 số có ý nghĩa.


double

8

Double

1.8 x 10308 với 15-16 số có ý nghĩa.


Kiểu dữ liệu (Type)
decimal 16

Decimal

Lên đến 28 số và vị trí dấu chấm thập phân.
Thường dùng trong tính tốn tài chính. u cầu có
hậu tố (suffix) là "m" hoặc "M.".

long

8

Int64

Số ngun có dấu, trị từ
-9,223,372,036,854,775,808 đến
9,223,372,036,854,775,807.

ulong


8

UInt64

Số ngun khơng dấu, trị từ 0 đến 0xffffffffffffffff.

Object

Kiểu dữ liệu object dựa trên System.Object của
.NET Framework. Bạn có thể gán trị thuộc bất cứ
kiểu dữ liệu nào lên biến kiểu object. Thuộc kiểu
qui chiếu.

String

Kiểu string tượng trưng cho một chuỗi ký tự
Unicode. string là một alias đối với System.String
trên .NET Framework. Thuộc kiểu qui chiếu.

object

string


Chuyển đổi kiểu dữ liệu
Có 2 cách chuyển đổi:
 Chuyển đổi ngầm (implicit):
Chuyển đổi ngầm sẽ tự động được thực hiện và
bảo đảm khơng mất thơng tin.
Ví dụ: short x = 5; int y = x;


 Chuyển đổi tường minh (explicit).




Có những chuyển đổi ngầm khơng thể thực hiện
được và để chuyển đổi thì phải ép kiểu (cast).
Ví dụ: short x;
int y = 500; x = (short)y;
Khi ép kiểu có thể sẽ gây ra lỗi nếu khơng kiểm sốt
được giá trị của chúng.
Ví dụ: int y = 35.000;
short x = (short) y;


Biến (Variable)
Cú pháp khai báo một biến:
[modifier] datatype identifier;
modifier là một trong những từ khóa: public, private,
protected, ….

datatype là kiểu dữ liệu (int, long,…)

identifier là tên biến.
Có thể khai báo và khởi gán nhiều biến cùng một lúc, với
điều kiện các biến thuộc cùng một datatype và cùng
một modifier.
Ví dụ:



public static int x = 10, y =20; //đúng
public int x = 10, private byte y = 20; //sai


Hằng (Constant)
 Là một biến nhưng trị không thay đổi trong
suốt thời gian thi hành chương trình.
 Khai báo: const datatype identifier = value
 Đặc điểm:





Phải có từ khóa const.
Phải được gán lúc khai báo.
Không thể gán hằng từ một trị của một biến.
Luôn là static nhưng không dùng từ khóa static khi
khai báo.


Hằng (Constant)
 Ưu điểm:




Dễ đọc chương trình, bằng cách thay thế các con
số mang bởi những tên đầy ý nghĩa.

Dễ sửa chương trình, bằng cách chỉ một lần thay
đổi giá trị của hằng.
Tránh lỗi dễ dàng hơn, nếu gán lại giá trị cho hằng
thì chương trình sẽ báo lỗi ngay.

 Các loại hằng: literals, symbolic constant,
enumeration.


Enumeration (Liệt kê)
 Là một tập hợp những hằng được đặt tên.
 Là một kiểu dữ liệu số nguyên tự tạo.
 Cú pháp:
[atrributes][modifiers] enum identifier [:base-type] {enumerator-list};
 base-type là bất kỳ kiểu dữ liệu nào là số (ngoại trừ char)
 anumerator-list là danh sách các hằng, mỗi hằng có một trị
số, cách nhau bằng dấu phẩy. Nếu phần phần tử khơng có
trị số thì hằng đầu tiên có giá trị là 0, hằng đi sau sẽ tăng
lên 1 so với trị của hằng trước
Ví dụ:
enum SomeValues {
First,
Second,
Third = 20,
Fourth };


Phạm vi hoạt động của biến



Biểu thức và khoảng trắng
 Biểu thức (expression):



Các câu lệnh cho ra một trị được gọi là biểu thức.
Ví dụ:
myVariable = 57;
mySecondVariable = myVariable;

 Khoảng trắng (whitespace):




Các ký tự trắng (space), khoảng trắng canh cột
(tab), dòng mới (newline) đều được gọi là khoảng
trắng (whitespace).
C# làm lơ đi các khoảng trắng trong các câu lệnh.


Các câu lệnh (statement)
 Các câu lệnh rẽ nhánh



if…else.
switch.

 Các câu lệnh lặp





while
do…while
for

 Các câu lệnh nhảy: continue, break, return,
goto.


Câu lệnh if…else
 Cú pháp:

if (x > y)
WriteLine(“x > y”);

if (condition-expression)
statement1
[else
statement2]

if (x > y)
WriteLine(“x > y”);

else
WriteLine(“x <= y”);



Câu lệnh switch
 Cú pháp:
switch(expresstion)
{
case constant-expression:
statement
jump-statement
[default:statement]
}

const int one = 1;
int nSelect = 2;
switch(nSelect)
{
case 1:
Console.WriteLine("1");
break;
case 2:
Console.WriteLine("2");
break;
case 3:
Console.WriteLine(“3");
goto case 2;
default:
Console.WriteLine(“4");
break;
}


Vòng lặp while

Thực hiện statement khi expression trả về kết quả true

while (expresstion)
statement
int
int ii == 0;
0;
while
while (i
(i << 10)
10) {{
}}

Console.WriteLine(i);
Console.WriteLine(i);
i++;
i++;

01/06/2006

0 1 2 3 4 5 6 7 8 9
Ngôn ngữ C#

25


×