SlideShare a Scribd company logo
1 of 14
Download to read offline
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM
          KHOA CÔNG NGHỆ THÔNG TIN
          BỘ MÔN CÔNG NGHỆ PHẦN MỀM
          HỆ TẠI CHỨC
          MÔN: LẬP TRÌNH ỨNG DỤNG QUẢN LÝ 02
          GVLT: ThS. BÙI TẤN LỘC




                 HƯỚNG DẪN THỰC HÀNH

                        TUẦN 01
          LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Người soạn:

     Nguyễn Đức Huy
     Ngô Ngọc Đăng Khoa
     Nguyễn Lê Nguyên Ngữ
     Hồ Tuấn Thanh




              TP.HCM, ngày 24 tháng 02 năm 2011
htthanh@fit.hcmus.edu.vn

                                                        MỤC LỤC
1     Mục tiêu ....................................................................................................................... 3
2     Nội dung ...................................................................................................................... 3
    2.1    Ví dụ ....................................................................................................................... 3
    2.2    Bài làm ................................................................................................................... 3
      2.2.1      Thiết kế ............................................................................................................ 3
      2.2.2      Cài đặt ............................................................................................................. 6
          2.2.2.1 Tạo project ................................................................................................... 6
          2.2.2.2 Cài đặt lớp .................................................................................................... 8
          2.2.2.3 Sử dụng lớp Diem ...................................................................................... 11
3     Bài tập ........................................................................................................................ 14




                                                                                                                            Trang 2
htthanh@fit.hcmus.edu.vn

1 Mục tiêu
  -   Ôn tập về phương pháp lập trình hướng đối tượng, áp dụng cho ngôn ngữ VB.NET


2 Nội dung

2.1 Ví dụ
  -   Thiết kế lớp điểm trong mặt phẳng Oxy và cài đặt minh họa bằng ngôn ngữ
      VB.NET

2.2 Bài làm
2.2.1 Thiết kế
  -   Khi thiết kế một lớp (lớp Diem) ta quan tâm đến 2 thành phần:
  -   Thành phần dữ liệu.
  -   Các phương thức của lớp.




  -   Các thành phần dữ liệu có trong lớp Diem.




  -   Các loại phương thức thường có trong một lớp.




                                                                            Trang 3
htthanh@fit.hcmus.edu.vn

  -   Các phương thức khởi tạo lớp Diem bao gồm các phương thức sau:




  -   Đối với mỗi phương thức, ta sẽ xác định tham số truyền vào cũng như kết quả trả
      ra của nó.
  -   Chẳng hạn, với phương thức khởi tạo đầy đủ tham số:
          1. Tham số (truyền vào): 2 giá trị hoành độ (x) và tung độ (y).
          2. Trả về: phương thức này không trả về giá trị nào (void).




  -   Các phương thức cung cấp thông tin bao gồm:




  -   Chẳng hạn, với phương thức cung cấp thong tin tung độ (y):
        1. Tham số: không có.
        2. Trả về: tung độ.




  -   Các phương thức cập nhật thông tin:




                                                                              Trang 4
htthanh@fit.hcmus.edu.vn

  -   Chẳng hạn, với phương thức dịch chuyển điểm qua trái 1 đơn vị:
        1. Tham số: không có. Vì ta biết rõ là dịch trái 1 đơn vị với điểm đang xét.
        2. Trả về: không có. Thay đổi trực tiếp trên hoành độ của điểm đang xét.




  -   Các phương thức xử lý tính toán trong lớp Diem bao gồm:




  -   Xét phương thức tính khoảng cách giữa 2 điểm, ta thấy:
         1. Tham số: điểm thứ hai cần tính khoảng cách tới. Điểm thứ nhất chính là
            điểm gọi thực hiện phương thức này.
         2. Trả về: giá trị khoảng cách.




  -   Các phương thức kiểm tra cho lớp Diem:




  -   Xét phương thức kiểm tra điểm có thuộc phần tư thứ II hay không?
         1. Tham số: không có
         2. Trả về: cho biết có thuộc phần tư thứ II (giá trị 1) hay không thuộc phần tư
            thứ II (giá trị 0). Ở đây, ta chọn kiểu int để biểu diễn.




                                                                                Trang 5
htthanh@fit.hcmus.edu.vn

2.2.2 Cài đặt

2.2.2.1     Tạo project
  -   Phần này sẽ minh họa trên Visual Studio 2008, đối với Visual Studio 2005 hay
      2010 cũng hoàn toàn tương tự. Ngôn ngữ lập trình ở đây ta sử dụng là VB.Net.
  -   Mở Visual Studio lên.
  -   Tạo project:




  -   Tạo lớp Diem: Click phải lên project (đã tạo ở trên), trong cửa sổ Solution
      Explorer và Add – New Item. Bên trái chọn Code; và bên phải chọn Class




                                                                                Trang 6
htthanh@fit.hcmus.edu.vn




                           Trang 7
htthanh@fit.hcmus.edu.vn




2.2.2.2     Cài đặt lớp
  -   Khai báo hai thành phần dữ liệu _x và _y




  -   Khai báo và viết code xử lý cho phương thức khởi tạo mặc định (không tham số).
      Ta lưu ý, với phương thức khởi tạo có tên là New. Đây là tên bắt buộc, không thể
      thay đổi. Đối với phương thức khởi tạo mặc định thì không có tham số.




                                                                               Trang 8
htthanh@fit.hcmus.edu.vn




  -   Bây giờ, ta khai báo và viết code xử lý cho phương thức khởi tạo có đầy đủ tham
      số (2 tham số). Cũng giống như trên phương thức khởi tạo phải có tên là New,
      nhưng ở đây ta có 2 tham số là hoành độ x và tung độ y.




  -   Khai báo và viết code xử lý cho phương thức nhập thông tin một điểm
        1. Để xuất thông tin ra màn hình, ta dùng phương thức Console.Write hoặc
            Console.WriteLine
        2. Để đọc thông tin người dùng nhập từ bàn phím, ta dùng phương thức
            Console.ReadLine




  -   Khai báo và viết code xử lý cho phương thức xuất thông tin lớp Diem

                                                                              Trang 9
htthanh@fit.hcmus.edu.vn

         1. {0} và {1} ở đây có nghĩa là, khi xuất ra màn hình, giá trị tham số ở vị trí 0
            (giá trị x) và tham số ở vị trí 1 (giá trị y) sẽ được sử dụng.




  -   Khai báo và viết code xử lý phương thức cung cấp thông tin hoành độ và cập nhật
      thông tin hoành độ.
         1. Trong VB.Net, ngoài thành phần dữ liệu và phương thức, ta còn có một loại
             là Property. Property bản chất là bản gộp của hai phương thức cung cấp
             thông tin và cập nhật thông tin. Lưu ý, thay vì sử dụng từ khóa Sub hay
             Function, ở đây ta sử dụng từ khóa Property. Một property gồm 2 thành
             phần:
                  Get: đế cung cấp thông tin, hay nói cách khác là return giá trị về.
                  Set: để cập nhật thông tin, hay nói cách khác là gán giá trị cho một
                    thành phần dữ liệu. Ở đây value là một biến đặc biệt, đã được khai
                    báo sẵn. Chẳng hạn khi ta viết diemO.X = 10 thì value nhận giá trị
                    10 và câu lệnh này gán giá trị 10 cho thuộc tính _x




  -   Khai báo và viết code xử lý cho phương thức dịch trái:




  -   Khai báo và viết code xử lý cho phương thức tính khoảng cách hai điểm.
        1. Ở đây, phương thức này cần có thêm tham số là điểm thứ 2 cần tính khoảng
            cách đến. Giá trị trả về là khoảng cách (ta chọn kiểu Double). Lưu ý ở đây
            ta dùng từ khóa Function thay vì Sub, vì phương thức này có trả về giá trị.




                                                                                Trang 10
htthanh@fit.hcmus.edu.vn




  -   Khai báo và viết code xử lý cho phương thức kiểm tra một điểm có thuộc góc phần
      tư thứ I hay không




  -   Trên đây, ta đã điểm qua cài đặt cơ bản của lớp Diem trong ngôn ngữ VB.Net. Đối
      với những phương thức khác, ta sẽ cài đặt tương tự.

2.2.2.3      Sử dụng lớp Diem
  -   Sau khi đã thiết kế và cài đặt lớp Diem, đến lúc ta thử sử dụng chúng. Sau đây sẽ
      là một yêu cầu nhỏ gồm 9 câu:
          1. Khai báo điểm O với thông tin mặc định
                 Sử dụng phương thức khởi tạo mặc định




          2. Khai báo 2 điểm A, B với thông tin tọa độ là (3,0) và (0,4)
                Sử dụng phương thức khởi tạo đầy đủ thông tin.




          3. Khai báo điểm D với thông tin lấy từ điểm B
                Sử dụng phương thức khởi tạo từ một điểm cho trước.




                                                                               Trang 11
htthanh@fit.hcmus.edu.vn




        4. Khai báo điểm E và yêu cầu nhập thông tin từ bàn phím
              Sử dụng phương thức khởi tạo mặc định và gọi phương thức nhập
                 của lớp điểm.
              Hãy để ý cách gọi một phương thức. <biến thuộc lớp chứa phương
                 thức đó><dấu chấm><tên phương thức>(các tham số cách nhau
                 dấu phẩy).




        5. Tính khoảng cách từ điểm B đến điểm C và xuất ra màn hình.
               Sử dụng phương thức tính khoảng cách 2 điểm.
               Hãy để ý cách nhận giá trị trả về của một phương thức. <biến có
                 kiểu tương ứng với kiểu trả về><dấu bằng><lời gọi hàm>




        6. Xuất thông tin điểm E ra màn hình
              Sử dụng phương thức xuất.




        7. Kiểm tra xem điểm E có thuộc góc phần tư thứ I không và xuất ra màn
           hình.
               Sử dụng phương thức kiểm tra điểm thuộc góc phần tư thứ nhất.
               Tùy vào giá trị trả về của phương thức mà xuất ra màn hình chuỗi
                 tương ứng.



                                                                          Trang 12
htthanh@fit.hcmus.edu.vn




         8. Sử dụng property để lấy giá trị x của điểm E và xuất ra màn hình.




         9. Sử dụng property để cập nhật giá trị x của điểm E.




  -   Sau đây là mã nguồn hoàn chỉnh của hàm main.




                                                                                Trang 13
htthanh@fit.hcmus.edu.vn




3 Bài tập
        1. Hoàn thành hết các phương thức còn lại của lớp Diem.
        2. Thiết kế, cài đặt và minh họa sử dụng lớp TamGiac trong mặt phẳng Oxy.
        3. Thiết kế, cài đặt và minh họa sử dụng lớp DuongTron trong mặt phẳng
           Oxy.




                                                                         Trang 14

More Related Content

What's hot

Giáo trình vb.net
Giáo trình vb.netGiáo trình vb.net
Giáo trình vb.net
Hung Pham
 
Ky thuat l.trinh_java
Ky thuat l.trinh_javaKy thuat l.trinh_java
Ky thuat l.trinh_java
Lam Man
 
Chuong 6 rational rose slide
Chuong 6 rational rose slideChuong 6 rational rose slide
Chuong 6 rational rose slide
iamtranxuanman
 
Cac giai phap_lap_trinh_c___final_[bookbooming.com]
Cac giai phap_lap_trinh_c___final_[bookbooming.com]Cac giai phap_lap_trinh_c___final_[bookbooming.com]
Cac giai phap_lap_trinh_c___final_[bookbooming.com]
bookbooming1
 
Lập trình C# 2008 cơ bản_Nhất Nghệ
Lập trình C# 2008 cơ bản_Nhất NghệLập trình C# 2008 cơ bản_Nhất Nghệ
Lập trình C# 2008 cơ bản_Nhất Nghệ
Trần Thiên Đại
 

What's hot (20)

Bai02 java introduction
Bai02 java introductionBai02 java introduction
Bai02 java introduction
 
Bai11 ooad bieu_dolop
Bai11 ooad bieu_dolopBai11 ooad bieu_dolop
Bai11 ooad bieu_dolop
 
Bai06 mot sokythuattrongkethua
Bai06 mot sokythuattrongkethuaBai06 mot sokythuattrongkethua
Bai06 mot sokythuattrongkethua
 
Oop unit 13 tổng quan về uml
Oop unit 13 tổng quan về umlOop unit 13 tổng quan về uml
Oop unit 13 tổng quan về uml
 
Lập Trình Hướng Đối Tượng trong Java ( Vietnamese )
Lập Trình Hướng Đối Tượng trong Java ( Vietnamese )Lập Trình Hướng Đối Tượng trong Java ( Vietnamese )
Lập Trình Hướng Đối Tượng trong Java ( Vietnamese )
 
Bai03 xay dunglop
Bai03 xay dunglopBai03 xay dunglop
Bai03 xay dunglop
 
Giáo trình vb.net
Giáo trình vb.netGiáo trình vb.net
Giáo trình vb.net
 
C# cơ bản hay
C# cơ bản hayC# cơ bản hay
C# cơ bản hay
 
Java Tieng Viet
Java Tieng VietJava Tieng Viet
Java Tieng Viet
 
Cs lab04 win-form assignment
Cs lab04   win-form assignmentCs lab04   win-form assignment
Cs lab04 win-form assignment
 
Ky thuat l.trinh_java
Ky thuat l.trinh_javaKy thuat l.trinh_java
Ky thuat l.trinh_java
 
Bai tap thuc hanh
Bai tap thuc hanhBai tap thuc hanh
Bai tap thuc hanh
 
OOP in Java - Ver1.1
OOP in Java -  Ver1.1OOP in Java -  Ver1.1
OOP in Java - Ver1.1
 
Lecture02(1)
Lecture02(1)Lecture02(1)
Lecture02(1)
 
[Cntt] all java
[Cntt] all java[Cntt] all java
[Cntt] all java
 
[Cntt] bài giảng java khtn hcm
[Cntt] bài giảng java   khtn hcm[Cntt] bài giảng java   khtn hcm
[Cntt] bài giảng java khtn hcm
 
Chuong 6 rational rose slide
Chuong 6 rational rose slideChuong 6 rational rose slide
Chuong 6 rational rose slide
 
Cac giai phap_lap_trinh_c___final_[bookbooming.com]
Cac giai phap_lap_trinh_c___final_[bookbooming.com]Cac giai phap_lap_trinh_c___final_[bookbooming.com]
Cac giai phap_lap_trinh_c___final_[bookbooming.com]
 
Oop 6
Oop 6Oop 6
Oop 6
 
Lập trình C# 2008 cơ bản_Nhất Nghệ
Lập trình C# 2008 cơ bản_Nhất NghệLập trình C# 2008 cơ bản_Nhất Nghệ
Lập trình C# 2008 cơ bản_Nhất Nghệ
 

Viewers also liked

Mot so ham do hoa trong c c++
Mot so ham do hoa trong c c++Mot so ham do hoa trong c c++
Mot so ham do hoa trong c c++
ANHMATTROI
 
Lập trình hướng đối tượng với C++
Lập trình hướng đối tượng với C++Lập trình hướng đối tượng với C++
Lập trình hướng đối tượng với C++
Trần Thiên Đại
 

Viewers also liked (8)

Mot so ham do hoa trong c c++
Mot so ham do hoa trong c c++Mot so ham do hoa trong c c++
Mot so ham do hoa trong c c++
 
Do hoa may tinh
Do hoa may tinhDo hoa may tinh
Do hoa may tinh
 
Tập 3 chuyên đề Toán học: Hình học phẳng Oxy - Megabook.vn
Tập 3 chuyên đề Toán học: Hình học phẳng Oxy - Megabook.vnTập 3 chuyên đề Toán học: Hình học phẳng Oxy - Megabook.vn
Tập 3 chuyên đề Toán học: Hình học phẳng Oxy - Megabook.vn
 
Lập trình hướng đối tượng với C++
Lập trình hướng đối tượng với C++Lập trình hướng đối tượng với C++
Lập trình hướng đối tượng với C++
 
PHÉP QUAY & PHÉP VỊ TỰ
PHÉP QUAY & PHÉP VỊ TỰPHÉP QUAY & PHÉP VỊ TỰ
PHÉP QUAY & PHÉP VỊ TỰ
 
Bài tập mẫu C và C++ có giải
Bài tập mẫu C và C++ có giảiBài tập mẫu C và C++ có giải
Bài tập mẫu C và C++ có giải
 
GIẢI TAM GIÁC TRONG TỌA ĐỘ PHẲNG
GIẢI TAM GIÁC TRONG TỌA ĐỘ PHẲNGGIẢI TAM GIÁC TRONG TỌA ĐỘ PHẲNG
GIẢI TAM GIÁC TRONG TỌA ĐỘ PHẲNG
 
Giới thiệu môn học Làm quen với unity3d
Giới thiệu môn học Làm quen với unity3dGiới thiệu môn học Làm quen với unity3d
Giới thiệu môn học Làm quen với unity3d
 

Similar to Hdth01 ltudql2-lap tinhduongdoituong-vb

