Perl是一种面向对象的、动态的、基于解释器的编程语言。在面向对象编程中,我们有三个主要方面,即对象、类和方法。对象是一种数据类型,可以作为其所属类的实例调用。它可以是不同数据类型的数据变量的集合,也可以是不同数据结构的集合。方法是处理类的这些对象的函数。
以下是一个基本示例, 可以更好地了解如何在Perl中使用对象:
第一, 我们需要定义类。在Perl中, 这是通过构建类的包来完成的。包是一个封装的实体, 其中包含有关类的所有数据成员和方法。
package Employee;
在这里, Employee是类名。
第二任务是创建包的实例(即对象)。为此, 我们需要一个构造函数。一种建设者是Perl中的子例程, 通常被赋予名称'新'。但是, 该名称是用户定义的, 因此不限于"新"。
package Employee;
# Constructor with name new
sub new
{
my $class = shift ;
my $self = {
_serialNum =>
shift , _firstName =>
shift , _lastName=>
shift , };
bless $self , $class ;
return $self ;
}
在构造函数中,我们定义了一个简单的散列引用$self来设计对象。这里,该对象将有雇员的三个值serialNum、firstName和lastName,这意味着与此相关的每个雇员都将拥有自己的一组序列号、firstName和lastName。my关键字是一个访问说明符,它将$class和$self本地化到封闭块中。shift关键字从默认数组“@_”获取包名,并将其传递给bless函数。
bless函数用于返回最终成为对象的引用。
最后, 构造函数将最终返回Employee类的实例(此处)。
最后, 主要部分是如何初始化对象。可以通过以下方式完成:
$object = new Employee(1, "Geeks", "forGeeks");
这里, $对象是标量变量, 是对在构造函数中定义的哈希的引用。
以下是在OOP中创建和实现对象的示例程序:
use strict;
use warnings;
# class with the name Employee
package Employee;
# constructor with the name new
sub new
{
# shift will take package name
# and assign it to variable 'class'
my $class = shift ;
# defining the hash reference
my $self = {
_serialNum =>
shift , _firstName =>
shift , _lastName =>
shift , };
# Attaching object with class
bless $self , $class ;
# returning the instance of class Employee
return $self ;
}# Object creation of the class
my $object = new Employee(1, "Geeks" , "forGeeks" );
# object here is a hash to a reference
print ( "$object->
{_firstName} \n" );
print ( "$object->
{_serialNum} \n" );
输出如下:
Geeks
1
【Perl如何理解和使用OOP中的对象(示例)】Perl中的对象的工作方式与其他语言(例如C ++, Java等)相同。上面的程序显示了Perl中对象的工作, 其创建以及在类中的使用。
推荐阅读
- AngularJS如何使用angular.isDate()函数(代码实例)
- 如何在Windows上安装VirtualBox(详细图解步骤)
- 2步给你不一样的windows开机画面
- 那些你不熟悉的Tasklist命令
- 分享加快电脑运行速度的15秘技
- 告辞windows的黑屏死机,3个提示帮你忙
- 盘点系统的那些开始及运行命令
- 轻简单松处理鼠标关机依旧发光的现象
- WindowsXP注册表秘籍