Khái niệm cơ bản C#

Trần Anh Tuấn A

Nội dung
 

Giới thiệu C# Chủ đề nâng cao trong C#
        

Những cơ sở ngôn ngữ C# Lớp và đối tượng Thừa kế và đa hình Cấu trúc Giao diện Array , Indexer , và Collection Chuỗi Xử lý lỗi & exception (biệt lệ) Delegate và Event

Giới thiệu 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ừ khoá

Giới thiệu 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ó đầ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…

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

Giới thiệu C#

C# là ngôn ngữ hướng đối tượng :
  

Đóng gói (encapsulation) Kế thừa (inheritance) Đa hình (polymorphism) 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 v.v…

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

Giới thiệu C#

C# có ít từ khoá :

Những cơ sở ngôn ngữ C#

Các ghi chú : // (1 dòng) , /* (nhiều dòng) */ #region : Từ khoá 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

VD : using System.IO;  Từ đó 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 v.v… Nhập : string sInput ; sInput = System.Console.ReadLine(); (chuyển kiểu : System.Convert.To????(sInput) ) Xuất : System.Console.WriteLine(“KQ = {0}”, sInput);

Ứng dụng dạng console:

Những 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}; foreach : vòng lặp để duyệt tất cả các phần tử của mảng , tập hợp
VD : int[] intarray; intarray = new int[5]; foreach(int i in intarray) Console.WriteLine(i.ToString());

Câu lệnh : if else , switch , for , while , goto

Những cơ sở ngôn ngữ C#

Tạo vùng tên (namespace)

Lớp và đối tượng

Khai báo , tạo dựng và sử dụng lớp

Lớp và đối tượng
Phương thức thiết lập (Constructor)  Phương thức thiết lập sao chép  Phương thức huỷ  Sử dụng using ( hàm huỷ tự đông gọi trong thời gian sớm nhất)

Lớp và đối tượng

Tham chiếu

Trong lớp Time

Sử dụng

Lớp và đối tượng

Đóng gói dữ liệu với Property
 

Lớp người có chuỗi m_sHoten Cài đặt Property HoTen

Sử dụng Property
Nguoi A = new Nguoi(); A.HoTen = “Tran Anh Tuan”; string tentoi = A.HoTen;

Thừa Kế & Đa Hình
 

Thừa kế : “:” Boxing & UnBoxing
 

Đa Hình : “virtual”

Boxing : chuyển đổi kiểu giá trị thành kiểu Object UnBoxing : Trả kết quả một đối tượng về giá trị

Cấu Trúc
Cách dùng : Location loc = new Location(200,300); Console.WriteLine(“KQ = {0}”, loc );

Giao diện

Tạo một giao diện

Mở rông giao diện & Kết hợp giao diện

Giao diện

Cách sử dụng :

Toán tử is : kiểm tra xem đối tượng có được hỗ trợ giao diện hay không (VD doc is IStorable) Toán tử as : Kiểm tra và gán

Array , Indexer , và Collection

Array :

Sử dụng lớp System.Array (sẽ được hỗ trợ rất
nhiều các tính năng khác như :copy , sort , inverse…)

Indexer : tương tự như Property nhưng là lấy theo index

Cách dùng :

Array , Indexer , và Collection

.Net Framework cung cấp một số giao diện chuẩn sau :

Chuỗi

Khai báo : ToString() : chuyển mọi kiểu về string (Object) Ghép chuỗi : “+” (VD : string s = b + “,” +c;) Lấy ký tự thứ i: s[i]; Lấy chiều dài : s.length Chuỗi con : s.Substring(begin,end); Thay thế : s.Replace( chuoi1 , chuoi2 )

     

Chuỗi

Định dạng chuỗi

Các thành viên lớp string
     

Compare() so sánh hai chuỗi Copy() tạo bản sao Insert() chèn chuỗi Split() cắt chuỗi v.v…. Trim(), TrimEnd(),TrimStart() ToUpper() , ToLower() v.v….

Xử lý lỗi & exception (biệt lệ)

 

Exception chứa các thông tin về sự cố bất thường của chương trình Phân biệt bug , error , và exception Chương trình dù đã không còn bug hay error vẫn có thể cho ra các exception ( truy cập , bộ nhớ ) Có thể dùng các đối tượng exception có sẵn , tự tạo exception , hay bắt exception trong exception (trong trường hợp sửa lỗi )

Xử lý lỗi & exception (biệt lệ)

Cấu trúc xử lý lỗi

Xử lý lỗi & exception (biệt lệ)

Đối tượng Exception :

Tạo biệt lệ :

Delegate và Event

 

Delegate ( ủy thác , ủy quyền ) : giúp giải quyết vấn đề muốn thực thi một phương thức nào đó của một đối tượng nào đó nhưng người lập trình có thể chưa rõ lúc thiết kế. Một delegate chứa tham chiếu tới hàm Cách khai báo

Access Modifier delegate [void] DelegateName(…)

Delegate và Event

Event : Ứng với mỗi thao tác người dùng sẽ có một sự kiện phát sinh , và chương trình sẽ phải đáp trả cho mỗi sự kiện này. Khái niệm Publishing và Subcribing
 

Publishing : Một lớp phát sinh sự kiện Subscribing : Các lớp được subscribe sẽ nhận thông báo về sự kiện phát sinh , và thực thi

Event trong C# sẽ được cài đặt bằng delegate. Lớp publish định nghĩa một delegate. Khi một sự kiện phát sinh phương thức của lớp subscribe sẽ được gọi thông qua delegate

Delegate và Event

Bài sau

 

Window Form
Giới thiệu về Window Form Giới thiệu về các control , hộp thoại menu , custom control


  

Tác vụ File
Quản lý thư mục ,tìm kiếm file , folder Di chuyển, sao chép, huỷ các file và folder Đọc và ghi văn bản trong các file

Sign up to vote on this title
UsefulNot useful