1 / 11

BUỔI 5: Chương 2 Lớp Đối Tượng - CLASS -

BUỔI 5: Chương 2 Lớp Đối Tượng - CLASS -. Môn : Lập trình hướng đối tượng Trình bày : TRẦN ĐỨC TÂM. Kiểu dữ liệu. Có 2 loại kiểu dữ liệu Kiểu tham trị Kiểu tham chiếu. Kiểu tham trị (value type). Biến kiểu tham trị sẽ lưu giá trị trực tiếp.

barr
Download Presentation

BUỔI 5: Chương 2 Lớp Đối Tượng - CLASS -

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BUỔI 5: Chương2LớpĐốiTượng- CLASS - Môn: Lậptrìnhhướngđốitượng Trìnhbày: TRẦN ĐỨC TÂM

  2. Kiểu dữ liệu • Có 2 loại kiểu dữ liệu • Kiểu tham trị • Kiểu tham chiếu

  3. Kiểu tham trị (value type) • Biến kiểu tham trị sẽ lưu giá trị trực tiếp. • Kiểu tham trị gồm: kiểu số nguyên, kiểu số thực, kiểu kí tự, kiểu boolean Stack Stack Heap Heap int x = 10 copy giá trị 10 10 x x int y = x 10 y Lệnh 2 Lệnh 1

  4. Kiểu tham chiếu (reference type) • Biến kiểu tham chiếu sẽ lưu địa chỉ trỏ đến ô nhớ chứa giá trị ấy • Kiểu tham chiếu gồm: kiểu xâu kí tự, kiểu Object, các lớp đối tượng do ta định nghĩa Stack Stack Heap Heap ClassA obj1 = new ClassA(); copy địa chỉ obj1 obj1 ClassA obj2 = obj1; obj2 Lệnh 2 Lệnh 1

  5. Tham số hình thức và tham số thực • Tham số hình thức (Formal Parameter) là biến cục bộ được định nghĩa ở danh sách các tham số của phương thức • Khi phương thức được gọi, biểu thức hay biến dùng để truyền vào phương thức được gọi là tham số thực (Actual Parameter) Tham số hình thức classSimpleClass { publicvoid PrintSum(int x, int y) { int Sum = x + y; Console.WriteLine(“Ket qua: {0} + {1} = {2}", x, y, Sum); } publicvoid AnotherMethod() { int a = 10; PrintSum(5, a); } } Tham số thực

  6. Các cách truyền tham số • Có 2 loại truyền tham số: • Truyền tham số bắt buộc (mandatory parameter) • Truyền tham số tùy chọn (optional parameter) • Truyền tham số bắt buộc có 4 kiểu: • Tham trị (value parameter) • Tham chiếu (reference parameter) • Tham số ra (output parameter) • Tham số mảng (parameter arrays) • Truyền tham số tùy chọn có 1 kiểu: • Tham trị (value parameter) Optional paramter chỉ có trong phiên bản C# 4.0 trở lên

  7. Tham trị (value parameter) classClassA { publicint V1 = 20; publicint V2 = 12; } classClassB { publicint F; publicvoid MyMethod(ClassA f1, int f2) { f1.V1 = f1.V1 + 5; f2 = f2 + 5; } } classProgram { staticvoid Main() { ClassBb1 = newClassB(); ClassA a1 = newClassA(); intn = 10; b1.MyMethod(a1, n); } } • Khi truyền tham trị, dữ liệu sẽ được truyền vào phương thức bằng cách gán giá trị của tham số thực vào tham số hình thức • Tham trị không bắt buộc phải là biến. Nó có thể là biểu thức • Tham số thực phải được gán giá trị trước khi truyền vào phương thức

  8. Tham chiếu (reference parameter) • Khi truyền tham chiếu, tham số thực và tham số hình thức là 2 tên gọi khác cùng chỉ 1 ô nhớ • Mọi thay đổi trên tham số hình thức sẽ ảnh hưởng tham số thực • Tham chiếu bắt buộc phải là biến • Tham chiếu phải được gián giá trị trước khi truyền vào phương thức classClassA { publicint V1 = 20; publicint V2 = 12; } classClassB { publicint F; publicvoid MyMethod(refClassA f1,refint f2) { f1.V1 = f1.V1 + 5; f2 = f2 + 5; } } classProgram { staticvoid Main() { ClassBb1 = newClassB(); ClassA a1 = newClassA(); intn = 10; b1.MyMethod(ref a1,refn); } }

  9. Tham số ra (output parameter) classClassA { publicint V1 = 20; publicint V2 = 12; } classClassB { publicint F; publicvoidMyMethod(outClassA f1,outint f2) { f1 = newClassA(); f1.V1 = f1.V1 + 5; f2 = f2 + 5; } } classProgram { staticvoid Main() { ClassBb1 = newClassB(); ClassA a1 ; int n; b1.MyMethod(out a1,out n); } } • Khi truyền tham số ra, tham số thực và tham số hình thức là 2 tên gọi khác cùng chỉ 1 ô nhớ • Mọi thay đổi trên tham số hình thức sẽ ảnh hưởng tham số thực • Tham số ra bắt buộc phải là biến • Tham số ra không cần phải được gián giá trị trước khi truyền vào phương thức • Tham số hình thức phải được gán giá trị trước khi kết thúc phương thức

  10. Overloading Method • Overloading method: quá tải hàm, chồng hàm • Có thể khai báo tên hàm tên giống nhau nhưng danh sách tham số khác nhau • Khi gọi hàm quá tải, hàm có tham số phù hợp nhất sẽ được thực thi

  11. Bài tập về nhà • Đọc và tóm tắt phần The Power of Encapsulation quyển [3]

More Related