02.-Metodos

download 02.-Metodos

of 12

Transcript of 02.-Metodos

  • 7/24/2019 02.-Metodos

    1/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas *

    C+P,T-LO /I0E1O E I"PLE"ENT+CI2N

    /E "3TO/O0 EN C#

    2

  • 7/24/2019 02.-Metodos

    2/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas

    3

    Preguntas detonadoras

    Qu es un mtodo?

    Cules son los tipos de mtodos? En qu se parecen?En qu difieren?

    Cmo se envan datos a los mtodos?

    Cundo se recomienda enviar parmetros por valor?

    Cundo por referencia?Por qu son importantes los mtodos para los

    obetos?

    !

    "4todos

    Contienen instrucciones para eecutar almomento de ser invocados"

    #n mtodo contiene$ %odificador de &cceso '(etermina su visibilidad)

    *ipo de dato '(evuelto al finali+ar su eecucin)

    ,dentificador '-ombre con el cual se invoca)

    Parmetros 'Cero o mas variables que recibe elmtodo)

  • 7/24/2019 02.-Metodos

    3/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas 5

    "4todosEn C. las subrutinas se conocen como

    mtodos/ se codifican como parte de una clase0 se clasifican en 1

    %*4(45

    Procedimientos 6 -4 devuelven valor

    7unciones 6 (evuelven un valor

    0inta)is de (os m4todos

    8

    < tipoValorDevuelto > < nombreMtodo > (< parmetros >)

    {

    < cuerpo >

    }

    Ejemplo:void Saludo( )

    {

    Console.Write(Hola);

    }

    void significa que NOdevuelve valor 'procedimiento)

  • 7/24/2019 02.-Metodos

    4/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas 6

    9

    Ejemp(o de un m4todo7en (a c(ase8

    class Carro

    {

    public void Encender()

    {

    System.Console.WriteLine("El Auto se ha

    encendido!");

    }

    }

    %odificadorde acceso

    *ipo de datodel valor re:resado

    ,dentificadorParmetros

    ;

    Procedimientos

    static void Imprimir()

    {

    Console.WriteLine(Nombre);

    Console.WriteLine(Edad);

    Console.WriteLine(Sueldo);

    }

  • 7/24/2019 02.-Metodos

    5/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas 9

    class Program

    {

    static void Main(string[] args)

    {

    Metodo(); // Se invoca (llamada)}

    static voidMetodo( )

    {

    . . . // Codificacin

    }

    }

  • 7/24/2019 02.-Metodos

    6/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas ;

    L(amadas de procedimientos

    ==

    class Program

    {

    static void Main(string[] args)

    {

    Procedimiento(); // Llamada

    }

    static void Procedimiento( )

    {

    Console.Write(Tec Laredo);

    return();// Fin del Procedimiento

    }

    }

    ElProcedimiento-4 devuelve

    valor

    =2

    "4todos

  • 7/24/2019 02.-Metodos

    7/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas >

    Par=metros recibidos por (osm4todos

    =3

    Parmetros

    Por valor 6 5e enva una copia del valor dela variable

    Por referencia 6 5e enva la direccin de lavariable

    En'?o de par=metros por 'a(or

    =!

    class Program

    {

    static void Main(string[] args)

    {

    int x=10;

    Metodo( x ); // Se envia el valor de x

    Console.Write(x=+x.ToString()); // x=10

    }

    static voidMetodo(int y)

    {

    y+=5;

    Console.Write(y=+y.ToString()); // y=15

    }

    }

  • 7/24/2019 02.-Metodos

    8/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas @

    En'?o de par=metros por reAerencia

    =

    static void Main(string[] args)

    {

    int x = 10;

    Metodo(ref x); // Se envia la referencia de x

    Console.WriteLine("x=" + x); // x=15

    Console.ReadKey();

    }

    static void Metodo(ref int y)

    {

    y += 5;

    Console.WriteLine("\n\ny=" + y); // y=15

    }

    El *ipo de dato@ del mtodo -4 es void@"

    (entro del mtodo debe Aaber una sentencia return@ con al:Bn valor deltipo de dato del mtodo"

    Eemplo '&l declararlo)$public string ConsultarEstado()

    {

    return estado;

    }

    &l llamar al mtodo 'desde el pro:rama)$string estado_actual = miCarro.ConsultarEstado();

    =8=8

    "4todos

  • 7/24/2019 02.-Metodos

    9/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas

    Parmetro enviadoa la funcin

    alor devuelto por laFuncin

    L(amadas de m4todos

  • 7/24/2019 02.-Metodos

    10/12

    Programacin Orientada a Objetos en C# .NET

    Ing. Bruno Lpez Takeas! ".C.ttp$%%&&&.itnue'o(aredo.edu.m)%Takeas *

    In'ocando m4todosclass Arbol

    {

    int Altura;

    public void Podar( )

    {

    Console.WriteLine(Podando );

    }

    }

    Arbol Pino = new Arbol(); // Se crea el objeto Pino

    Pino.Podar(); //Se invoca el mtodo Podar() del

    objeto Pino

    =