Thông tin tài liệu:
Dạng bài tập về Micosoft.NET- P10: Sau khi biết qua về .NET, câu hỏi bạn sẽ đặt ra là bạn có nên học lập trìnhtrên .NET hay không. Nói chung, về lập trình có nhiều tôn giáo nhưVC++/Java, VB6, Delphi ..v.v.. Bạn có thể chọn giữa C# và VB.NET.Đối với VB6 programmers, học lập trình VB.NET sẽ mất một thời gian,nhưng không khó. Nên nhớ rằng .NET không phải chỉ cho ta các ngônngữ lập trình, mà cả một hệ thống triển khai phần mềm chú trọng vàomục tiêu hơn là cách thức....
Nội dung trích xuất từ tài liệu:
Dạng bài tập về Micosoft.NET- P10Các bài tập Microsoft .NET 46 Dim X1 As Object Dim X2 As Object X1 = 24.7 X2 = 5 Console.WriteLine(CSng(X1) + CInt(X2)) Console.WriteLine(CStr(X1) & CStr(X2))End SubCType StatementTrong VB.NET có Option Strict by default. Nó bắt ta phải thận trọngtrong cách dùng data types. Vì Object có thể chứa bất cứ thứ gì, khi tamuốn dùng nó như một loại data type hay class nào, ta phải đổi Object rathứ ấy bằng CType, thí dụ:Class Product Public Description As StringEnd ClassPrivate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesButton1.Click Dim X As Object X = New Product() Treat X like an actual product CType(X, Product).Description = Soft Drink Console.WriteLine(CType(X, Product).Description)End SubMặc dù X được instantiated như một Product, nó vẫn được xem như mộtObject variable. Do đó mỗi khi muốn dùng nó như một Product ta phảinhờ đến CType. Từ chuyên môn trong programming gọi đó là TypeCasting.Thay đổi trong cách tuyên bố VariablesTuyên bố nhiều VariablesCác bài tập Microsoft .NET 47Trong VB6 ta có thể Declare nhiều variables trên cùng một hàng như:Dim i, j, k As IntegerKết quả là chỉ có k là Integer, còn i và j là Variant (có thể đó là điều bạnkhông ngờ). Trong VB.NET thì cả ba i,j và k đều là Integer, và như thếhợp lý hơn.Tuyên bố trị số khởi đầuTrong VB6, sau khi declare variable ta thường cho nó một trị số khởi đầunhư:Dim X As IntegerX = 12Bây giờ trong VB.NET ta có thể gọp chung hai statements trên lại nhưsau:Dim X As Integer = 12Tuyên bố ConstantsKhi tuyên bố Constants trong VB.NET ta phải khai rõ Data type của nó làString, Integer, Boolean ..v.v.:Public Const myConstantString As String = happyPublic Const maxStudent As Integer = 30Dim As NewTrong VB6 ta được khuyên không nên code:Dim X As New Customervì VB6 không instantiate một Object Customer cho đến khi X được dùngđến - chuyện này rất nguy hiểm vì có thể tạo ra bug mà ta không ngờ.Trong VB.NET ta có thể yên tâm code:Dim X As New Customer()vì statement nói trên lập tức tạo ra một Object Customer.Tuyên bố Variable trong Scope của BlockCác bài tập Microsoft .NET 48Trong thí dụ dưới đây, variable X được declared trong một IF..THEN...END IF block. Khi execution ra khỏi IF block ấy, X sẽ bị hủydiệt.Do đó, VB.NET sẽ than phiền là X undefined vì nó không thấy X bênngoài IF block. Luật này cũng áp dụng cho những Blocks khác nhưDO...LOOP, WHILE...END WHILE, FOR...NEXT, .v.v..Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesButton1.Click Dim A As Integer = 5 Dim B As Integer = 5 If A = B Then Dim X As Integer X is declared in this IF block X = 12 End If A=X X has been destroyed, so it is undefined hereEnd SubCó lẽ bạn hỏi Declare Variable trong FOR...LOOP có lợi gì, tại sao takhông Declare một lần duy nhất ở đầu?Thứ nhất là Block giới hạn scope (phạm vi hoạt động) của một variableđể nó không đụng chạm ai dễ gây nên bug, thứ hai là trường hợp điểnhình ta sẽ cần feature này là trong một FOR...LOOP, cứ mỗi iteration tamuốn instantiate một Object mới. Khi ấy ta cần Declare một Objectvariable, instantiate Object , rồi chứa nó vào một collection chẳng hạn.Truy cập Variable/Class/StructureTrong VB.NET ta có thể quyết định giới hạn việc truy cập một Variable,Class, Structure .v.v. bằng cách dùng các keywords sau:Loại truy Thí dụ Chú thíchcập Cho phép ở đâu cũng dùng nó được. Ta chỉ Public Class có thể dùng Public ở mức độ Module,Public ClassForEverybody Namespace hay File. Tức là ta không thể dùng Public trong một Sub/Function.Các bài tập Microsoft .NET 49 Cho phép các classes con, cháu được dùng. Protected ClassProtected Ta chỉ có thể dùng Protected ở mức độ ClassForMyHeirs Class. Friend Cho phép code trong cùng một Project đượcFriend StringForThisProject As dùng. String Cho phép code trong cùng module, class, Private hay structure được dùng. Lưu ý là Dim coiPrivate NumberForMeOnly As ...