Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

Atributos de métodos

Propósito de los atributos de métodos

Especificar atributos en la definición de clase permite personalizar el comportamiento de los métodos para propósitos específicos. Controle características como el acceso, la visibilidad y la implementación estableciendo atributos de métodos. Las subclases no heredan atributos de miembros de superclases.

Especificar atributos de métodos

Asigne atributos de métodos en la misma línea que la palabra clave methods:

methods (Attribute1 = value1, Attribute2 = value2,...)
   ...
end

Tabla de atributos de métodos

Los atributos permiten modificar el comportamiento de los métodos. Todos los métodos admiten los atributos enumerados en la siguiente tabla.

Los valores de los atributos se aplican a todos los métodos definidos dentro del bloque de código methods...end que especifica los valores que no son los predeterminados.

Atributos de métodos

Nombre del atributo

Clase

Descripción

Abstract

logical predeterminado = false

Si es true, el método no tiene implementación. El método tiene una línea de sintaxis que puede incluir argumentos que utilizan las subclases cuando implementan el método:

  • No es necesario que las subclases definan el mismo número de argumentos de entrada y salida. Sin embargo, las subclases suelen utilizar la misma firma cuando implementan su versión del método.

  • El método no contiene las palabra clave function ni end, solo la sintaxis de función (por ejemplo, [a,b] = myMethod(x,y)).

  • El método puede incluir comentarios después de la línea de firma.

Access

  • enumeration; predeterminado = public

  • objeto meta.class

  • arreglo de celdas de objetos meta.class

Determina qué código puede llamar a este método:

  • public: acceso sin restricciones

  • protected: acceso desde métodos en clase o subclases

  • private: acceso solo por métodos de clase (no desde subclases)

  • Enumere clases que tienen acceso a este método. Especifique las clases como objetos meta.class en forma de:

    • Un solo objeto meta.class

    • Un arreglo de celdas de objetos meta.class. Un arreglo de celdas vacío, {}, es lo mismo que el acceso private.

    Consulte Class Members Access

Hidden

logical predeterminado = false

Cuando es false, el nombre del método aparece en la lista de métodos que se muestra utilizando los comandos methods o methodsview. Si se establece en true, el nombre del método no se incluye en estas enumeraciones e ismethod no devuelve true para este nombre de método.

Sealed

logical predeterminado = false

Si true, el método no se puede redefinir en una subclase. Intentar definir un método con el mismo nombre en una subclase produce un error.

Static

logical predeterminado = false

Especifique como true para definir un método que no depende de un objeto de la clase y que no necesita un argumento de objeto. Utilice el nombre de la clase para llamar al método: classname.methodname o a una instancia de la clase: obj.methodname.

Para obtener más información, consulte Métodos estáticos.

Atributos de marco

Las clases que utilizan determinadas clases básicas de marco tienen atributos específicos del marco. Consulte la documentación de la clase básica concreta que está utilizando para obtener información sobre estos atributos.

Consulte también

|

Temas relacionados