[Top tailieu.com] bai tap nen tang va lap trinh huong doi tuong voi ngon ngu c#
[Top tailieu.com] bai tap nen tang va lap trinh huong doi tuong voi ngon ngu c# [Top tailieu.com] bai tap nen tang va lap trinh huong doi tuong voi ngon ngu c#
[Top tailieu.com] bai tap nen tang va lap trinh huong doi tuong voi ngon ngu c#
Hoàng Trí Phan
 
Cq lt hdt-th2011-01-tuan08
Cq lt hdt-th2011-01-tuan08Cq lt hdt-th2011-01-tuan08
Cq lt hdt-th2011-01-tuan08
. .
 
Tai lieu huong_dan_tu_hoc_visual_studio2010
Tai lieu huong_dan_tu_hoc_visual_studio2010Tai lieu huong_dan_tu_hoc_visual_studio2010
Tai lieu huong_dan_tu_hoc_visual_studio2010
Nhat Linh Luong
 
Hdth02 ltudql02--tuan02 tt-
Hdth02 ltudql02--tuan02 tt-Hdth02 ltudql02--tuan02 tt-
Hdth02 ltudql02--tuan02 tt-
Dũng Đinh
 
Bai toan va thuat toan
Bai toan va thuat toanBai toan va thuat toan
Bai toan va thuat toan
Hữu Duy Duy
 
Ke hoach giang day
Ke hoach giang dayKe hoach giang day
Ke hoach giang day
Tâm Phan
 
300 BÀI CODE THIẾU NIÊN.pdf
300 BÀI CODE THIẾU NIÊN.pdf300 BÀI CODE THIẾU NIÊN.pdf
300 BÀI CODE THIẾU NIÊN.pdf
HuyPhc9
 
Chuan viet code va thiet ke giao dien trong C#
Chuan viet code va thiet ke giao dien trong C#Chuan viet code va thiet ke giao dien trong C#
Chuan viet code va thiet ke giao dien trong C#
Kuli An
 

Similar to Hdth01 ltudql2-lap tinhduongdoituong-vb (20)

[Top tailieu.com] bai tap nen tang va lap trinh huong doi tuong voi ngon ngu c#
[Top tailieu.com] bai tap nen tang va lap trinh huong doi tuong voi ngon ngu c# [Top tailieu.com] bai tap nen tang va lap trinh huong doi tuong voi ngon ngu c#
[Top tailieu.com] bai tap nen tang va lap trinh huong doi tuong voi ngon ngu c#
 
Cq lt hdt-th2011-01-tuan08
Cq lt hdt-th2011-01-tuan08Cq lt hdt-th2011-01-tuan08
Cq lt hdt-th2011-01-tuan08
 
Tai lieu huong_dan_tu_hoc_visual_studio2010
Tai lieu huong_dan_tu_hoc_visual_studio2010Tai lieu huong_dan_tu_hoc_visual_studio2010
Tai lieu huong_dan_tu_hoc_visual_studio2010
 
Giáo trình visual basic
Giáo trình visual basicGiáo trình visual basic
Giáo trình visual basic
 
Cơ bản về visual basic
Cơ bản về visual basicCơ bản về visual basic
Cơ bản về visual basic
 
Chapter 3
Chapter 3Chapter 3
Chapter 3
 
Chuong 1
Chuong 1Chuong 1
Chuong 1
 
Bài giảng ngôn ngữ lập trình C cơ bản trường đại học công nghiệp thực phẩm TP...
Bài giảng ngôn ngữ lập trình C cơ bản trường đại học công nghiệp thực phẩm TP...Bài giảng ngôn ngữ lập trình C cơ bản trường đại học công nghiệp thực phẩm TP...
Bài giảng ngôn ngữ lập trình C cơ bản trường đại học công nghiệp thực phẩm TP...
 
Giaotrinh vb
Giaotrinh vbGiaotrinh vb
Giaotrinh vb
 
Hdth02 ltudql02--tuan02 tt-
Hdth02 ltudql02--tuan02 tt-Hdth02 ltudql02--tuan02 tt-
Hdth02 ltudql02--tuan02 tt-
 
Lập trình hướng đối tượng - p2
Lập trình hướng đối tượng - p2Lập trình hướng đối tượng - p2
Lập trình hướng đối tượng - p2
 
Bai toan va thuat toan
Bai toan va thuat toanBai toan va thuat toan
Bai toan va thuat toan
 
Ke hoach giang day
Ke hoach giang dayKe hoach giang day
Ke hoach giang day
 
300 BÀI CODE THIẾU NIÊN.pdf
300 BÀI CODE THIẾU NIÊN.pdf300 BÀI CODE THIẾU NIÊN.pdf
300 BÀI CODE THIẾU NIÊN.pdf
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
De kiem tra 1 tiet tin 7
De kiem tra 1 tiet tin 7De kiem tra 1 tiet tin 7
De kiem tra 1 tiet tin 7
 
Oop 8
Oop 8Oop 8
Oop 8
 
Bài giảng Lập trình cơ bản - truongkinhtethucpham.com
Bài giảng Lập trình cơ bản - truongkinhtethucpham.comBài giảng Lập trình cơ bản - truongkinhtethucpham.com
Bài giảng Lập trình cơ bản - truongkinhtethucpham.com
 
Pdf bai tap_nen_tang_lap_trinh_-_c#-mastercode.vn
Pdf bai tap_nen_tang_lap_trinh_-_c#-mastercode.vnPdf bai tap_nen_tang_lap_trinh_-_c#-mastercode.vn
Pdf bai tap_nen_tang_lap_trinh_-_c#-mastercode.vn
 
Chuan viet code va thiet ke giao dien trong C#
Chuan viet code va thiet ke giao dien trong C#Chuan viet code va thiet ke giao dien trong C#
Chuan viet code va thiet ke giao dien trong C#
 

More from Dũng Đinh

Hdth08 ltudql02-linq
Hdth08 ltudql02-linqHdth08 ltudql02-linq
Hdth08 ltudql02-linq
Dũng Đinh
 
Hdth07 ltudql02-linq-ep1
Hdth07 ltudql02-linq-ep1Hdth07 ltudql02-linq-ep1
Hdth07 ltudql02-linq-ep1
Dũng Đinh
 
Hdth06 ltudql02-multi languages
Hdth06 ltudql02-multi languagesHdth06 ltudql02-multi languages
Hdth06 ltudql02-multi languages
Dũng Đinh
 
Hdth04 ltudql02-dotnet bar
Hdth04 ltudql02-dotnet barHdth04 ltudql02-dotnet bar
Hdth04 ltudql02-dotnet bar
Dũng Đinh
 
Hdth03 ltudql02-user control
Hdth03 ltudql02-user controlHdth03 ltudql02-user control
Hdth03 ltudql02-user control
Dũng Đinh
 
Hdth02 ltudql02-su dungsubversion-2
Hdth02 ltudql02-su dungsubversion-2Hdth02 ltudql02-su dungsubversion-2
Hdth02 ltudql02-su dungsubversion-2
Dũng Đinh
 
Hdth02 ltudql02-su dungsubversion-1
Hdth02 ltudql02-su dungsubversion-1Hdth02 ltudql02-su dungsubversion-1
Hdth02 ltudql02-su dungsubversion-1
Dũng Đinh
 
Hdth09 ltudql02-linq-e3
Hdth09 ltudql02-linq-e3Hdth09 ltudql02-linq-e3
Hdth09 ltudql02-linq-e3
Dũng Đinh
 
Thiet kegiaodien
Thiet kegiaodienThiet kegiaodien
Thiet kegiaodien
Dũng Đinh
 
07bis.thiet kedulieu
07bis.thiet kedulieu07bis.thiet kedulieu
07bis.thiet kedulieu
Dũng Đinh
 
06.mo hinhhoayeucau
06.mo hinhhoayeucau06.mo hinhhoayeucau
06.mo hinhhoayeucau
Dũng Đinh
 
05.thu thapyeucau
05.thu thapyeucau05.thu thapyeucau
05.thu thapyeucau
Dũng Đinh
 
01.lap trinhhuongdoituong
01.lap trinhhuongdoituong01.lap trinhhuongdoituong
01.lap trinhhuongdoituong
Dũng Đinh
 

More from Dũng Đinh (18)

Report
ReportReport
Report
 
Linq2 sql
Linq2 sqlLinq2 sql
Linq2 sql
 
Hdth08 ltudql02-linq
Hdth08 ltudql02-linqHdth08 ltudql02-linq
Hdth08 ltudql02-linq
 
Hdth07 ltudql02-linq-ep1
Hdth07 ltudql02-linq-ep1Hdth07 ltudql02-linq-ep1
Hdth07 ltudql02-linq-ep1
 
Hdth06 ltudql02-multi languages
Hdth06 ltudql02-multi languagesHdth06 ltudql02-multi languages
Hdth06 ltudql02-multi languages
 
Hdth04 ltudql02-dotnet bar
Hdth04 ltudql02-dotnet barHdth04 ltudql02-dotnet bar
Hdth04 ltudql02-dotnet bar
 
Hdth03 ltudql02-user control
Hdth03 ltudql02-user controlHdth03 ltudql02-user control
Hdth03 ltudql02-user control
 
Hdth02 ltudql02-su dungsubversion-2
Hdth02 ltudql02-su dungsubversion-2Hdth02 ltudql02-su dungsubversion-2
Hdth02 ltudql02-su dungsubversion-2
 
Hdth02 ltudql02-su dungsubversion-1
Hdth02 ltudql02-su dungsubversion-1Hdth02 ltudql02-su dungsubversion-1
Hdth02 ltudql02-su dungsubversion-1
 
Hdth09 ltudql02-linq-e3
Hdth09 ltudql02-linq-e3Hdth09 ltudql02-linq-e3
Hdth09 ltudql02-linq-e3
 
Thiet kegiaodien
Thiet kegiaodienThiet kegiaodien
Thiet kegiaodien
 
07bis.thiet kedulieu
07bis.thiet kedulieu07bis.thiet kedulieu
07bis.thiet kedulieu
 
06.mo hinhhoayeucau
06.mo hinhhoayeucau06.mo hinhhoayeucau
06.mo hinhhoayeucau
 
05.thu thapyeucau
05.thu thapyeucau05.thu thapyeucau
05.thu thapyeucau
 
04.mo daucnpm
04.mo daucnpm04.mo daucnpm
04.mo daucnpm
 
03.ke thua daxa
03.ke thua daxa03.ke thua daxa
03.ke thua daxa
 
02.thiet kelop
02.thiet kelop02.thiet kelop
02.thiet kelop
 
01.lap trinhhuongdoituong
01.lap trinhhuongdoituong01.lap trinhhuongdoituong
01.lap trinhhuongdoituong
 

Recently uploaded

ĐỀ SỐ 1 Của sở giáo dục đào tạo tỉnh NA.pdf
ĐỀ SỐ 1 Của sở giáo dục đào tạo tỉnh NA.pdfĐỀ SỐ 1 Của sở giáo dục đào tạo tỉnh NA.pdf
ĐỀ SỐ 1 Của sở giáo dục đào tạo tỉnh NA.pdf
levanthu03031984
 
C.pptx. Phát hiện biên ảnh trong xử lý ảnh
C.pptx. Phát hiện biên ảnh trong xử lý ảnhC.pptx. Phát hiện biên ảnh trong xử lý ảnh
C.pptx. Phát hiện biên ảnh trong xử lý ảnh
BookoTime
 
Everybody Up 1 - Unit 5 - worksheet grade 1
Everybody Up 1 - Unit 5 - worksheet grade 1Everybody Up 1 - Unit 5 - worksheet grade 1
Everybody Up 1 - Unit 5 - worksheet grade 1
mskellyworkmail
 

Recently uploaded (20)

