SlideShare una empresa de Scribd logo
Métodos y   parámetros
Notas generales Uso de métodos Uso de parámetros Uso de métodos sobrecargados Práctica – Creación y uso de métodos
Uso de métodos Definición de métodos Llamadas a métodos Uso de la instrucción return Uso de variables locales Devolución de valores
Definición de métodos Main es un método Para definir métodos propios se usa la misma sintaxis using System; class  ExampleClass  {  static void  ExampleMethod ( )  { Console.WriteLine(" ExampleMethod "); } static void Main( )  { // ...  } }
Llamadas a métodos Una vez definido un método, se puede : Llamar a un método desde dentro de la misma clase Se usa el nombre del método seguido de una lista de parámetros entre paréntesis Llamar a un método que está en una clase diferente Hay que indicar al compilador cuál es la clase que contiene el método que se desea llamar El método llamado se debe declarar con la palabra  clave  public Usar llamadas anidadas Unos métodos pueden hacer llamadas a otros, que a su vez pueden llamar a otros métodos, y así sucesivamente
Uso de la instrucción return Return inmediato Return con una instrucción condicional static void  ExampleMethod ( ) { int numBeans; //... Console.WriteLine(&quot; Hello &quot;);  if (numBeans < 10)  return; Console.WriteLine(&quot; World &quot;); }
Uso de variables locales Variables locales Se crean cuando comienza el método Son privadas para el método Se destruyen a la salida Variables compartidas Para compartir se utilizan variables de clase Conflictos de ámbito El compilador no avisa si hay conflictos entre nombres locales y de clase
Devolución de valores El método se debe declarar con un tipo que no sea void Se añade una instrucción return con una expresión Fija el valor de retorno Se devuelve al llamador Los métodos que no son void deben devolver un valor static int  DosMasDos ( ) { int a,b; a = 2; b = 2; return a + b; } int x; x =  DosMasDos ( ); Console.WriteLine(x);
Uso de parámetros Declaración y llamadas a parámetros Mecanismos de paso de parámetros Paso por valor Paso por referencia Parámetros de salida Uso de listas de parámetros de longitud variable Normas para el paso de parámetros Uso de métodos recursivos
Declaración y llamadas a parámetros Declaración de parámetros Se ponen entre paréntesis después del nombre del método Se definen el tipo y el nombre de cada parámetro Llamadas a métodos con parámetros Un valor para cada parámetro static void  MethodWithParameters (int n, string y)  { ... } MethodWithParameters (2, &quot; Hola, mundo &quot;);
Mecanismos de paso de parámetros Tres maneras de pasar parámetros entrada Paso por valor entrada salida Paso por referencia salida Parámetros de salida
Paso por valor Mecanismo predeterminado para el paso de parámetros: Se copia el valor del parámetro Se puede cambiar la variable dentro del método No afecta al valor fuera del método El parámetro debe ser de un tipo igual o compatible static void  SumaUno (int x)  { x++; // Incrementar x } static void Main( )  { int k = 6; SumaUno (k); Console.WriteLine(k); //  Muestra el valor 6, no  7 }
Paso por referencia ¿Qué son los parámetros referencia? Una referencia a una posición de memoria Uso de parámetros referencia Se usa la palabra clave  ref  en la declaración y las llamadas al método Los tipos y valores de variables deben coincidir Los cambios hechos en el método afectan al llamador Hay que asignar un valor al parámetro antes de la  llamada al método
Parámetros de salida ¿Qué son los parámetros de salida? Pasan valores hacia fuera, pero no hacia dentro Uso de parámetros de salida Como  ref , pero no se pasan valores al método  Se usa la palabra clave  out  en la declaración y las llamadas al método  static void OutDemo(out int p)  { // ... } int n; OutDemo(out n);
Uso de listas de parámetros de longitud variable Se usa la palabra clave params Se declara como tabla al final de la lista de parámetros Siempre paso por valor static long AddList(params long[ ] v)  { long total, i; for (i = 0, total = 0; i < v.Length; i++) total += v[i]; return total; } static void Main( )  { long x = AddList(63,21,84); }
Normas para el paso de parámetros Mecanismos  El paso por valor es el más habitual El valor de retorno del método es útil para un solo valor ref  y/o  out  son útiles para más de un valor de retorno ref  sólo se usa si los datos se pasan en ambos sentidos  Eficiencia  El paso por valor suele ser el más eficaz
Uso de métodos recursivos Un método puede hacer una llamada a sí mismo Directamente Indirectamente Útil para resolver ciertos problemas
Uso de métodos sobrecargados Declaración de métodos sobrecargados Signaturas de métodos Uso de métodos sobrecargados
Declaración de métodos sobrecargados Métodos que comparten un nombre en una clase Se distinguen examinando la lista de parámetros class OverloadingExample { static int  Suma (int a, int b)  { return a + b; } static int  Suma (int a, int b, int c)  { return a + b + c; } static void Main( )  { Console.WriteLine( Suma (1,2) +  Suma (1,2,3)); } }
Signaturas de métodos Las signaturas de métodos deben ser únicas dentro de una clase  Definición de signatura Nombre del método Tipo de parámetro Modificador Forman la definición de la signatura Nombre de parámetro Tipo de retorno de método No afectan a la signatura
Uso de métodos sobrecargados Conviene usar métodos sobrecargados si : Hay métodos similares que requieren parámetros diferentes Se quiere añadir funcionalidad al código existente No hay que abusar, ya que : Son difíciles de depurar Son difíciles de mantener
Práctica  - Creación y uso de métodos

Más contenido relacionado

DOCX
Mapa conceptual del contenido de la unidad 4
PDF
Generalidades, tipos y ejemplos de Recursividad
PPT
Introduction to design and analysis of algorithm
PPTX
Introduction to c programming
PPTX
C# Inheritance
PPTX
Chapter 05 classes and objects
DOCX
Cuestionario de Algoritmos
PPTX
Types of algorithms
Mapa conceptual del contenido de la unidad 4
Generalidades, tipos y ejemplos de Recursividad
Introduction to design and analysis of algorithm
Introduction to c programming
C# Inheritance
Chapter 05 classes and objects
Cuestionario de Algoritmos
Types of algorithms

La actualidad más candente (20)

PPTX
Class, object and inheritance in python
PPT
Structure of C++ - R.D.Sivakumar
PPTX
Symbol Table
PPTX
Fundamentos básicos de la programación orientada a objetos
PPTX
STM-UNIT-1.pptx
PPTX
Data structure & its types
PPTX
Types of methods in python
PPT
Strongly Connected Components
PPTX
PPTX
Algoritmos recursivos
PPT
Graph coloring problem
PPT
programacion orientada a objetos
PPTX
Finite state Transducers and mealy Machine
PPT
Graph theory
PPT
Avl tree
PPTX
Advanced Python : Static and Class Methods
PDF
Constructor and Destructor
PPTX
Funciones recursivas
PPTX
Unidad 6
Class, object and inheritance in python
Structure of C++ - R.D.Sivakumar
Symbol Table
Fundamentos básicos de la programación orientada a objetos
STM-UNIT-1.pptx
Data structure & its types
Types of methods in python
Strongly Connected Components
Algoritmos recursivos
Graph coloring problem
programacion orientada a objetos
Finite state Transducers and mealy Machine
Graph theory
Avl tree
Advanced Python : Static and Class Methods
Constructor and Destructor
Funciones recursivas
Unidad 6
Publicidad

Similar a 5. Metodos Y Parametros (20)

PPT
5 metodos y parametros
PPTX
Metodos en java
PPTX
Metodos en java
PPTX
Metodosenjava 110504201809-phpapp02
PDF
IEN3.1 LOS PROCEDIMTOS EN JAVA NETBEANS.pdf
PDF
sentenciareturnymetodos
PPTX
Fundamentos de programación: Subprogramas
PPTX
Elementos caracteristicos de la poo
PDF
recurso6 (5).pdf
PPTX
Programación 1: modularización
PPTX
05 Creando Clases
PPTX
MéTodos
PPTX
MéTodos
PPTX
MéTodos
PPT
Encadenamiento de refactorings para generar cambios Agiles de Diseño
PPTX
P3 Programacion orientada a objetos con Java.pptx
PPTX
Instrucciones basicas-para-c-autoguardado
PPTX
Instrucciones basicas-para-c++
PPTX
Metodos,variables, pasodeparametros
PPTX
Parámetros
5 metodos y parametros
Metodos en java
Metodos en java
Metodosenjava 110504201809-phpapp02
IEN3.1 LOS PROCEDIMTOS EN JAVA NETBEANS.pdf
sentenciareturnymetodos
Fundamentos de programación: Subprogramas
Elementos caracteristicos de la poo
recurso6 (5).pdf
Programación 1: modularización
05 Creando Clases
MéTodos
MéTodos
MéTodos
Encadenamiento de refactorings para generar cambios Agiles de Diseño
P3 Programacion orientada a objetos con Java.pptx
Instrucciones basicas-para-c-autoguardado
Instrucciones basicas-para-c++
Metodos,variables, pasodeparametros
Parámetros
Publicidad

Más de Esteban Soraire (20)

PPT
Dce2 Introduccion Asp.Net
PPT
Dce2 Introduccion Win Forms
PPT
7. Fundamentos De Oo
PPT
8. Uso De Variables De Tipo Referencia
PPT
7. Fundamentos De Oo
PPT
8. Uso De Variables De Tipo Referencia
PPT
7. Fundamentos De Oo
PPT
8. Uso De Variables De Tipo Referencia
PPT
7. Fundamentos De Oo
PPT
6. Tablas
PPT
3. Uso De Variables De Tipo Valor
PPT
2. Introduccion A C#
PPT
1. Introduccion a .Net
PPT
10. Herencia
PDF
8. Practica A
PDF
10. Herencia
PDF
8. Uso De Variables De Tipo Referencia
PDF
6. Practica A
PDF
5. Metodos Y Parametros
PDF
4. Practica A
Dce2 Introduccion Asp.Net
Dce2 Introduccion Win Forms
7. Fundamentos De Oo
8. Uso De Variables De Tipo Referencia
7. Fundamentos De Oo
8. Uso De Variables De Tipo Referencia
7. Fundamentos De Oo
8. Uso De Variables De Tipo Referencia
7. Fundamentos De Oo
6. Tablas
3. Uso De Variables De Tipo Valor
2. Introduccion A C#
1. Introduccion a .Net
10. Herencia
8. Practica A
10. Herencia
8. Uso De Variables De Tipo Referencia
6. Practica A
5. Metodos Y Parametros
4. Practica A

5. Metodos Y Parametros

  • 1. Métodos y parámetros
  • 2. Notas generales Uso de métodos Uso de parámetros Uso de métodos sobrecargados Práctica – Creación y uso de métodos
  • 3. Uso de métodos Definición de métodos Llamadas a métodos Uso de la instrucción return Uso de variables locales Devolución de valores
  • 4. Definición de métodos Main es un método Para definir métodos propios se usa la misma sintaxis using System; class ExampleClass { static void ExampleMethod ( ) { Console.WriteLine(&quot; ExampleMethod &quot;); } static void Main( ) { // ... } }
  • 5. Llamadas a métodos Una vez definido un método, se puede : Llamar a un método desde dentro de la misma clase Se usa el nombre del método seguido de una lista de parámetros entre paréntesis Llamar a un método que está en una clase diferente Hay que indicar al compilador cuál es la clase que contiene el método que se desea llamar El método llamado se debe declarar con la palabra clave public Usar llamadas anidadas Unos métodos pueden hacer llamadas a otros, que a su vez pueden llamar a otros métodos, y así sucesivamente
  • 6. Uso de la instrucción return Return inmediato Return con una instrucción condicional static void ExampleMethod ( ) { int numBeans; //... Console.WriteLine(&quot; Hello &quot;); if (numBeans < 10) return; Console.WriteLine(&quot; World &quot;); }
  • 7. Uso de variables locales Variables locales Se crean cuando comienza el método Son privadas para el método Se destruyen a la salida Variables compartidas Para compartir se utilizan variables de clase Conflictos de ámbito El compilador no avisa si hay conflictos entre nombres locales y de clase
  • 8. Devolución de valores El método se debe declarar con un tipo que no sea void Se añade una instrucción return con una expresión Fija el valor de retorno Se devuelve al llamador Los métodos que no son void deben devolver un valor static int DosMasDos ( ) { int a,b; a = 2; b = 2; return a + b; } int x; x = DosMasDos ( ); Console.WriteLine(x);
  • 9. Uso de parámetros Declaración y llamadas a parámetros Mecanismos de paso de parámetros Paso por valor Paso por referencia Parámetros de salida Uso de listas de parámetros de longitud variable Normas para el paso de parámetros Uso de métodos recursivos
  • 10. Declaración y llamadas a parámetros Declaración de parámetros Se ponen entre paréntesis después del nombre del método Se definen el tipo y el nombre de cada parámetro Llamadas a métodos con parámetros Un valor para cada parámetro static void MethodWithParameters (int n, string y) { ... } MethodWithParameters (2, &quot; Hola, mundo &quot;);
  • 11. Mecanismos de paso de parámetros Tres maneras de pasar parámetros entrada Paso por valor entrada salida Paso por referencia salida Parámetros de salida
  • 12. Paso por valor Mecanismo predeterminado para el paso de parámetros: Se copia el valor del parámetro Se puede cambiar la variable dentro del método No afecta al valor fuera del método El parámetro debe ser de un tipo igual o compatible static void SumaUno (int x) { x++; // Incrementar x } static void Main( ) { int k = 6; SumaUno (k); Console.WriteLine(k); // Muestra el valor 6, no 7 }
  • 13. Paso por referencia ¿Qué son los parámetros referencia? Una referencia a una posición de memoria Uso de parámetros referencia Se usa la palabra clave ref en la declaración y las llamadas al método Los tipos y valores de variables deben coincidir Los cambios hechos en el método afectan al llamador Hay que asignar un valor al parámetro antes de la llamada al método
  • 14. Parámetros de salida ¿Qué son los parámetros de salida? Pasan valores hacia fuera, pero no hacia dentro Uso de parámetros de salida Como ref , pero no se pasan valores al método Se usa la palabra clave out en la declaración y las llamadas al método static void OutDemo(out int p) { // ... } int n; OutDemo(out n);
  • 15. Uso de listas de parámetros de longitud variable Se usa la palabra clave params Se declara como tabla al final de la lista de parámetros Siempre paso por valor static long AddList(params long[ ] v) { long total, i; for (i = 0, total = 0; i < v.Length; i++) total += v[i]; return total; } static void Main( ) { long x = AddList(63,21,84); }
  • 16. Normas para el paso de parámetros Mecanismos El paso por valor es el más habitual El valor de retorno del método es útil para un solo valor ref y/o out son útiles para más de un valor de retorno ref sólo se usa si los datos se pasan en ambos sentidos Eficiencia El paso por valor suele ser el más eficaz
  • 17. Uso de métodos recursivos Un método puede hacer una llamada a sí mismo Directamente Indirectamente Útil para resolver ciertos problemas
  • 18. Uso de métodos sobrecargados Declaración de métodos sobrecargados Signaturas de métodos Uso de métodos sobrecargados
  • 19. Declaración de métodos sobrecargados Métodos que comparten un nombre en una clase Se distinguen examinando la lista de parámetros class OverloadingExample { static int Suma (int a, int b) { return a + b; } static int Suma (int a, int b, int c) { return a + b + c; } static void Main( ) { Console.WriteLine( Suma (1,2) + Suma (1,2,3)); } }
  • 20. Signaturas de métodos Las signaturas de métodos deben ser únicas dentro de una clase Definición de signatura Nombre del método Tipo de parámetro Modificador Forman la definición de la signatura Nombre de parámetro Tipo de retorno de método No afectan a la signatura
  • 21. Uso de métodos sobrecargados Conviene usar métodos sobrecargados si : Hay métodos similares que requieren parámetros diferentes Se quiere añadir funcionalidad al código existente No hay que abusar, ya que : Son difíciles de depurar Son difíciles de mantener
  • 22. Práctica - Creación y uso de métodos