Diferencia entre revisiones de «Método (informática)»

m
Revertidos los cambios de 187.166.115.198 (disc.) a la última edición de Jkbw
m (Revertidos los cambios de 187.166.115.198 (disc.) a la última edición de Jkbw)
La diferencia entre un [[Subrutina|procedimiento]] (generalmente llamado ''función'' si devuelve un valor) y un método es que éste último, al estar asociado con un objeto o clase en particular, puede acceder y modificar los datos privados del objeto correspondiente de forma tal que sea consistente con el comportamiento deseado para el mismo. Así, es recomendable entender a un método no como una secuencia de instrucciones sino como la forma en que el objeto es útil (el método para hacer su trabajo). Por lo tanto, podemos considerar al método como el pedido a un objeto para que realice una tarea determinada o como la vía para enviar un mensaje al objeto y que éste reaccione acorde a dicho mensaje.
 
== Tipos de Suaj'smétodos ==
 
Como ya se mencionó, los métodos de instancia están relacionados con un objeto en particular, mientras que los métodos estáticos o de clase (también denominados métodos compartidos) están asociados a una clase en particular. En una implementación de [[Constructor (informática)|constructores]], siendo estos métodos de instancia especiales llamados automáticamente cuando se crea una instancia de alguna clase. En [[Lenguaje de programación Java|Java]] y [[C++]] se distinguen por tener el mismo nombre de la clases a la que están asociados. Lenguajes como [[jarcor'sSmalltalk]] no requieren constructores ni destructores.
 
Los ''métodos de acceso'' son un tipo de método normalmente pequeño y simple que se limita a proveer información acerca del estado de un objeto. Aunque introduce una nueva dependencia, la utilización de métodos es preferida a acceder directamente a la información para proveer de una nueva capa de [[abstracción (programación orientada a objetos)]]. Por ejemplo, si una clase que modela una cuenta bancaria provee de un método de acceso ''"obtenerBalance()"'' en versiones posteriores de la clase se podría cambiar el código de dicho método substancialmente sin que el código dependiente de la clase tuviese que ser modificado (un cambio sería necesario siempre que el [[tipo de dato]] devuelto por el método cambie). Los métodos de acceso que pueden cambiar el estado de un objeto son llamados, frecuentemente, ''métodos de actualización'' ó ''métodos de mutación''; a su vez, los objetos que proveen de dichos métodos son denominados ''objetos mutables''.