En este artículo, comprenderemos las clases definidas por el usuario en MATLAB.
Programación orientada a objetos:
El diseño de programas orientados a objetos implica:
- Identifique los componentes del sistema o aplicación que desea construir.
- Analizar e identificar patrones para determinar qué componentes se utilizan repetidamente o comparten características.
- Clasificar componentes en base a similitudes y diferencias.
Los elementos básicos de la programación orientada a objetos son: Objetos, Clases, Herencia, Abstracción, Polimorfismo y Encapsulación. En el que el objeto y la clase son los dos principios básicos de la programación orientada a objetos.
Clases y Objetos:
Un objeto es una entidad del mundo real que vemos a nuestro alrededor. Cada objeto tiene sus propiedades y método (características y comportamiento). Por ejemplo, considere un automóvil. Un Auto es un objeto que tiene propiedades o características como color, tamaño, nombre del modelo. Y métodos como conducir, aplicar bocina, aplicar descanso, etc.
Una clase es un modelo de los objetos o la colección de objetos. Sabemos que los objetos contienen algunas características y comportamientos también conocidos como Atributo y Método. Con el uso de Class, podemos usar atributos y métodos. Las clases definidas por el usuario son clases que un usuario define en función de sus necesidades. Esta es la sintaxis para crear una clase definida por el usuario:
Sintaxis:
classdef userdefinedClassName properties end methods end end
classdef es la palabra clave que se utiliza para definir la clase definida por el usuario en Matlab. El punto importante a tener en cuenta es que el nombre del archivo y el nombre de la clase deben coincidir. En el siguiente ejemplo, crearemos un nuevo archivo llamado geeksforgeeks.m y definiremos la clase con el nombre geeksforgeeks.
Ejemplo 1:
Matlab
% MATLAB code for user-defined class classdef geeksforgeeks properties courses practice_session contest end methods end end
Producción:
=> <object geeksforgeeks> courses: [] practice_session: [] contest: []
Ejemplo 2:
Matlab
% MATLAB code for user-defined class classdef geeks properties courses practice_session end methods end end
Producción:
invalid classdef definition, the class name must match the filename
En los cursos de ejemplo anteriores, Practice_session son los atributos de clase que se inicializan con las propiedades de clase.
Creando un Objeto de Clase:
Una vez que tenemos la clase definida, podemos acceder a los atributos de la clase creando una instancia u objeto de la clase. Esta es la sintaxis para crear un objeto y usar su propiedad.
Sintaxis:
object_name = classname object_name.property
Ejemplo 3:
Matlab
% MATLAB code for create object in class geeks = geeksforgeeks //here geeks is an object //dot notation to access the attributes geeks.practice_session = "Microsoft Interview"; display(geeks.practice_session); display(geeks.courses);
Producción:
Microsoft Interview [](0x0)
Ejemplo 4:
Matlab
% MATLAB code for object creation geeks.courses = "DSA Preparation"; display(geeks.courses);
Producción:
DSA Preparation
Creando Constructor:
Hasta ahora hemos discutido cómo manejar las propiedades, ahora veremos cómo trabajar con métodos en clases definidas por el usuario. Los métodos se utilizan para cambiar el comportamiento del atributo de clase que se define como la función de clase. El constructor se describe como el nombre del método con el nombre exacto del nombre de la clase. Por ejemplo, en el siguiente ejemplo, anime() es un Constructor
Cree un nuevo archivo y nombre el nombre de la clase con el nombre del archivo.
Ejemplo 5:
Matlab
classdef anime properties(constant) name end methods function obj = anime() obj.name = "One Piece" end end end
Producción:
ans= One Piece