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 sub
palabras 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: static
método y virtual
método.
Un static
mé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 virtual
mé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-set
Mé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-set
Los métodos se utilizan en los OOP para proporcionar esta seguridad de datos a los objetos. get-method
ayuda a obtener el valor actual del objeto y el set value
mé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: