1. Trang chủ
  2. » Tất cả

Giáo trình lập trình visual c (nghề công nghệ thông tin trình độ cao đẳng) trường cđ kinh tế kỹ thuật vinatex tp hcm (2018)

20 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Giáo trình lập trình Visual C (nghề công nghệ thông tin trình độ cao đẳng)
Trường học Trường Cao Đẳng Kinh Tế - Kỹ Thuật Vinatex TP. HCM
Chuyên ngành Công nghệ thông tin
Thể loại Giáo trình
Năm xuất bản 2018
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 20
Dung lượng 731,78 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

TẬP ĐOÀN DỆT MAY VIỆT NAM TRƯỜNG CAO ĐẲNG CÔNG NGHỆ TP HCM GIÁO TRÌNH LẬP TRÌNH VISUAL C# Nghề Công nghệ thông tin Trình độ Cao đẳng Ban hành kèm theo Quyết định số /QĐ ngày tháng năm của Trường Cao đ[.]

Trang 1

TẬP ĐOÀN DỆT MAY VIỆT NAM TRƯỜNG CAO ĐẲNG CÔNG NGHỆ TP.HCM

GIÁO TRÌNH

LẬP TRÌNH VISUAL C#

Nghề: Công nghệ thông tin

Trình độ: Cao đẳng

Ban hành kèm theo Quyết định số: /QĐ- ngày ………tháng

năm……

của Trường Cao đẳng Kinh tế - Kỹ Thuật Vinatex TP HCM

TP HỒ CHÍ MINH, NĂM 2018 LƯU HÀNH NỘI BỘ

Trang 2

Chương 1: MICROSOFT.NET 1

I.GIỚI THIỆU NGÔN NGỮ C# 1

II.CÁC THÀNH PHẦN QUAN TRỌNG TRONG C# 1 1 CLR (Common Language Runtime) 1

2 IL (Intermediate Language) 1

3 Thư viện (Assembly) 1

4 Các lớp trong NET 1

5 Tạo ứng dụng NET sử dụng C# 1

6.Tạo và lưu project trên console 1

8.Giao diện ứng dụng 3

Chương 2CĂN BẢN C# 4

I-KIỂU DỮ LIỆU 4

1.Kiểu dữ liệu xây dựng sẵn 4

2.Chọn kiểu dữ liệu 5

3.Chuyển đổi giữa các kiểu dữ liệu 5

II-BIẾN VÀ HẰNG 6

1 Biến 6

2 Hằng 7

3 Kiểu liệt kê 7

4 Kiểu chuỗi ký tự 9

5 Định danh 9

6 Mảng 10

III-BIỂU THỨC 10

IV-KHOẢNG TRẮNG 11

V-Câu lệnh (statement) 11

1 Phân nhánh không có điều kiện 11

2 Phân nhánh có điều kiện 11

3 Câu lệnh lặp 14

VI-Toán tử 19

1.Toán tử gán 19

2 Toán tử toán học 19

3 Toán tử tăng và giảm 19

4 Toán tử quan hệ 20

5 Toán tử logic 21

6 Độ ưu tiên toán tử 21

7 Toán tử ba ngôi 22

VII NAMESPACE 22

VIII CÁC CHỈ DẪN BIÊN DỊCH 23

Chương 3MỘT SỐ ĐIỀU KHIỂN TRONG WINFORM 25

I SỬ DỤNG Microsoft Visual Studio 2010 25

1 Khởi động 25

MỤC LỤC

Trang 3

2 Màn hình giao diện của Windows forms 26

3 Các thao tác với Form 27

II Các control cơ bản 29

1 Label ( ) 29

2 TextBox ( ) 30

3 Button ( ) 30

4 CheckBox ( ) 31

5.Phương thức MessageBox.Show 32

6 Lệnh dừng chương trình 32

7 Event (sự kiện) là gì? 33

8 ListBox ( ) 36

9 ComboBox ( ) 37

10 RadioButton ( ) 38

11 GroupBox ( ) 38

Chương 4XÂY DỰNG LỚP - ĐỐI TƯỢNG 41

I- ĐỊNH NGHĨA LỚP 41

1 Định nghĩa lớp 41

2 Thuộc tính truy cập 43

3 Tham số của phương thức 44

II TẠO ĐỐI TƯỢNG 45

1 Tạo đối tượng 45

2 Bộ khởi dựng 45

3 Khởi tạo biến thành viên 47

4 Từ khóa this 49

II SỬ DỤNG CÁC THÀNH VIÊN STATIC (static member) 50

1 Gọi một phương thức tĩnh 50

2 Sử dụng bộ khởi dựng tĩnh (static constructor) 51

3.Sử dụng bộ khởi dựng cục bộ (private) 52

4 Sử dụng các thuộc tính tĩnh 52

IV HỦY ĐỐI TƯỢNG 53

1 Phương thức Finalize 53

2.Phương thức Dispose 54

3.Phương thức Close 54

V TRUYỀN THAM SỐ 54

1 Truyền tham chiếu 54

2 Truyền tham chiếu với biến chưa khởi tạo 56

VI NẠP CHỒNG PHƯƠNG THỨC 58

VII ĐÓNG GÓI DỮ LIỆU VỚI THUỘC TÍNH 61

1 Truy cập lấy dữ liệu 62

2 Truy cập thiết lập dữ liệu 63

VIII CẤU TRÚC 63

Trang 4

1 Làm việc với kiểu cấu trúc 63

2 Các kiểu cấu trúc phổ biến 63

3 Khai báo kiểu cấu trúc 64

4 Tìm hiểu sự khác nhau giữa lớp và cấu trúc 65

5 Khai báo biến cấu trúc 67

6 Khởi tạo cấu trúc 67

7 Sao chép biến cấu trúc 68

8.Lớp Object 69

Chương 5 SỰ KẾ THỪA VÀ ĐA HÌNH 73

I SỰ KẾ THỪA 73

1 Thực thi kế thừa 73

2 Gọi phương thức khởi dựng của lớp cơ sở 74

3 Điều khiển truy xuất 75

II ĐA HÌNH 76

1 Tạo kiểu đa hình 76

2 Tạo phương thức đa hình 76

3 Từ khóa new và override 78

III LỚP TRỪU TƯỢNG (abstract class) 78

1 Phương thức trừu tượng 78

2 Lớp trừu tượng 79

3 Lớp cô lập (sealed class) 80

IV BOXING và UNBOXING 81

1 Boxing và Unboxing dữ liệu 81

2 Boxing được thực hiện ngầm định 81

3 Unboxing phải được thực hiện tường minh 81

V CÁC LỚP LỒNG NHAU 82

VI GIAO DIỆN 83

Chương 6TOÁN TỬ VÀ CHUYỂN KIỂU 86

I.TOÁN TỬ 86

II QUÁ TẢI TOÁN TỬ 87

III.CHUYỂN KIỂU DO NGƯỜI DÙNG ĐỊNH NGHĨA 89

Chương 7SỰ ỦY NHIỆM, SỰ KIỆN, VÀ QUẢN LÝ LỖI 91

I.SỰ ỦY NHIỆM (delegate) 91

Khai báo và sử dụng delegate 91

II Sự kiện (Event) 92

1 Khai báo sự kiện 92

2 Gán một sự kiện 92

3 Bỏ gán sự kiện 92

4 Tạo một sự kiện 92

III Quản lý lỗi và biệt lệ 94

1 Những lớp biệt lệ của lớp cơ sở 94

2 Những lớp ngoại lệ cơ bản 94

Trang 5

3 Đón bắt biệt lệ 94

4 Thực thi nhiều khối catch 96

Chương 8 CHUỖI, BIỂU THỨC QUY TẮC VÀ TẬP HỢP 98

I SYSTEM.STRING (lớp đối tượng String) 98

1 Tạo một chuỗi 98

2 Tạo chuỗi dùng phương thức ToString của đối tượng 99

3 Thao tác trên chuỗi 99

II BIỂU THỨC QUY TẮC 105

III TẬP HỢP 106

1 Mảng ( Array) 106

2.Mảng đa chiều 110

3 Danh sách mảng (ArrayList) 112

4 Một số kiểu tập hợp khác 115

Trang 6

CHƯƠNG TRÌNH MÔN HỌC

Tên môn học: Lập trình visual C#

Mã môn học: MH 17

Thời gian thực hiện môn học: 75 giờ; (Lý thuyết: 15 giờ; Thực hành, thí

nghiệm, thảo luận, bài tập: 55 giờ; Kiểm tra: 5 giờ)

I Vị trí, tính chất của môn học:

- Vị trí: học sau môn Kỹ thuật lập trình và các môn học cơ sở bắt buộc

- Tính chất: môn học chuyên môn bắt buộc

II Mục tiêu môn học:

- Về kiến thức:

+ Hiểu được các kiến thức về nền tảng Microsoft NET

+ Có kiến thức về lập trình hướng đối tượng bằng C#

+ Thao tác với các đối tượng cơ bản trên Net (Visual C#)

- Về kỹ năng:

+ Có kỹ năng sử dụng các Control cơ bản

+ Có kỹ năng về giao diện trong C#

+ Có kỹ năng về lập trình hướng đối tượng trên C#

+ Có kỹ năng sử dụng các lớp cơ sở của NET

- Về năng lực tự chủ và trách nhiệm:

+ Nghiêm túc, thực hiện đầy đủ các bài tập

+ Có ý thức tích cực tự nghiên cứu các nội dung bài vở trước khi đến lớp

III Nội dung môn học:

Trang 7

-1-

Chương 1: MICROSOFT.NET Mục tiêu:

- Trình bày được các thành phần trong C#

- Thực hiện được các thao tác cơ bản trong Visual C#

Nội dung chương:

I.GIỚI THIỆU NGÔN NGỮ C#

Microsoft Visual C# là một ngôn ngữ mạnh mẽ nhưng đơn giản chủ yếu hướng đến các nhà phát triển xây dựng ứng dụng trên nền tảng NET của Microsoft C# kế thừa những đặc trưng tốt nhất của ngôn ngữ C++ và Microsoft Visual Basic

Chương trình được biên dịch theo hai bước:

− Biên dịch mã nguồn thành IL (Intermediate Language)

− Dùng CLR để biên dịch IL thành mã máy theo từng nền tảng thích hợp

II.CÁC THÀNH PHẦN QUAN TRỌNG TRONG C#

1 CLR (Common Language Runtime)

CLR (Common Language Runtime-CLR) là môi trường thực hiện việc thực thi ứng dụng

2 IL (Intermediate Language)

Mã C# sẽ luôn được dịch sang IL trước khi nó được thực thi Sau đây là những đặc tính chính của IL:

·Hướng đối tượng và dùng giao tiếp

·Sự tách biệt giữa kiểu giá trị và kiểu tham chiếu

·Định nghĩa kiểu mạnh Sử dụng các thuộc tính

·Quản lý lỗi thông qua các ngoại lệ

3 Thư viện (Assembly)

Assembly là một tập tin chứa mã đã được biên dịch sang NET Nó có thể chứa trong nhiều tập tin Các assembly chứa các siêu dữ liệu (metadata) dùng để mô

tả các kiểu và phương thức

4 Các lớp trong NET

Việc sử dụng các thư viện lớp cơ sở sẵn cho phép thao tác rất nhiều các tác

vụ sẵn có trong Windows Chúng ta có thể tạo các lớp của mình từ các lớp có sẵn thông qua sự kế thừa

5 Tạo ứng dụng NET sử dụng C#

Các ứng dụng có thể viết trên C#:

·Ứng dụng ASP.NET

·Ứng dụng WinForm

·Các dịch vụ dựa trên Windows

6.Tạo và lưu project trên console

Bước 1: Khởi động Visual Studio 2010

Start | All Programs | Microsoft Visual Studio 2010 | Microsoft Visual Studio 2010

Trang 8

-2-

Bước 2: Vào menu File | New | Project

Bước 3: Khai báo

* Mặc định: Visual Studio 2010 (Visual Studio NET) sẽ tạo ra tập tin

Program.cs chứa một namespace tên ChaoMung và trong namespace này chứa một

class tên Program

Bước 4: trong phương thức Main, gõ đoạn mã lệnh sau

* Ví dụ:

// Xuat ra man hinh chuoi thong bao 'Chao mung ban den voi C# 2010 '

System.Console.WriteLine("Chao mung ban den voi C# 2010 ") ;

System.Console.ReadLine() ;

Bước 5: Để chạy chương trình, nhấn F5

Trang 9

-3-

8.Giao diện ứng dụng

Form

Cửa sổ project

Cửa sổ thuộc tính Các điều khiển

Trang 10

-4-

Chương 2 CĂN BẢN C#

Mục tiêu:

- Trình bày được các cấu trúc trong C#

- Viết được các câu lệnh đơn giản trong C#

- Sử dụng các câu lệnh, toán tử, biểu thức, biến và hằng trong C# để viết các chương trình đơn giản

Nội dung chương:

Chương này sẽ thảo luận về hệ thống kiểu dữ liệu, phân biệt giữa kiểu dữ liệu xây dựng sẵn (như int, bool, string…) với kiểu dữ liệu do người dùng định nghĩa (lớp hay cấu trúc do người lập trình tạo ra ) Một số cơ bản khác về lập trình như tạo

và sử dụng biến dữ liệu hay hằng cũng được đề cập cùng với cấu trúc liệt kê, chuỗi, định danh, biểu thức và cậu lệnh

Hướng dẫn và minh họa việc sử dụng lệnh phân nhánh if, switch, while, do while, for, và foreach Và các toán tử như phép gán, phép toán logic, phép toán

quan hệ, và toán học

I-KIỂU DỮ LIỆU

C# chia thành hai tập hợp kiểu dữ liệu chính: Kiểu xây dựng sẵn (built- in) mà ngôn ngữ cung cấp cho người lập trình và kiểu được người dùng định nghĩa (user-defined) do người lập trình tạo ra

C# phân tập hợp kiểu dữ liệu này thành hai loại: Kiểu dữ liệu giá trị (value) và kiểu dữ liệu tham chiếu (reference)

− Tất cả các kiểu dữ liệu xây dựng sẵn là kiểu dữ liệu giá trị ngoại trừ các đối tượng và chuỗi

− Tất cả các kiểu do người dùng định nghĩa ngoại trừ kiểu cấu trúc đều là kiểu dữ liệu tham chiếu

1.Kiểu dữ liệu xây dựng sẵn

Bảng sau sẽ mô tả một số các kiểu dữ liệu được xây dựng sẵn

Kiểu C# Số byte Kiểu NET Mô tả

byte 1 Byte Số nguyên dương không dấu từ 0-255

char 2 Char Ký tự Unicode

bool 1 Boolean Giá trị logic true/ false

sbyte 1 Sbyte Số nguyên có dấu ( từ -128 đến 127)

short 2 Int16 Số nguyên có dấu giá trị từ -32768 đến

32767

ushort 2 Uịnt16 Số nguyên không dấu 0 – 65.535

int 4 Int32 Số nguyên có dấu –2.147.483.647 và 2.147.483.647 uint 4 Uint32 Số nguyên không dấu 0 – 4.294.967.295

Trang 11

-5-

float 4 Single Kiểu dấu chấm động, giá trị xấp xỉ với 7 chữ số có

nghĩa

double 8 Double Kiểu dấu chấm động có độ chính xác gấp đôi, giá trị

xấp xỉ với 15,16 chữ số có nghĩa

decimal 8 Decimal Có độ chính xác đến 28 con số và giá trị thập phân,

được dùng trong tính toán tài chính, kiểu này đòi hỏi phải có hậu tố “m” hay “M” theo sau giá trị

2 Chọn kiểu dữ liệu

− Kiểu float, double, và decimal đưa ra nhiều mức độ khác nhau về kích thước cũng như độ chính xác.Với thao tác trên các số nhỏ thì kiểu float là thích hợp nhất Tuy nhiên lưu ý rằng trình biên dịch luôn luôn hiểu bất cứ một số thực nào cũng là

một số kiểu double trừ khi chúng ta khai báo rõ ràng

− Để gán một số kiểu float thì số phải có ký tự f theo sau

float x = 24f;

− Để gán một số kiểu Decimal thì số phải có ký tự m theo sau

Decimal x = 24m;

− Kiểu dữ liệu ký tự thể hiện các ký tự Unicode, bao gồm các ký tự đơn giản, ký tự

theo mã Unicode và các ký tự thoát khác được bao trong những dấu nháy đơn

Ký tự thoát là những ký tự đặc biệt bao gồm hai ký tự liên tiếp trong đó ký tự đầu tiên là dấu chéo ‘\’ Ví dụ, \t là dấu tab Bảng trình bày các ký tự đặc biệt

Ký tự Ý nghĩa

\f Sang trang form feed

3 Chuyển đổi giữa các kiểu dữ liệu

Những đối tượng của một kiểu dữ liệu này có thể được chuyển sang những đối tượng của một kiểu dữ liệu khác một cách tường minh hay ngầm định

Việc chuyển đổi giá trị ngầm định được thực hiện một cách tự động và đảm bảo

là không mất thông tin Ví dụ, chúng ta có thể gán ngầm định một số kiểu short (2

Trang 12

-6-

byte) vào một số kiểu int (4 byte) một cách ngầm định Sau khi gán hoàn toàn không mất dữ liệu vì bất cứ giá trị nào của short cũng thuộc về int

short x = 10;

int y = x; // chuyển đổi ngầm định

Tuy nhiên, nếu chúng ta thực hiện chuyển đổi ngược lại, chắc chắn chúng ta sẽ

bị mất thông tin Nếu giá trị của số nguyên đó lớn hơn 32.767 thì nó sẽ bị cắt khi chuyển đổi

short x;

int y = 100;

x = y; // Không biên dịch, lỗi !!!

Để không bị lỗi chúng ta phải dùng lệnh gán tường minh, đoạn mã trên được

viết lại như sau:

short x;

int y = 500;

x = (short) y; //Ép kiểu tường minh

II-BIẾN VÀ HẰNG

1 Biến

Một biến là một vùng lưu trữ giá trị với một kiểu dữ liệu Biến có thể được gán giá trị và cũng có thể thay đổi giá trị khi thực hiện các lệnh trong chương trình

Để tạo một biến chúng ta phải khai báo kiểu của biến và gán cho biến một tên duy nhất Biến có thể được khởi tạo giá trị ngay khi được khai báo, hay nó cũng có thể được gán một giá trị mới vào bất cứ lúc nào trong chương trình

Ví dụ 3.1: Khởi tạo và gán giá trị đến một biến

Kết quả:

 Biến phải được gán giá trị trước khi được sử dụng v í d ụ :

Trang 13

-7-

Khi biên dịch đoạn chương trình trên thì trình biên dịch C# sẽ thông báo một

lỗi sau: Use of unassigned local variable ….(sử dụng biến chưa gán giá trị)

2 Hằng

− Hằng có giá trị không thay đổi trong suốt chương trình

− Hằng được phân thành ba loại: giá trị hằng (literal), tên hằng (symbolic constants), kiểu liệu kê (enumerations)

• Giá trị hằng: ta có một câu lệnh gán như sau:

x = 100; //Giá trị 100 là giá trị hằng

• Tên hằng: gán một tên cho một giá trị hằng dùng từ khóa const và cú pháp

sau:

<const> <kiểu dữ liệu > <tên hằng> = <giá trị>;

Ví dụ:

const int DoSoi = 100;

Một tên hằng phải được khởi tạo khi khai báo, và chỉ khởi tạo duy nhất một lần trong suốt chương trình và không được thay đổi

Vi dụ: Sử dụng hằng tạo ra hai tên hằng chứa giá trị nguyên: DoSoi và

DoDong

Kết quả:

3 Kiểu liệt kê

Kiểu liệt kê là tập hợp các tên hằng có giá trị không thay đổi (thường được gọi

là danh sách liệt kê)

Trong ví dụ trên, có hai hằng có quan hệ với nhau:

Trang 14

-8-

const int DoDong = 0;

const int DoSoi = 100;

Do mục đích mở rộng ta mong muốn thêm một số hằng số khác vào danh sách trên, như các hằng sau:

const int DoNong = 60;

const int DoAm = 40;

const int DoNguoi = 20;

Các tên hằng trên điều có ý nghĩa quan hệ với nhau, cùng nói về nhiệt độ của nước, khi khai báo từng hằng trên có vẻ cồng kềnh và không được liên kết chặt chẽ cho lắm Thay vào đó C# cung cấp kiểu liệt kê để giải quyết vấn đề trên:

enum NhietDoNuoc

{

DoDong = 0,

DoNguoi = 20,

DoAm = 40,

DoNong = 60,

DoSoi = 100,

}

Mỗi kiểu liệt kê có một kiểu dữ liệu cơ sở, kiểu dữ liệu có thể là bất cứ kiểu dữ liệu nguyên nào như int, short, long Để khai báo một kiểu liệt kê ta thực hiện theo cú pháp sau:

enum <tên liệt kê> [:kiểu cơ sở] {danh sách };

• Một kiểu liệt kê bắt đầu với từ khóa enum, tiếp sau là một định danh cho kiểu liệt

kê:

enum NhietDoNuoc

• [kiểu cơ sở] chính là kiểu khai báo cho các hằng trong kiểu liệt kê

• {danh sách }: Mỗi hằng trong kiểu liệt kê tương ứng với một giá trị số, và mỗi

hằng phân cách nhau dấu phẩy

Ví dụ: Sử dụng kiểu liệt kê để đơn giản chương trình

Trang 15

-9-

− Chú ý: Nếu chúng ta không khởi tạo cho các thành phần này thì chúng sẽ nhận

các giá trị tiếp theo với thành phần đầu tiên là 0

Ta xem thử khai báo sau:

enum dayso {

ThuNhat, ThuHai, ThuBa = 10, ThuTu

}

Khi đó giá trị của ThuNhat là 0, giá trị của ThuHai là 1, giá trị của ThuBa là 10

và giá trị của ThuTu là 11

− Kiểu liệt kê bắt buộc phải thực hiện phép chuyển đổi tường minh khi gán cho biến :

int x = (int) dayso.ThuNhat;

4 Kiểu chuỗi ký tự

Kiểu dữ liệu chuỗi lưu giữ một mảng những ký tự

− Để khai báo một chuỗi chúng ta sử dụng từ khoá string:

string chuoi;

− Để khởi tạo một chuỗi ký tự với giá trị hằng:

string chuoi = “Xin chao”

5 Định danh

Định danh là tên mà người lập trình chỉ định cho các kiểu dữ liệu, các phương thức, biến, hằng, hay đối tượng

Một định danh phải bắt đầu với một ký tự chữ cái hay dấu gạch dưới, các ký tự còn lại phải là ký tự chữ cái, chữ số, dấu gạch dưới

Theo qui ước đặt tên của Microsoft thì đề nghị sử dụng cú pháp:

− Đặt tên biến: Bắt đầu bằng ký tự thường

Ngày đăng: 27/02/2023, 19:08

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm