SlideShare una empresa de Scribd logo
1 de 38
VB.NET Dr. Diego Lz. de Ipiña Gz. de Artaza http://paginaspersonales.deusto.es/dipina
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],El lenguaje VB.NET
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencias  Option  I
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencias  Option  II
[object Object],[object Object],[object Object],[object Object],[object Object],Sentencias  Option  III
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencias  Imports
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Procedimiento  Main
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencias  Class ,  Module  y  Namespace
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencia  Class  I
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencia Class II
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencia Class III
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencia Class IV
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Ejemplos declaración clases
[  < attrlist >  ] [  Default  ] [  Public  |  Private  |  Protected  |  Friend  |  Protected Friend  ] _  [[  ReadOnly  |  WriteOnly  ] [  Overloads  |  Overrides  ] _ [  Overridable  |  NotOverridable  ] |  MustOverride  |  Shadows  |  Shared  ] _  Property   varname ( [  ByVal  parameter list  ] )  [  As   typename  ] [  Implements   interfacemember  ] [  < attrlist >  ]  Get   [  block  ]  End Get   [  < attrlist >  ]  Set(ByVal   value   As   typename  )  [  block  ]  End Set   End Property   Declaración de Propiedad
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Declaración de variable
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Declaración de constantes
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencias  If
Dim Number, Digits As Integer Dim MyString As String Number = 53  ' Inicializa variable. If Number < 10 Then Digits = 1 ElseIf Number < 100 Then Digits = 2 Else Digits = 3 End If If Digits = 1 Then MyString = &quot;One&quot; Else MyString = &quot;More than one&quot; Ejemplo  If
Dim Number As Integer = 8 Select Number ' Evalúa número. Case 1 To 5 ' Número entre 1 y 5 Debug.WriteLine(“Entre 1 y 5&quot;) Case 6, 7, 8 ' Número entre 6 y 8 Debug.WriteLine(“Entre 6 y 8&quot;) Case 9 To 10 ' Número entre 9 y 10 Debug.WriteLine(“Mayor que 8&quot;) Case Else ' Otros valores Debug.WriteLine(“No entre 1 y 10&quot;) End Select Sentencia  Select … Case
Dim Counter As Integer = 0 While Counter < 20 ‘ Evaluar el valor de Counter. Counter += 1 ' Incrementar Counter. End While  ' Finalizar cuando counter=20 Debug.WriteLine (Counter) ' Imprime 20 Sentencias iterativas ( While )
Dim Words, Digit As Integer Dim MyString As String For Words = 10 To 1 Step -1 ' Realizar 10 repeticiones For Digit = 0 To 9 ' Otras 10 MyString = MyString & CStr(Digit) 'Añadir num a string Next Digit  ' Incrementar counter MyString = MyString & &quot; &quot; ' Añadir un space. Next Words Sentencias iterativas ( For )
Module Test Sub F() Try G() Catch e As Exception Console.WriteLine(&quot;Exception in F: &quot; & e.Message) e = New Exception(&quot;F&quot;) ' Relanzar excepción. Throw e End Try End Sub Excepciones I
Sub G() Throw New Exception(&quot;G&quot;) End Sub Sub Main() Try F() Catch e As Exception Console.WriteLine(&quot;Exception in Main: &quot; & e.Message) End Try End Sub End Module Excepciones II
Delegate Function DoubleFunc(x As Double) As Double Class A Private f As New DoubleFunc(AddressOf Square) Overloads Shared Function Square(x As Single) As Single Return x * x End Function  Overloads Shared Function Square(x As Double) As Double Return x * x End Function   End Class Delegate s
Public Class EventSource ' Declara un evento Public  Event  LogonCompleted(ByVal UserName As String) Sub CauseEvent() ' Lanza un evento después de login correcto. RaiseEvent LogonCompleted(“Deusto&quot;) End Sub End Class Eventos
Interface ICustomerInfo  ' Declaración de una interfaz Property CustomerName() As String Sub UpdateCustomerStatus() Event UpdateComplete() End Interface Ejemplo complejo clases I
Public Class CustomerInfo ' CustomerInfo implementa interfaz IcustomerInfo Implements ICustomerInfo Private CustomerNameValue As String ' Para guardar el valor de la propiedad Public Event UpdateComplete() Implements ICustomerInfo.UpdateComplete Public Property CustomerName() As String Implements _ ICustomerInfo.CustomerName Get Return CustomerNameValue End Get Set(ByVal Value As String) CustomerNameValue = Value ' Guarda el valor del atributo. End Set End Property Public Sub UpdateCustomerStatus() Implements _ ICustomerInfo.UpdateCustomerStatus ' Añadir código para modificar estado cuenta ' Lanzar evento para indicar que este método se ha ejecutado. RaiseEvent UpdateComplete() End Sub End Class Ejemplo complejo clases II
‘  Métodos para probar clase Public Sub TestImplements() Dim Cust As New CustomerInfo() ' Asociar manejador para eventos lanzados por objeto Cust  AddHandler Cust.UpdateComplete, AddressOf HandleUpdateComplete ' Asignar valor a la propiedad CustomerName Cust.CustomerName = “Diego&quot; ' Recuperar y visualizar valor propiedad MsgBox(“Nombre cliente: &quot; & Cust.CustomerName) ' Invoca UpdateCustomerStatus para lanzar evento UpdateComplete event. Cust.UpdateCustomerStatus() End Sub Ejemplo complejo clases III
Sub HandleUpdateComplete() ' Manejador de evento para UpdateComplete. MsgBox(“Actualización completada.&quot;) End Sub Ejemplo complejo clases IV
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencia  Namespace
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Ejemplo  Namespaces
[  < attrlist >  ] [{  Overloads  |  Overrides  |  Overridable  |  NotOverridable  |  MustOverride  |  Shadows  |  Shared  }]  [{  Public  |  Protected  |  Friend  |  Protected Friend  |  Private  }]  Sub  name [ ( arglist ) ] [  Implements  interface.definedname ]  [ statements ]  [  Exit Sub  ]  [ statements ]  End Sub   Procedimientos con  Sub  I
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Procedimientos con  Sub  II
' Procedure Sub procedure con dos argumentos. Sub SubComputeArea(ByVal Length As Double, ByVal Width As Double) Dim Area As Double  ' Declara variable local.  If Length = 0 Or Width = 0 Then ' Si algún argumento es 0, salir del procedure Exit Sub ' Exit Sub immediately. ‘ equivalente a Return End If Area = Length * Width  ' Calcula área del rectángulo. Debug.WriteLine(Area)  ' Imprime valor de área. End Sub Ejemplo  Sub
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sentencia  Function
[object Object],[object Object],[object Object],Sentencias de compilación condicional
Hola Mundo en VB.NET '  fichero: hola.vb '  compilar: vbc hola.vb Imports System module Hello sub main() Console.WriteLine(“Hola desde VB.NET”) end sub end module
[object Object],[object Object],[object Object],[object Object],[object Object],Compilando y ejecutando Hola Mundo

Más contenido relacionado

La actualidad más candente

Fundamentos de programacion en java
Fundamentos de programacion en javaFundamentos de programacion en java
Fundamentos de programacion en javaJefferson Sarmiento
 
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...David Zapateria Besteiro
 
comandos
comandoscomandos
comandosarecerv
 
Tema 2 tipos de datos y expresiones en java por gio
Tema 2   tipos de datos y expresiones en java por gioTema 2   tipos de datos y expresiones en java por gio
Tema 2 tipos de datos y expresiones en java por gioRobert Wolf
 
Comandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# SharpComandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# SharpAna Ruth G H
 
Chuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantesChuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantesAbrirllave
 
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...David Zapateria Besteiro
 
Elementos del lenguaje java
Elementos del lenguaje javaElementos del lenguaje java
Elementos del lenguaje javaMarisol Henao
 
6 Principios de Programación Orientada a Objetos
6 Principios de Programación Orientada a Objetos6 Principios de Programación Orientada a Objetos
6 Principios de Programación Orientada a ObjetosJose Emilio Labra Gayo
 
Instrucciones(raptor, java, c#)
Instrucciones(raptor, java, c#)Instrucciones(raptor, java, c#)
Instrucciones(raptor, java, c#)Markoos Riveroo
 
Visual Basic
Visual  BasicVisual  Basic
Visual BasicBenedeti
 
Variables y Constantes en C++
Variables y Constantes en C++Variables y Constantes en C++
Variables y Constantes en C++ivanjvic
 
Introduccion Java
Introduccion JavaIntroduccion Java
Introduccion Javasvhurtado
 
Javascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSON
Javascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSONJavascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSON
Javascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSONDavid Zapateria Besteiro
 
Palabras Reservadas en C++
Palabras Reservadas en C++Palabras Reservadas en C++
Palabras Reservadas en C++ncrmax
 
13 PHP. Un Ejemplo Con Constantes
13 PHP. Un Ejemplo Con Constantes13 PHP. Un Ejemplo Con Constantes
13 PHP. Un Ejemplo Con ConstantesJosé M. Padilla
 

La actualidad más candente (20)

Fundamentos de programacion en java
Fundamentos de programacion en javaFundamentos de programacion en java
Fundamentos de programacion en java
 
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
 
comandos
comandoscomandos
comandos
 
Tema 2 tipos de datos y expresiones en java por gio
Tema 2   tipos de datos y expresiones en java por gioTema 2   tipos de datos y expresiones en java por gio
Tema 2 tipos de datos y expresiones en java por gio
 
Comandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# SharpComandos de Raptor, Java y C# Sharp
Comandos de Raptor, Java y C# Sharp
 
Chuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantesChuleta de lenguaje C para principiantes
Chuleta de lenguaje C para principiantes
 
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
 
Elementos del lenguaje java
Elementos del lenguaje javaElementos del lenguaje java
Elementos del lenguaje java
 
la instrucción if , Leer cadenas, caracteres
 la instrucción if , Leer cadenas, caracteres la instrucción if , Leer cadenas, caracteres
la instrucción if , Leer cadenas, caracteres
 
01 el lenguaje Python
01 el lenguaje Python01 el lenguaje Python
01 el lenguaje Python
 
6 Principios de Programación Orientada a Objetos
6 Principios de Programación Orientada a Objetos6 Principios de Programación Orientada a Objetos
6 Principios de Programación Orientada a Objetos
 
Instrucciones(raptor, java, c#)
Instrucciones(raptor, java, c#)Instrucciones(raptor, java, c#)
Instrucciones(raptor, java, c#)
 
Visual Basic
Visual  BasicVisual  Basic
Visual Basic
 
PPH MySql - FIEI - UNFV Clase02
PPH MySql - FIEI - UNFV Clase02PPH MySql - FIEI - UNFV Clase02
PPH MySql - FIEI - UNFV Clase02
 
Variables y Constantes en C++
Variables y Constantes en C++Variables y Constantes en C++
Variables y Constantes en C++
 
Introduccion Java
Introduccion JavaIntroduccion Java
Introduccion Java
 
Javascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSON
Javascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSONJavascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSON
Javascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSON
 
Palabras Reservadas en C++
Palabras Reservadas en C++Palabras Reservadas en C++
Palabras Reservadas en C++
 
Php
PhpPhp
Php
 
13 PHP. Un Ejemplo Con Constantes
13 PHP. Un Ejemplo Con Constantes13 PHP. Un Ejemplo Con Constantes
13 PHP. Un Ejemplo Con Constantes
 

Destacado

Webbrowser de vb 6.0 y vb.net
Webbrowser de vb 6.0 y vb.netWebbrowser de vb 6.0 y vb.net
Webbrowser de vb 6.0 y vb.netadezhiz
 
VB.NET Procedimientos y Funciones
VB.NET Procedimientos y FuncionesVB.NET Procedimientos y Funciones
VB.NET Procedimientos y FuncionesMarvin Romero
 
Funciones subrutinas y procedimientos
Funciones subrutinas y procedimientosFunciones subrutinas y procedimientos
Funciones subrutinas y procedimientosjnarchie
 
Visual Studio 2012
Visual Studio 2012Visual Studio 2012
Visual Studio 2012Byron Paguay
 
Ejercicios Excel 2010
Ejercicios Excel 2010Ejercicios Excel 2010
Ejercicios Excel 2010Ismael Fanlo
 

Destacado (6)

Webbrowser de vb 6.0 y vb.net
Webbrowser de vb 6.0 y vb.netWebbrowser de vb 6.0 y vb.net
Webbrowser de vb 6.0 y vb.net
 
VB.NET Procedimientos y Funciones
VB.NET Procedimientos y FuncionesVB.NET Procedimientos y Funciones
VB.NET Procedimientos y Funciones
 
Funciones subrutinas y procedimientos
Funciones subrutinas y procedimientosFunciones subrutinas y procedimientos
Funciones subrutinas y procedimientos
 
Visual studio introduccion
Visual studio introduccionVisual studio introduccion
Visual studio introduccion
 
Visual Studio 2012
Visual Studio 2012Visual Studio 2012
Visual Studio 2012
 
Ejercicios Excel 2010
Ejercicios Excel 2010Ejercicios Excel 2010
Ejercicios Excel 2010
 

Similar a 5 Vb.Net

Visual basic
Visual basicVisual basic
Visual basicmellcv
 
Programación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions NavisionProgramación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions Navisionpabloesp
 
Introducción a la programación
Introducción a la programaciónIntroducción a la programación
Introducción a la programaciónJavier Roig
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02Krizztiina Pacheko
 
2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje javaMargarita Romero
 
Fundamentos De Algoritmia
Fundamentos De AlgoritmiaFundamentos De Algoritmia
Fundamentos De Algoritmiacckokyco
 
3. elementos del lenguaje. variables y estructuras de datos
3.  elementos del lenguaje. variables y estructuras de datos3.  elementos del lenguaje. variables y estructuras de datos
3. elementos del lenguaje. variables y estructuras de datosPablo Pacheco
 
Programacion c# vbnet
Programacion c# vbnetProgramacion c# vbnet
Programacion c# vbnetKevin Reaño
 
Dce0 programacion oo_c#_vbnet
Dce0 programacion oo_c#_vbnetDce0 programacion oo_c#_vbnet
Dce0 programacion oo_c#_vbnetmaurgilez
 
Dce0 programacion oo_c#_vbnet
Dce0 programacion oo_c#_vbnetDce0 programacion oo_c#_vbnet
Dce0 programacion oo_c#_vbnetmaurgilez
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxxMar15marian
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxxMar15marian
 
Clase lenguaje c
Clase lenguaje c Clase lenguaje c
Clase lenguaje c Mar15marian
 

Similar a 5 Vb.Net (20)

Visual basic
Visual basicVisual basic
Visual basic
 
Programación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions NavisionProgramación con C/AL para Microsoft Business Solutions Navision
Programación con C/AL para Microsoft Business Solutions Navision
 
Introducción a la programación
Introducción a la programaciónIntroducción a la programación
Introducción a la programación
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
2introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate022introduccionallenguajejava 141109171757-conversion-gate02
2introduccionallenguajejava 141109171757-conversion-gate02
 
INTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVAINTRODUCCION LENGUAJE JAVA
INTRODUCCION LENGUAJE JAVA
 
2) introduccion al lenguaje java
2) introduccion al lenguaje java2) introduccion al lenguaje java
2) introduccion al lenguaje java
 
Lenguajes de Programación: Clases y objetos
Lenguajes de Programación: Clases y objetosLenguajes de Programación: Clases y objetos
Lenguajes de Programación: Clases y objetos
 
C sharp intro0
C sharp intro0C sharp intro0
C sharp intro0
 
Fundamentos De Algoritmia
Fundamentos De AlgoritmiaFundamentos De Algoritmia
Fundamentos De Algoritmia
 
3. elementos del lenguaje. variables y estructuras de datos
3.  elementos del lenguaje. variables y estructuras de datos3.  elementos del lenguaje. variables y estructuras de datos
3. elementos del lenguaje. variables y estructuras de datos
 
Programacion c# vbnet
Programacion c# vbnetProgramacion c# vbnet
Programacion c# vbnet
 
Dce0 programacion oo_c#_vbnet
Dce0 programacion oo_c#_vbnetDce0 programacion oo_c#_vbnet
Dce0 programacion oo_c#_vbnet
 
Dce0 programacion oo_c#_vbnet
Dce0 programacion oo_c#_vbnetDce0 programacion oo_c#_vbnet
Dce0 programacion oo_c#_vbnet
 
Programacion C#_vbnet
Programacion C#_vbnetProgramacion C#_vbnet
Programacion C#_vbnet
 
C sharp intro0
C sharp intro0C sharp intro0
C sharp intro0
 
C sharp intro0
C sharp intro0C sharp intro0
C sharp intro0
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
 
Clase lenguaje c
Clase lenguaje c Clase lenguaje c
Clase lenguaje c
 

5 Vb.Net

  • 1. VB.NET Dr. Diego Lz. de Ipiña Gz. de Artaza http://paginaspersonales.deusto.es/dipina
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. [ < attrlist > ] [ Default ] [ Public | Private | Protected  | Friend  | Protected Friend  ] _ [[ ReadOnly  | WriteOnly  ] [ Overloads | Overrides ] _ [ Overridable | NotOverridable ] | MustOverride | Shadows | Shared ] _ Property   varname ( [ ByVal parameter list ] ) [ As typename ] [  Implements   interfacemember  ] [ < attrlist > ] Get [ block ] End Get [ < attrlist > ] Set(ByVal value As typename ) [ block ] End Set End Property Declaración de Propiedad
  • 15.
  • 16.
  • 17.
  • 18. Dim Number, Digits As Integer Dim MyString As String Number = 53 ' Inicializa variable. If Number < 10 Then Digits = 1 ElseIf Number < 100 Then Digits = 2 Else Digits = 3 End If If Digits = 1 Then MyString = &quot;One&quot; Else MyString = &quot;More than one&quot; Ejemplo If
  • 19. Dim Number As Integer = 8 Select Number ' Evalúa número. Case 1 To 5 ' Número entre 1 y 5 Debug.WriteLine(“Entre 1 y 5&quot;) Case 6, 7, 8 ' Número entre 6 y 8 Debug.WriteLine(“Entre 6 y 8&quot;) Case 9 To 10 ' Número entre 9 y 10 Debug.WriteLine(“Mayor que 8&quot;) Case Else ' Otros valores Debug.WriteLine(“No entre 1 y 10&quot;) End Select Sentencia Select … Case
  • 20. Dim Counter As Integer = 0 While Counter < 20 ‘ Evaluar el valor de Counter. Counter += 1 ' Incrementar Counter. End While ' Finalizar cuando counter=20 Debug.WriteLine (Counter) ' Imprime 20 Sentencias iterativas ( While )
  • 21. Dim Words, Digit As Integer Dim MyString As String For Words = 10 To 1 Step -1 ' Realizar 10 repeticiones For Digit = 0 To 9 ' Otras 10 MyString = MyString & CStr(Digit) 'Añadir num a string Next Digit ' Incrementar counter MyString = MyString & &quot; &quot; ' Añadir un space. Next Words Sentencias iterativas ( For )
  • 22. Module Test Sub F() Try G() Catch e As Exception Console.WriteLine(&quot;Exception in F: &quot; & e.Message) e = New Exception(&quot;F&quot;) ' Relanzar excepción. Throw e End Try End Sub Excepciones I
  • 23. Sub G() Throw New Exception(&quot;G&quot;) End Sub Sub Main() Try F() Catch e As Exception Console.WriteLine(&quot;Exception in Main: &quot; & e.Message) End Try End Sub End Module Excepciones II
  • 24. Delegate Function DoubleFunc(x As Double) As Double Class A Private f As New DoubleFunc(AddressOf Square) Overloads Shared Function Square(x As Single) As Single Return x * x End Function Overloads Shared Function Square(x As Double) As Double Return x * x End Function End Class Delegate s
  • 25. Public Class EventSource ' Declara un evento Public Event LogonCompleted(ByVal UserName As String) Sub CauseEvent() ' Lanza un evento después de login correcto. RaiseEvent LogonCompleted(“Deusto&quot;) End Sub End Class Eventos
  • 26. Interface ICustomerInfo ' Declaración de una interfaz Property CustomerName() As String Sub UpdateCustomerStatus() Event UpdateComplete() End Interface Ejemplo complejo clases I
  • 27. Public Class CustomerInfo ' CustomerInfo implementa interfaz IcustomerInfo Implements ICustomerInfo Private CustomerNameValue As String ' Para guardar el valor de la propiedad Public Event UpdateComplete() Implements ICustomerInfo.UpdateComplete Public Property CustomerName() As String Implements _ ICustomerInfo.CustomerName Get Return CustomerNameValue End Get Set(ByVal Value As String) CustomerNameValue = Value ' Guarda el valor del atributo. End Set End Property Public Sub UpdateCustomerStatus() Implements _ ICustomerInfo.UpdateCustomerStatus ' Añadir código para modificar estado cuenta ' Lanzar evento para indicar que este método se ha ejecutado. RaiseEvent UpdateComplete() End Sub End Class Ejemplo complejo clases II
  • 28. ‘ Métodos para probar clase Public Sub TestImplements() Dim Cust As New CustomerInfo() ' Asociar manejador para eventos lanzados por objeto Cust AddHandler Cust.UpdateComplete, AddressOf HandleUpdateComplete ' Asignar valor a la propiedad CustomerName Cust.CustomerName = “Diego&quot; ' Recuperar y visualizar valor propiedad MsgBox(“Nombre cliente: &quot; & Cust.CustomerName) ' Invoca UpdateCustomerStatus para lanzar evento UpdateComplete event. Cust.UpdateCustomerStatus() End Sub Ejemplo complejo clases III
  • 29. Sub HandleUpdateComplete() ' Manejador de evento para UpdateComplete. MsgBox(“Actualización completada.&quot;) End Sub Ejemplo complejo clases IV
  • 30.
  • 31.
  • 32. [  < attrlist >  ] [{ Overloads | Overrides | Overridable  | NotOverridable  | MustOverride  | Shadows | Shared }] [{ Public | Protected | Friend | Protected Friend  | Private  }] Sub name [ ( arglist ) ] [  Implements  interface.definedname ] [ statements ] [ Exit Sub ] [ statements ] End Sub Procedimientos con Sub I
  • 33.
  • 34. ' Procedure Sub procedure con dos argumentos. Sub SubComputeArea(ByVal Length As Double, ByVal Width As Double) Dim Area As Double ' Declara variable local. If Length = 0 Or Width = 0 Then ' Si algún argumento es 0, salir del procedure Exit Sub ' Exit Sub immediately. ‘ equivalente a Return End If Area = Length * Width ' Calcula área del rectángulo. Debug.WriteLine(Area) ' Imprime valor de área. End Sub Ejemplo Sub
  • 35.
  • 36.
  • 37. Hola Mundo en VB.NET ' fichero: hola.vb ' compilar: vbc hola.vb Imports System module Hello sub main() Console.WriteLine(“Hola desde VB.NET”) end sub end module
  • 38.