第 7 章 Perl OOP

简介:

目录

7.1. Moose - A postmodern object system for Perl 5

Person.pm

		
package Person;s
use strict;

sub new {
	my $self = {};
	$self->{NAME} = undef;
	$self->{AGE} 	= undef;
	$self->{PEERS}= [];
	bless($self);
	return $self;
}

sub name {
	my $self = shift;
	if(@_) {$self->{NAME}=shift}
	return $self->{NAME};
}

sub age {
	my $self = shift;
	if(@_) {$self->{AGE} = shift}
	return $self->{AGE};
}

sub peers {
	my $self = shift;
	if(@_) { @{$self->{PEER}} = @_}
	return @{$self->{PEERS}};
}


1;
		
	
		
use Person;

$person = Person->new();
$person->name('name');

print  $person->{NAME}		
		
	

7.1. Moose - A postmodern object system for Perl 5

MooseX::Declare - Declarative syntax for Moose





原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。

目录
相关文章
|
4月前
|
存储 索引 Perl
Perl 教程 之 Perl 面向对象 5
Perl的面向对象编程涉及匿名哈希表或数组来存储对象属性。类通过`@ISA`数组实现继承,如Employee继承Person。在Employee.pm中声明`@ISA = qw(Person)`。在main.pl中,创建Employee对象并调用方法,显示继承功能。程序输出显示姓名的变化。
49 0
|
10天前
|
PHP 开发者
探索PHP中的面向对象编程(OOP)
【9月更文挑战第4天】在数字世界中,PHP以其灵活性和易用性成为了许多开发者的首选。本文将深入浅出地介绍PHP的面向对象编程(OOP),从基础概念到实际应用,带领读者一步步理解类、对象、继承、封装等核心理念。通过实际代码示例,我们将展示如何利用这些OOP特性来构建更高效、可维护的PHP应用程序。无论你是初学者还是有经验的开发者,这篇文章都将为你提供新的视角和深入的理解。
|
2天前
|
设计模式 PHP 开发者
深入理解PHP中的面向对象编程(OOP)
PHP作为一种广泛使用的服务器端脚本语言,其面向对象编程(OOP)特性为开发者提供了一种高效、模块化的编程方式。本文将探讨PHP中OOP的基本概念、核心原则以及实际应用技巧,帮助读者更好地理解和运用这一强大的编程工具。
9 4
|
5天前
|
存储 PHP 开发者
PHP中的面向对象编程:掌握OOP的核心概念
在PHP的海洋中,面向对象编程(OOP)是一艘强大的船,它让开发者能够以更加组织和高效的方式构建应用程序。本文将带你领略OOP的魅力,从类与对象的创建到继承、封装、多态等高级特性的应用,我们将一步步深入探索PHP的OOP世界。无论你是初学者还是有一定经验的开发者,这篇文章都将成为你技能提升的助推器。
|
4月前
|
存储 Java 程序员
Python中的面向对象编程(OOP)详解
Python中的面向对象编程(OOP)详解
39 0
|
4月前
|
存储 索引 Perl
Perl 教程 之 Perl 面向对象 6
Perl 面向对象编程有两种实现:匿名哈希表和数组方式。教程中展示了基于哈希表的继承示例,Employee 类继承并重写了 Person 类的方法。在Employee中,`new`构造函数被重写,添加了新属性,`getFirstName`被重写,还新增了`setLastName`和`getLastName`方法。在主程序中,创建Employee对象并调用这些方法,显示了方法重写和辅助函数的使用效果。
38 3
|
4月前
|
存储 索引 Perl
Perl 教程 之 Perl 面向对象 3
Perl的面向对象编程涉及两种实现:匿名哈希表引用和数组引用。对象是类(Perl包)中数据项的引用,方法是接收类名或对象作首参的子程序。
28 3
|
4月前
|
存储 索引 Perl
Perl 教程 之 Perl 面向对象 1
Perl的面向对象编程涉及两种实现:使用匿名哈希表存储对象属性的引用,或使用数组为每个属性创建行索引。对象是类的实例,类是包含方法的Perl包。方法是接受对象或类名作为首参的子程序。`bless()`函数用于构建对象,将引用与类关联。
22 3
|
4月前
|
存储 索引 Perl
Perl 教程 之 Perl 面向对象 4
Perl的面向对象涉及两种对象实现:匿名哈希表和数组。对象是类的实例,类是包含方法的Perl包。方法是接收对象引用作为首参的子程序。`bless()`函数用于构造对象。以下是一个Person类的例子,包含`new`构造器、`getFirstName`和`setFirstName`方法。在`employee.pl`脚本中,创建Person对象并演示了方法的使用。输出显示了姓名的设置和获取过程。
27 2
|
4月前
|
存储 索引 Perl
Perl 教程 之 Perl 面向对象 8
Perl面向对象教程展示了两种实现:通过匿名哈希表或数组存储对象属性。示例中,`MyClass`与子类`MySubClass`被定义,后者继承并扩展了父类方法。在主程序中,创建并调用了对象,演示了构造、方法调用、继承及自动调用析构函数的过程。
35 1