Bài giảng Lập trình hướng đối tượng 1 - Ngôn ngữ C# - Thái Kim Phụng

Tài liệu Bài giảng Lập trình hướng đối tượng 1 - Ngôn ngữ C# - Thái Kim Phụng: LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG 1 Trường ĐH Kinh Tế Tp.HCMKhoa Tin Học Quản Lý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ượngGiớ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ảnHiện đạiHướng đối tượngMạnh mẽ & Mềm dẻoÍt từ khoá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 classGiố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ồnGiớ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ạ...

ppt29 trang | Chia sẻ: putihuynh11 | Lượt xem: 488 | Lượt tải: 1download
Bạn đang xem trước 20 trang mẫu tài liệu Bài giảng Lập trình hướng đối tượng 1 - Ngôn ngữ C# - Thái Kim Phụng, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG 1 Trường ĐH Kinh Tế Tp.HCMKhoa Tin Học Quản Lý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ượngGiớ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ảnHiện đạiHướng đối tượngMạnh mẽ & Mềm dẻoÍt từ khoá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 classGiố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ồnGiớ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ácGiới thiệu ngôn ngữ C# C# có ít từ khoá: 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  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ườngCó các kiểu:Dựng sẵn: byte , char , sbyte , int , float , doubleHằ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, foreachVí 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 soá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).TypeSize (bytes).NET typeDescriptionbyte1ByteUnsigned (trị 0-255).char2CharUnicode ký tự.bool1BooleanTrue or false.sbyte1SbyteSigned (trị -128 to 127).short2Int16Signed (short) (trị -32,768 to 32,767).ushort2UInt16Unsigned (short) (trị 0 to 65,535).int4Int32Số nguyên có dấu (signed). Trị từ -2,147,483,648 đến 2,147,483,647.uint4UInt32Số nguyên không dấu (Unsigned). Trị từ 0 đến 4,294,967,295.float4Single3.4 x 1038 với 7 số có ý nghĩa.double8Double1.8 x 10308 với 15-16 số có ý nghĩa.Kiểu dữ liệu (Type)decimal16Decimal Lên đến 28 số và vị trí dấu chấm thập phân. Thường dùng trong tính toán tài chính. Yêu cầu có hậu tố (suffix) là "m" hoặc "M.".long8Int64 Số nguyên có dấu, trị từ -9,223,372,036,854,775,808 đến 9,223,372,036,854,775,807.ulong8UInt64 Số nguyên không dấu, trị từ 0 đến 0xffffffffffffffff.objectObject 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.stringString 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.Chuyển đổi kiểu dữ liệuCó 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 soá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; //saiHằ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ướcVí dụ: enum SomeValues { First, Second, Third = 20, Fourth };Phạm vi hoạt động của biếnBiểu thức và khoảng trắngBiể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ánhifelse.switch.Các câu lệnh lặpwhiledowhileforCác câu lệnh nhảy: continue, break, return, goto.Câu lệnh ifelseCú pháp:if (condition-expression) statement1[else statement2]if (x > y) WriteLine(“x > y”);if (x > y) WriteLine(“x > y”);else WriteLine(“x <= y”);Câu lệnh switchCú 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;}01/06/200625Ngôn ngữ C#Vòng lặp whileThực hiện statement khi expression trả về kết quả truewhile (expresstion) statementint i = 0;while (i < 10) { Console.WriteLine(i); i++;}0 1 2 3 4 5 6 7 8 901/06/200626Ngôn ngữ C#Vòng lặp dowhileint i = 0;do{ Console.WriteLine(i); i++;}while (i < 10)0 1 2 3 4 5 6 7 8 9Tương tự while, nhưng thực hiện ít nhất một lần. do statement while (expresstion);Vòng lặp forBiến trong khối for chỉ có ý nghĩa trong phạm vi của khối này.for([initializers];[condition];[iterators]) statementfor (int i = 0; i < 10; i++) { Console.WriteLine(i); }0 1 2 3 4 5 6 7 8 9for (int i = 0; i < 10; i++) Console.WriteLine(i);Console.WriteLine(i);//ErrorLệnh gotoCho phép nhảy trực tiếp đến một câu lệnh được đánh dấu bởi một nhản (Label).Không thể nhảy vào một khối đoạn mã chẳng hạn vòng lặp for.Không thể nhảy ra khỏi một lớp hoặc một khối fianllyif (number % 2 == 0) goto Even;Console.WriteLine("odd");goto End;Even:Console.WriteLine("even");End:;Lệnh break và continuebreak: nhảy ra khỏi vòng lặp.continue: nhảy đến lần lặp tiếp theo.int i = 0;while (true) { Console.WriteLine(i); i++; if (i < 10) continue; else break;}

Các file đính kèm theo tài liệu này:

  • pptbai_giang_lap_trinh_huong_doi_tuong_1_ch01_b_8156_1987361.ppt