Luận văn 2024 Tạo động lực lao động tại Trung tâm nghiên cứu gia cầm Thụy Phương
Luận văn 2024 Tạo động lực lao động tại Trung tâm nghiên cứu gia cầm Thụy PhươngLuận văn 2024 Tạo động lực lao động tại Trung tâm nghiên cứu gia cầm Thụy Phương
Luận văn 2024 Tạo động lực lao động tại Trung tâm nghiên cứu gia cầm Thụy Phương
 
Hoàn thiện công tác kiểm soát chi NSNN qua Kho bạc Nhà nước huyện Tri Tôn – t...
Hoàn thiện công tác kiểm soát chi NSNN qua Kho bạc Nhà nước huyện Tri Tôn – t...Hoàn thiện công tác kiểm soát chi NSNN qua Kho bạc Nhà nước huyện Tri Tôn – t...
Hoàn thiện công tác kiểm soát chi NSNN qua Kho bạc Nhà nước huyện Tri Tôn – t...
 
Chương 6: Dân tộc - Chủ nghĩa xã hội khoa học
Chương 6: Dân tộc - Chủ nghĩa xã hội khoa họcChương 6: Dân tộc - Chủ nghĩa xã hội khoa học
Chương 6: Dân tộc - Chủ nghĩa xã hội khoa học
 
CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ HOẠT ĐỘNG CỦA NGÂN HÀNG THƯƠNG MẠI CỔ PHẦN...
CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ HOẠT ĐỘNG CỦA NGÂN HÀNG THƯƠNG MẠI CỔ PHẦN...CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ HOẠT ĐỘNG CỦA NGÂN HÀNG THƯƠNG MẠI CỔ PHẦN...
CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ HOẠT ĐỘNG CỦA NGÂN HÀNG THƯƠNG MẠI CỔ PHẦN...
 
Hoàn thiện hoạt động kiểm soát rủi ro tín dụng trong cho vay doanh nghiệp tại...
Hoàn thiện hoạt động kiểm soát rủi ro tín dụng trong cho vay doanh nghiệp tại...Hoàn thiện hoạt động kiểm soát rủi ro tín dụng trong cho vay doanh nghiệp tại...
Hoàn thiện hoạt động kiểm soát rủi ro tín dụng trong cho vay doanh nghiệp tại...
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TIẾNG ANH 2024 - TỪ CÁC TRƯỜNG, ...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TIẾNG ANH 2024 - TỪ CÁC TRƯỜNG, ...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TIẾNG ANH 2024 - TỪ CÁC TRƯỜNG, ...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TIẾNG ANH 2024 - TỪ CÁC TRƯỜNG, ...
 
PHIẾU KHẢO SÁT MỨC ĐỘ HÀI LÒNG VỀ CHẤT LƯỢNG DỊCH VỤ VẬN CHUYỂN HÀNG KHÁCH BẰ...
PHIẾU KHẢO SÁT MỨC ĐỘ HÀI LÒNG VỀ CHẤT LƯỢNG DỊCH VỤ VẬN CHUYỂN HÀNG KHÁCH BẰ...PHIẾU KHẢO SÁT MỨC ĐỘ HÀI LÒNG VỀ CHẤT LƯỢNG DỊCH VỤ VẬN CHUYỂN HÀNG KHÁCH BẰ...
PHIẾU KHẢO SÁT MỨC ĐỘ HÀI LÒNG VỀ CHẤT LƯỢNG DỊCH VỤ VẬN CHUYỂN HÀNG KHÁCH BẰ...
 
ĐỀ SỐ 1 Của sở giáo dục đào tạo tỉnh NA.pdf
ĐỀ SỐ 1 Của sở giáo dục đào tạo tỉnh NA.pdfĐỀ SỐ 1 Của sở giáo dục đào tạo tỉnh NA.pdf
ĐỀ SỐ 1 Của sở giáo dục đào tạo tỉnh NA.pdf
 
Trích dẫn theo Harvard với Microsoft Word
Trích dẫn theo Harvard với Microsoft WordTrích dẫn theo Harvard với Microsoft Word
Trích dẫn theo Harvard với Microsoft Word
 
C.pptx. Phát hiện biên ảnh trong xử lý ảnh
C.pptx. Phát hiện biên ảnh trong xử lý ảnhC.pptx. Phát hiện biên ảnh trong xử lý ảnh
C.pptx. Phát hiện biên ảnh trong xử lý ảnh
 
Quản trị cơ sở Giáo dục nghề nghiệp
Quản trị cơ sở Giáo dục nghề nghiệpQuản trị cơ sở Giáo dục nghề nghiệp
Quản trị cơ sở Giáo dục nghề nghiệp
 
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
 
Everybody Up 1 - Unit 5 - worksheet grade 1
Everybody Up 1 - Unit 5 - worksheet grade 1Everybody Up 1 - Unit 5 - worksheet grade 1
Everybody Up 1 - Unit 5 - worksheet grade 1
 
Giới Thiệu Về Kabala | Hành Trình Thấu Hiểu Bản Thân | Kabala.vn
Giới Thiệu Về Kabala | Hành Trình Thấu Hiểu Bản Thân | Kabala.vnGiới Thiệu Về Kabala | Hành Trình Thấu Hiểu Bản Thân | Kabala.vn
Giới Thiệu Về Kabala | Hành Trình Thấu Hiểu Bản Thân | Kabala.vn
 
Luận Văn: HOÀNG TỬ BÉ TỪ GÓC NHÌN CẢI BIÊN HỌC
Luận Văn: HOÀNG TỬ BÉ TỪ GÓC NHÌN CẢI BIÊN HỌCLuận Văn: HOÀNG TỬ BÉ TỪ GÓC NHÌN CẢI BIÊN HỌC
Luận Văn: HOÀNG TỬ BÉ TỪ GÓC NHÌN CẢI BIÊN HỌC
 
