perl | Métodos en OOP

Los métodos se utilizan para acceder y modificar los datos de un objeto. Estas son las entidades que se invocan con el uso de objetos de una clase o un paquete en sí. Los métodos son básicamente una subrutina en Perl, no hay una identidad especial de un método. La sintaxis de un método es la misma que la de una subrutina. Al igual que las subrutinas, los métodos se declaran con el uso de subpalabras clave.

El método toma un objeto o el paquete en el que se invoca como su primer argumento. OOPs usa estos métodos para manipular los datos del objeto y no interactuar con el objeto directamente, esto se hace para mantener la seguridad de los datos para evitar que el programador cambie los datos de un objeto directamente. Esto se puede hacer usando varios métodos auxiliares, que toman el objeto como argumento y almacenan su valor en otra variable. Además, se realizan modificaciones en la segunda variable. Estas modificaciones no afectan los datos del objeto, por lo que lo hacen más seguro.

Tipos de métodos en Perl:

Según los argumentos pasados, los métodos se pueden clasificar en dos tipos: staticmétodo y virtualmétodo.

Un staticmétodo es aquel en el que el primer argumento pasado al método es el nombre de la clase. Las funcionalidades de un método estático se aplican a toda la clase porque toma el nombre de la clase como argumento. Estos métodos también se denominan métodos de clase . Dado que la mayoría de los métodos están en la misma clase, no es necesario pasar el nombre de la clase como argumento.
Ejemplo: Los constructores de una clase se consideran métodos estáticos.

Un virtualmétodo es aquel en el que la referencia al objeto se pasa como primer argumento a la función. En una función virtual, el primer argumento se cambia a una variable local y luego este valor se usa como referencia.

Ejemplo:

sub Student_data
{ 
    my $self = shift; 
        
    # Calculating the result 
    my $result = $self->{'Marks_obtained'} / 
                 $self->{'Total_marks'}; 
                     
    print "Marks scored by the student are: $result"; 
} 

Los métodos en la programación orientada a objetos requieren paréntesis para contener los argumentos, mientras que estos métodos se invocan con el uso de un operador de flecha ( -> ).

get-setMétodos:
los métodos se utilizan para brindar seguridad a los datos del objeto y, por lo tanto, se usan con la referencia del objeto o el valor se almacena en alguna otra variable y luego se usa. get-setLos métodos se utilizan en los OOP para proporcionar esta seguridad de datos a los objetos. get-methodayuda a obtener el valor actual del objeto y el set valuemétodo se utiliza para establecer un nuevo valor para el objeto.

Ejemplo:

# Declaration and definition of Base class 
use strict; 
use warnings; 
    
# Creating parent class 
package vehicle; 
  
# Setter method
sub set_mileage
{ 
    
    # shift will take package name 'vehicle'  
    # and assign it to variable 'class' 
    my $class = shift; 
        
    my $self = { 
                'distance'=> shift, 
                'petrol_consumed'=> shift
               }; 
        
    # Bless function to bind object to class 
    bless $self, $class; 
        
    # returning object from constructor 
    return $self; 
} 
    
# Getter method
sub get_mileage 
{ 
    my $self = shift; 
        
    # Calculating result 
    my $result = $self->{'distance'} / 
                 $self->{'petrol_consumed'}; 
                     
    print "The mileage by your vehicle is: $result\n"; 
      
} 
  
# Object creation and method calling
my $ob1 = vehicle -> set_mileage(2550, 170); 
$ob1->get_mileage(); 

Producción:

Publicación traducida automáticamente

Artículo escrito por Abhinav96 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *