1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lập trình ứng dụng Visualbasic: Bài 5 - Phạm Đình Sắc

19 11 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

Định dạng
Số trang 19
Dung lượng 291,24 KB

Nội dung

Bài giảng Lập trình ứng dụng Visualbasic bài 5: Kỹ thuật lập trình trong VB.Net trình bày về hàm - thủ tục, khái niệm lập trình hướng đối tượng, lập trình theo sự kiện, lập trình thuộc tính, bắt lỗi trong lập trình.

Buổi 5: Kỹ thuật lập trình VB.NET ™ Hàm (Function) - Thủ tục (Procedure) ™ Khái niệm lập trình hướng đối tượng (OOP: Object Orientation Programming) ™ Lập trình theo kiện (Event) lập trình Thuộc tính (Property) Windows Form programming with VB.Net 2005 ™Hàm (Function) [Public, Protected, Private] Function _ [(Danh sách tham số)] AS _ [Handles eventlist] [Khai báo biến thuộc tầm vực hàm] [Các câu lệnh …] [Exit Fucntion] Return End Fucntion - Một Hàm dãy câu lệnh để thực thi công việc, chức đặc thù - Hàm gọi để thi hành thông qua tên thủ tục - Hàm thường có giá trị trả Windows Form programming with VB.Net 2005 VD: Hàm Private Function Max(ByVal a As Integer, ByVal _ b As Integer) As Integer If a > b Then Return a Else Return b End If End Function Dim C as Integer C = Max(a,b) Windows Form programming with VB.Net 2005 ™Thủ tục (Procedure) [Public, Protected, Private] Sub _ [(Danh sách tham số)] [Handles eventlist] [Khai báo biến thuộc tầm vực thủ tục] [Các câu lệnh …] [Exit Sub] End Sub - Chức thủ tục giống Hàm, Thủ tục khơng có giá trị trả Windows Form programming with VB.Net 2005 Private Sub bntAn_Click( , ) Handles bntAn.Click AnGioiTinh() End Sub Windows Form programming with VB.Net 2005 VD: Thủ tục Private Sub AnGioiTinh() Dim rdb As RadioButton For Each Ctrl As Control In GroupBox1.Controls On Error Resume Next ' Có lỗi bỏ qua rdb = CType(Ctrl , RadioButton) ' chuyển kiểu rdb.Visible = False Next GroupBox1.Text = "Sở thích:“ End Sub Windows Form programming with VB.Net 2005 VD: Hàm trả đối tượng Command Public Function GetCommand() As OleDbCommand Dim cn As New OleDbConnection Dim cmd As New OleDbCommand Dim strConnection As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\ Source=D:\QLNhanSu.mdb" cn.ConnectionString = strConnection cn.Open() cmd.CommandType = CommandType.StoredProcedure cmd.CommandText = “sp_NhanVien” cmd.Connection = cn return cmd End Function Windows Form programming with VB.Net 2005 VD: DataAdapter & Fill cho DataTable public function GetD etDataT ataTable() able() as DataT ataTable Dim da As New OleDbDataAdapter() Dim tb As New DataTable() DataTable() Try y ‘ Cmd đố ố i tượ Tr đ tượng đượ khai bá báo & khở khởi tạ tạo ‘ = GetCommand() da.SelectCommand da.SelectCommand = Cmd da.Fill(tb) Return tb Catch ex As Exception MsgBox(ex.Message) Return Nothing End Try End Function Windows Form programming with VB.Net 2005 VD: DataAdapter & Fill cho DataSet Public Function GetDataSet () as DataSet GetDataSet() ataSet Dim da As New OleDbDataAdapter() Dim ds As New DataSet() DataSet() Try ‘ Cmd đố đối tượ tượng đượ khai bá báo & khở khởi tạ tạo da.SelectCommand ‘ = GetCommand() da.SelectCommand = Cmd da.Fill(ds da.Fill(ds)) ‘da.Fill(ds, da.Fill(ds, “TableName” TableName”) Return ds Catch ex As Exception MsgBox(ex.Message) Return Nothing End Try End Function Windows Form programming with VB.Net 2005 Public Function GetDataReader(ByVal StoreProceureName As String, Optional ByVal arrParams() As String = Nothing, Optional ByVal arrValues() As Object = Nothing) As OleDbDataReader Dim rd As OleDbDataReader Dim cmd As New OleDbCommand cmd = me.GetCommand() If Not (arrParams Is Nothing) Then For nIndex As Integer = To (arrParams.Length - 1) cmd.Parameters.AddWithValue(arrParams(nIndex), arrValues(nIndex)) Next End If rd = cmd.ExecuteReader() Return rd ‘cmd.ExecuteReader() End Function Windows Form programming with VB.Net 2005 10 Lập trình hướng đối tượng Lập trình hướng đối tượng gì? ¾ Trong giới thực, đối tượng thực thể tồn người, xe, máy tính, v.v… ¾ Trong ngơn ngữ lập trình, đối tượng hình, mouse, control v.v… ¾ Lập trình hướng đối tượng kiểu lập trình nhằm vào tương tác đối tượng ¾ Một đối tượng có đặc điểm sau: - Những thuộc tính: xác định đặc điểm đối tượng - Những phương thức:x/định chức đối tượng - Các kiện phát sinh thay đổi thuộc tính, thực phương thức hay bị đối tượng khác tác động vào Windows Form programming with VB.Net 2005 11 Đặc điểm Lập trình hướng đối tượng: ¾Abstraction: Tính trừu tượng ¾Encapsulation: Tính bao bọc (đóng gói) ¾Inheritance: Tính kế thừa ¾Polymorphism: Tính đa hình Windows Form programming with VB.Net 2005 12 Abstraction: Tính trừu tượng Trong thuộc tính hóa… Ví dụ: giới thực tồn đối tượng có cần quản lý như: Nhân viên, sinh viên, hàng MaSV HoTen NgaySinh A001 Lê Văn A 1/1/1979 A002 TrầnVăn B 1/6/1979 Từ đối tượng có thuộc tính giống nhau, ta trừu tượng hóa thành lớp đối tượng Ví dụ: từ hai đối tượng ta trừu tượng hóa thành lớp (class) SinhVien có thuộc tính: MaSV HoTen NgaySinh Windows Form programming with VB.Net 2005 13 Encapsulation: Tính bao bọc ¾ Có thể gọi phương thức đối tượng để thực mà khơng quan tâm bên phương thức có lệnh xử lý ¾ Chỉ quan tâm đến liệu đầu vào kết trả phương thức ¾ Khi ta chỉnh sửa lại xử lý phương thức mà không chỉnh sửa liệu vào kết trả khơng cần chỉnh sửa nơi gọi Windows Form programming with VB.Net 2005 14 Inheritance: Tính kế thừa ¾ Là khả cho phép ta xây dựng lớp dựa định nghĩa lớp có ¾ Lớp có gọi lớp Cha, lớp phát sinh gọi lớp Con ¾ Lớp kế thừa tất thành phần lớp Cha, mở rộng chức thành phần kế thừa bổ sung thêm thành phần Windows Form programming with VB.Net 2005 15 Polymorphism: Tính đa hình (3 hình thức) ™ Kết nối trễ: ¾ Ta gián giá trị đối tượng lớp cha đối tượng thuộc lớp ¾ Khi gọi phương thức đối tượng thuộc lớp cha, tùy thời điểm gọi, đối tượng gán đối tượng thuộc lớp phương thức lớp gọi ™ Nạp chồng: Là khả lớp có nhiều phương thức tên khác tham số số lượng, kiểu liệu ™ Ghi đè: khả lớp định nghĩa lại phương thức lớp cha Windows Form programming with VB.Net 2005 16 Lập trình hướng đối tượng VB.NET Tạo lớp: menu Project -> Add Class -> Nhập tên lớp (Hoặc chuột phải tên Project ….) Public Class … End Class Ta tự định nghĩa lớp với cú pháp: Class End Class Windows Form programming with VB.Net 2005 17 Cấu trúc Class [các Namspace VB hay người sử dụng ] [Namespace { name | name.name } ] Public Class [ Inherits ] [ Khai báo biến hay thuộc tính ] [ Các phương thức (hàm hay thủ tục) ] End Class [End Namespace] Windows Form programming with VB.Net 2005 18 Imports System Imports System.Data Ví dụ class CSDL: Imports System.Data.SqlClient Imports Microsoft.VisualBasic Namespace CSLD.KetNoi Public Class DataLayers Private Con As SqlConnection Private Cmd As New SqlCommand Private strConnect As String Public Sub New() strConnect = "Data Source=(local);Initial Catalog=Menu; Persist Security Info=True;User ID=sa;Password=sa" End Sub ‘ kết hú húc phương thứ thức new Public Function GetConnection() As SqlConnection Dim objCon As SqlConnection objCon = New SqlConnection(strConnect) Return objCon End Function ‘ kết hú húc phương thứ thức lấ lấy kế kết nố nối End Class ‘ Kết thú thúc class DataLayers End Namespace ‘ Kết thú thúc name space củ class DataLayers Windows Form programming with VB.Net 2005 19 Imports không gian tên (Namespace) : ¾.NetFrameWork cung cấp 5000 đối tượng, để dễ dàng quan lý sử dụng, đối tượng đưa vào nhóm tùy theo loại, nhóm có tên gọi Namespase ¾ Để sử dụng đối tượng thuộc namespase ta phải tham chiếu đến lệnh: ¾ Imports Namespace Ví dụ: Imports System.Data.OleDb ắ Chỳ ý ã Mi lnh Imports ch sử dụng với khơng gian tên • Mỗi Module có nhiều dịng Imports ¾ Các lệnh Imports phải đặt trước tất khai báo, kể lệnh khai báo Module Class Windows Form programming with VB.Net 2005 20 10 Từ khóa lớp: Public: Các thực thể khai báo với từ khóa nàycó thể sử dụng nơi Private: Cho biết thực thể khai báo sử dụng phạm vi khai báo Protected: Cho biết thực thể khai báo sử dụng phạmvi Class Sub Class (lớp lớp con) Friend: Cho biết thực thể khai báochỉ đượcsử dụng phạm vi Project Nếu khơng có từ khóa, Class mặcn hiên khai báo Friend Windows Form programming with VB.Net 2005 21 Khai báo lớp kế thừa từ lớp cha : Public Class Inherits ' Khai báo phương thức cho lớp đối tượng [] Sub ([]) … End Sub ' Hoặc [] Function ([]) _ as … Return End Function End Class Windows Form programming with VB.Net 2005 22 11 Từ khóa phương thức: Public: Phương thức gọi nơi Private: P.thức gọi phạm vi Class Protected: P thức gọi phạm vi Class class (Subclass) Friend: P thức gọi phạm vi Project Overloads: khai báo cho phương thức thuộc lớp con, Cho biết P thức Nạp chồng hay nhiều P thức có tên với phương thức lớp cha Overrides: Cho biết P thức ghi đè phương thức tên lớp cha Số lượng tham số, kiểu liệu tham số kiểu giá trị trả phải khớp với lớp cha Windows Form programming with VB.Net 2005 23 Phương thức khởi tạo (Constractor): Là thủ tục khai báo với từ khóa Public ln có tên New cú pháp: Public Sub New [(Các tham số)] End Sub Trong lớp ta có nhiều phương thức khởi tạo với tham số khác ™ Khai báo thuộc tính: Thuộc tính thành phần lưu giữ tính chất, đặc điểm đối tượng Ứng với thuộc tính, cần khai báo biến Private tương ứng để lưu giữ giá trị Windows Form programming with VB.Net 2005 24 12 Public Class CPhanSo ' cá thuộ thuộc tí tính Private Tu As Integer Private Mau As Integer ' Phương Phương thứ thức thiế thiết lậ lập mặ mặc đị định Public Sub New() Tu = Mau = End Sub ' Phương Phương thứ thức thiế thiết lậ lập biế biết tử tử mẫu Public Sub New(ByVal New(ByVal t As Integer, ByVal m As Integer) Tu = t Mau = m End Sub End Class Windows Form programming with VB.Net 2005 25 Truy cập thuộc tính ta dùng cấu trúc Get - Set: ' Khai báo biến lưu giữ giá trị thuộc tính Private mthuoctinh As Property Thuoctinh() As ' Truy xuất giá trị thuộc tính tức truy xuất đến giá trị biến Get Return mthuoctinh End Get ' Gán trị cho thuộc tính tức gán trị cho biến Set (ByVal Value As ) mthuoctinh = Value End Set End Property Windows Form programming with VB.Net 2005 26 13 Vd: khai báo thuộc tính Public Class CHocSinh Private intMaSo As Integer Private strHoTen As String Private bGioiTinh As Boolean Property MaSo() As Integer Get Return intMaSo End Get Set(ByVal MaSV As Integer) intMaSo = MaSV End Set End Property Windows Form programming with VB.Net 2005 27 Property HoTen() As Integer Get Return strHoTen End Get Set(ByVal sHoTen As Integer) strHoTen = sHoTen End Set End Property Windows Form programming with VB.Net 2005 28 14 Property GioiTinh() As Integer Get Return bGioiTinh End Get Set(ByVal Phai As Boolaen) bGioiTinh = Phai End Set End Property End Class ' Kết thúc class CHocSinh Windows Form programming with VB.Net 2005 29 Từ khóa Me ™ Me: dùng rõ muốn dùng thành phần thể Class nơi viết lệnh Ví dụ: Public Class Con_nguoi Private ten as String Public Sub Lam_viec() Dim ten as String ' biến cụcbộ Sub sử dụng ten = "Hùng" ' biến cấp Class dùng Me.ten = "Hùng " End Sub End Class Windows Form programming with VB.Net 2005 30 15 Từ khóa Mybase ™Mybase: đượ dù dùng Class kế kế thừ thừa, muố muốn dù dùng cá phương thứ thức củ Class Cha (class sở sở); VD: VD: Public Class Xe Public sub Chay()

Ngày đăng: 08/05/2021, 17:29

TỪ KHÓA LIÊN QUAN