GIỮ GÌN VÀ PHÁT HUY GIÁ TRỊ MỘT SỐ BÀI HÁT DÂN CA CÁC DÂN TỘC BẢN ĐỊA CHO HỌC...
GIỮ GÌN VÀ PHÁT HUY GIÁ TRỊ MỘT SỐ BÀI HÁT DÂN CA CÁC DÂN TỘC BẢN ĐỊA CHO HỌC...GIỮ GÌN VÀ PHÁT HUY GIÁ TRỊ MỘT SỐ BÀI HÁT DÂN CA CÁC DÂN TỘC BẢN ĐỊA CHO HỌC...
GIỮ GÌN VÀ PHÁT HUY GIÁ TRỊ MỘT SỐ BÀI HÁT DÂN CA CÁC DÂN TỘC BẢN ĐỊA CHO HỌC...
 
Hướng dẫn viết tiểu luận cuối khóa lớp bồi dưỡng chức danh biên tập viên hạng 3
Hướng dẫn viết tiểu luận cuối khóa lớp bồi dưỡng chức danh biên tập viên hạng 3Hướng dẫn viết tiểu luận cuối khóa lớp bồi dưỡng chức danh biên tập viên hạng 3
Hướng dẫn viết tiểu luận cuối khóa lớp bồi dưỡng chức danh biên tập viên hạng 3
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
 
Giáo trình xây dựng thực đơn. Ths Hoang Ngoc Hien.pdf
Giáo trình xây dựng thực đơn. Ths Hoang Ngoc Hien.pdfGiáo trình xây dựng thực đơn. Ths Hoang Ngoc Hien.pdf
Giáo trình xây dựng thực đơn. Ths Hoang Ngoc Hien.pdf
 

