CLR: .Net / Mono / Boo / Otros CLR > VB .NET
Funcion Como Private
ElNapster:
:mellow: que tal... tengo una duda... como hago referencia a una funcion Private ? para yo utilizarla en mi aplicacion ? :unsure:
Gracias :P
Mollense:
Buenas...
No trabajo con VB.NET pero supongo que la filosofía del paradigma OO se respeta y por lo tanto una función privada solamente es accesible por los métodos (funciones) de la misma clase.-
:hola:
ElNapster:
Por decirte tengo una funcion declarada asi
--- Código: Text ---Private Function Nombre (byval var1 as integer , byval var2 as integer) as integer dim var3 as integer nombre= var1+var2end funtion
y en donde la trato de usar segun lo que dices del paradigma de la OO
tendria que ser
Dim var as nombre ?
<_< no me deja ....
o como seria ?
Mollense:
Bueno, seguro que voy a meter la pata pero en fin...
Antes que nada, las funciones no se instancian, se usan. Lo que se instancia es la clase, de esta forma se obtiene un objeto que poseerá los atributos (Variables, constantes, etc) y los métodos (funciones) que se definieron en la clase.-
Si tuvieses por ejemplo una clase circunferencia-.
(Está en C# pero para que veas lo que digo es lo mismo)
--- Código: Text ---class Circunferencia{ public Circunferencia(double radio){ this.radio = radio; } private double radio; const double PI = 3.1415926; private double calcularPerimetro(){ return 2 * PI * this.radio; } public double Radio{ get{ return this.radio; } set{ this.radio = value; } } public double Perimetro{ get{ return calcularPerimetro();//Fijate como se llama a la función privada } } public double Area{ get{ return PI * Math.Pow(this.radio, 2); } } }
La usarías así:
--- Código: Text ---class CircunsferenciaApp{ static void Main(){ Circunferencia c = new Circunferencia(4);//Instanciamos un objeto de la clase Circunferencia //Luego usamos lo que está accesible (Todo lo public en este caso) en objeto (Atributos, funciones, etc) //Esto está bien... Console.WriteLine("El radio de la circunferencia es {0}", c.Radio); Console.WriteLine("El perímetro de la circunferencia es {0}", c.Perimetro); Console.WriteLine("El área de la circunferencia es {0}", c.Area); Console.WriteLine("Pulsa INTRO para incrementar el Radio en 1"); string a = Console.ReadLine(); c.Radio++; //Esto está bien... Console.WriteLine("El radio de la circunferencia es {0}", c.Radio); //Esto está bien... Console.WriteLine("El perímetro de la circunferencia es {0}", c.calcularPerimetro); //Esto está mal (El método calcularPerimetro es privado y solo puede utilizarce desde las funciones miembro de la misma clase ... Console.WriteLine("El área de la circunferencia es {0}", c.Area); //Esto está bien... a = Console.ReadLine(); } }
Espero que se entienda lo que quiero decir
Saludos :comp:
Cajami:
--- Cita de: "elnapster" --- Por decirte tengo una funcion declarada asi
--- Código: Text ---Private Function Nombre (byval var1 as integer , byval var2 as integer) as integer dim var3 as integer nombre= var1+var2end funtion
y en donde la trato de usar segun lo que dices del paradigma de la OO
tendria que ser
Dim var as nombre ?
<_< no me deja ....
o como seria ?
--- Fin de la cita ---
hola, que io sepa no se puede declarar una variable del tipo de una funcion, que tal si pruebas asi:
--- Código: Text ---Private Function Nombre (byval var1 as integer , byval var2 as integer) as integer dim var3 as integer nombre= var1+var2end funtion Dim Variable As IntegerVariable = Nombre (15,16)
Navegación
[#] Página Siguiente
Ir a la versión completa