Hdth01 ltudql2-lap tinhduongdoituong-vb

  • 1. TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM HỆ TẠI CHỨC MÔN: LẬP TRÌNH ỨNG DỤNG QUẢN LÝ 02 GVLT: ThS. BÙI TẤN LỘC HƯỚNG DẪN THỰC HÀNH TUẦN 01 LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Người soạn: Nguyễn Đức Huy Ngô Ngọc Đăng Khoa Nguyễn Lê Nguyên Ngữ Hồ Tuấn Thanh TP.HCM, ngày 24 tháng 02 năm 2011
  • 2. htthanh@fit.hcmus.edu.vn MỤC LỤC 1 Mục tiêu ....................................................................................................................... 3 2 Nội dung ...................................................................................................................... 3 2.1 Ví dụ ....................................................................................................................... 3 2.2 Bài làm ................................................................................................................... 3 2.2.1 Thiết kế ............................................................................................................ 3 2.2.2 Cài đặt ............................................................................................................. 6 2.2.2.1 Tạo project ................................................................................................... 6 2.2.2.2 Cài đặt lớp .................................................................................................... 8 2.2.2.3 Sử dụng lớp Diem ...................................................................................... 11 3 Bài tập ........................................................................................................................ 14 Trang 2
  • 3. htthanh@fit.hcmus.edu.vn 1 Mục tiêu - Ôn tập về phương pháp lập trình hướng đối tượng, áp dụng cho ngôn ngữ VB.NET 2 Nội dung 2.1 Ví dụ - Thiết kế lớp điểm trong mặt phẳng Oxy và cài đặt minh họa bằng ngôn ngữ VB.NET 2.2 Bài làm 2.2.1 Thiết kế - Khi thiết kế một lớp (lớp Diem) ta quan tâm đến 2 thành phần: - Thành phần dữ liệu. - Các phương thức của lớp. - Các thành phần dữ liệu có trong lớp Diem. - Các loại phương thức thường có trong một lớp. Trang 3
  • 4. htthanh@fit.hcmus.edu.vn - Các phương thức khởi tạo lớp Diem bao gồm các phương thức sau: - Đối với mỗi phương thức, ta sẽ xác định tham số truyền vào cũng như kết quả trả ra của nó. - Chẳng hạn, với phương thức khởi tạo đầy đủ tham số: 1. Tham số (truyền vào): 2 giá trị hoành độ (x) và tung độ (y). 2. Trả về: phương thức này không trả về giá trị nào (void). - Các phương thức cung cấp thông tin bao gồm: - Chẳng hạn, với phương thức cung cấp thong tin tung độ (y): 1. Tham số: không có. 2. Trả về: tung độ. - Các phương thức cập nhật thông tin: Trang 4
  • 5. htthanh@fit.hcmus.edu.vn - Chẳng hạn, với phương thức dịch chuyển điểm qua trái 1 đơn vị: 1. Tham số: không có. Vì ta biết rõ là dịch trái 1 đơn vị với điểm đang xét. 2. Trả về: không có. Thay đổi trực tiếp trên hoành độ của điểm đang xét. - Các phương thức xử lý tính toán trong lớp Diem bao gồm: - Xét phương thức tính khoảng cách giữa 2 điểm, ta thấy: 1. Tham số: điểm thứ hai cần tính khoảng cách tới. Điểm thứ nhất chính là điểm gọi thực hiện phương thức này. 2. Trả về: giá trị khoảng cách. - Các phương thức kiểm tra cho lớp Diem: - Xét phương thức kiểm tra điểm có thuộc phần tư thứ II hay không? 1. Tham số: không có 2. Trả về: cho biết có thuộc phần tư thứ II (giá trị 1) hay không thuộc phần tư thứ II (giá trị 0). Ở đây, ta chọn kiểu int để biểu diễn. Trang 5
  • 6. htthanh@fit.hcmus.edu.vn 2.2.2 Cài đặt 2.2.2.1 Tạo project - Phần này sẽ minh họa trên Visual Studio 2008, đối với Visual Studio 2005 hay 2010 cũng hoàn toàn tương tự. Ngôn ngữ lập trình ở đây ta sử dụng là VB.Net. - Mở Visual Studio lên. - Tạo project: - Tạo lớp Diem: Click phải lên project (đã tạo ở trên), trong cửa sổ Solution Explorer và Add – New Item. Bên trái chọn Code; và bên phải chọn Class Trang 6
  • 8. htthanh@fit.hcmus.edu.vn 2.2.2.2 Cài đặt lớp - Khai báo hai thành phần dữ liệu _x và _y - Khai báo và viết code xử lý cho phương thức khởi tạo mặc định (không tham số). Ta lưu ý, với phương thức khởi tạo có tên là New. Đây là tên bắt buộc, không thể thay đổi. Đối với phương thức khởi tạo mặc định thì không có tham số. Trang 8
  • 9. htthanh@fit.hcmus.edu.vn - Bây giờ, ta khai báo và viết code xử lý cho phương thức khởi tạo có đầy đủ tham số (2 tham số). Cũng giống như trên phương thức khởi tạo phải có tên là New, nhưng ở đây ta có 2 tham số là hoành độ x và tung độ y. - Khai báo và viết code xử lý cho phương thức nhập thông tin một điểm 1. Để xuất thông tin ra màn hình, ta dùng phương thức Console.Write hoặc Console.WriteLine 2. Để đọc thông tin người dùng nhập từ bàn phím, ta dùng phương thức Console.ReadLine - Khai báo và viết code xử lý cho phương thức xuất thông tin lớp Diem Trang 9
  • 10. htthanh@fit.hcmus.edu.vn 1. {0} và {1} ở đây có nghĩa là, khi xuất ra màn hình, giá trị tham số ở vị trí 0 (giá trị x) và tham số ở vị trí 1 (giá trị y) sẽ được sử dụng. - Khai báo và viết code xử lý phương thức cung cấp thông tin hoành độ và cập nhật thông tin hoành độ. 1. Trong VB.Net, ngoài thành phần dữ liệu và phương thức, ta còn có một loại là Property. Property bản chất là bản gộp của hai phương thức cung cấp thông tin và cập nhật thông tin. Lưu ý, thay vì sử dụng từ khóa Sub hay Function, ở đây ta sử dụng từ khóa Property. Một property gồm 2 thành phần:  Get: đế cung cấp thông tin, hay nói cách khác là return giá trị về.  Set: để cập nhật thông tin, hay nói cách khác là gán giá trị cho một thành phần dữ liệu. Ở đây value là một biến đặc biệt, đã được khai báo sẵn. Chẳng hạn khi ta viết diemO.X = 10 thì value nhận giá trị 10 và câu lệnh này gán giá trị 10 cho thuộc tính _x - Khai báo và viết code xử lý cho phương thức dịch trái: - Khai báo và viết code xử lý cho phương thức tính khoảng cách hai điểm. 1. Ở đây, phương thức này cần có thêm tham số là điểm thứ 2 cần tính khoảng cách đến. Giá trị trả về là khoảng cách (ta chọn kiểu Double). Lưu ý ở đây ta dùng từ khóa Function thay vì Sub, vì phương thức này có trả về giá trị. Trang 10
  • 11. htthanh@fit.hcmus.edu.vn - Khai báo và viết code xử lý cho phương thức kiểm tra một điểm có thuộc góc phần tư thứ I hay không - Trên đây, ta đã điểm qua cài đặt cơ bản của lớp Diem trong ngôn ngữ VB.Net. Đối với những phương thức khác, ta sẽ cài đặt tương tự. 2.2.2.3 Sử dụng lớp Diem - Sau khi đã thiết kế và cài đặt lớp Diem, đến lúc ta thử sử dụng chúng. Sau đây sẽ là một yêu cầu nhỏ gồm 9 câu: 1. Khai báo điểm O với thông tin mặc định  Sử dụng phương thức khởi tạo mặc định 2. Khai báo 2 điểm A, B với thông tin tọa độ là (3,0) và (0,4)  Sử dụng phương thức khởi tạo đầy đủ thông tin. 3. Khai báo điểm D với thông tin lấy từ điểm B  Sử dụng phương thức khởi tạo từ một điểm cho trước. Trang 11
  • 12. htthanh@fit.hcmus.edu.vn 4. Khai báo điểm E và yêu cầu nhập thông tin từ bàn phím  Sử dụng phương thức khởi tạo mặc định và gọi phương thức nhập của lớp điểm.  Hãy để ý cách gọi một phương thức. <biến thuộc lớp chứa phương thức đó><dấu chấm><tên phương thức>(các tham số cách nhau dấu phẩy). 5. Tính khoảng cách từ điểm B đến điểm C và xuất ra màn hình.  Sử dụng phương thức tính khoảng cách 2 điểm.  Hãy để ý cách nhận giá trị trả về của một phương thức. <biến có kiểu tương ứng với kiểu trả về><dấu bằng><lời gọi hàm> 6. Xuất thông tin điểm E ra màn hình  Sử dụng phương thức xuất. 7. Kiểm tra xem điểm E có thuộc góc phần tư thứ I không và xuất ra màn hình.  Sử dụng phương thức kiểm tra điểm thuộc góc phần tư thứ nhất.  Tùy vào giá trị trả về của phương thức mà xuất ra màn hình chuỗi tương ứng. Trang 12
  • 13. htthanh@fit.hcmus.edu.vn 8. Sử dụng property để lấy giá trị x của điểm E và xuất ra màn hình. 9. Sử dụng property để cập nhật giá trị x của điểm E. - Sau đây là mã nguồn hoàn chỉnh của hàm main. Trang 13
  • 14. htthanh@fit.hcmus.edu.vn 3 Bài tập 1. Hoàn thành hết các phương thức còn lại của lớp Diem. 2. Thiết kế, cài đặt và minh họa sử dụng lớp TamGiac trong mặt phẳng Oxy. 3. Thiết kế, cài đặt và minh họa sử dụng lớp DuongTron trong mặt phẳng Oxy. Trang 14