大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> CGI专区 -> Perl教学(13)Perl的面向对象编程之一

Perl教学(13)Perl的面向对象编程之一

时间: 2021-07-31 作者:daque

    本章引见怎样运用perl的面向东西编制程序(oop)个性及怎样建立东西,还囊括接受、本领重载和数据封装等实质。一、模块简介模块(module)即是perl包(pachage)。perl中的东西鉴于对包中数据项的援用。(援用见第x章援用)。详见http://www.nease.net/tppmsgs/msgs0.htm#28的perlmod和perlobj。在用其它谈话举行面向东西编制程序时,先证明一个类而后创造该类的东西(范例),一定类一切东西的动作办法是沟通的,由类本领决定,不妨经过设置新类或从现存类接受来创造类。已熟习面向东西编制程序的人不妨在此遇到很多熟习的术语。perl从来是一个面向东西的谈话,在perl第5中学,语法略有变化,更典型化了东西的运用。底下三个设置对领会东西、类和本领在perl中怎样处事至关要害。.类是一个perl包,个中含供给东西本领的类。.本领是一个perl子步调,类名是其第一个参数。.东西是对类中数据项的援用。二、perl中的类再夸大一下,一个perl类是仅是一个包罢了。当你看到perl文书档案中提到“类”时,把它看作“包”就行了。perl5的语法不妨创造类,即使你已熟习c++,那么大局部语法你仍旧控制了。与perl4各别的观念是用双冒号(::)来标识基础类和接受类(子类)。面向东西的一个要害个性是接受。perl中的接受个性与其它面向东西谈话不实足一律,它只接受本领,你必需用本人的体制来实行数据的接受。由于每个类是一个包,以是它有本人的名字空间及本人的标记名关系数组(详见第x章关系数组),每个类所以不妨运用本人的独力标记名集。与包的援用贯串,不妨用单引号(')操纵符来定位类中的变量,类中分子的定位情势如:$class'$member。在perl第5中学,可用双冒号代替单引号来赢得援用,如:$class'$member与$class::$member沟通。三、创造类。本节引见创造一个新类的需要办法。底下运用的例子是创造一个称为cocoa的大略的类,其功效是输入一个大略的java运用的源码的需要局部。释怀,这个例子不须要你有java的常识,但也不会使你变成java大师,其手段是报告创造类的观念。开始,创造一个名为cocoa.pm的包文献(扩充名pm是包的缺省扩充名,意为perl module)。一个模块即是一个包,一个包即是一个类。在做其它事之前,先介入“1;”如许一条龙,当你减少其它行时,记取保持“1;”为结果一条龙。这是perl包的必定前提,要不该包就不会被perl处置。底下是该文献的基础构造。package cocoa;## put "require" statements in for all required,imported packages### just add code here#1; # terminate the package with the required 1;接下来,咱们往包里增添本领使之变成一个类。第一个需增添的本领是new(),它是创造东西时必需被挪用的,new()本领是东西的结构因变量。四、结构因变量结构因变量是类的子步调,它归来与类名关系的一个援用。将类名与援用相贯串称为“歌颂”一个东西,由于创造该贯串的因变量名为bless(),其语法为:bless yereference [,classname]yereference是对被“歌颂”的东西的援用,classname是可选项,指定东西获得本领的包名,其缺省值为暂时包名。创造一个建立因变量的本领为归来已与该类贯串的里面构造的援用,如:sub new {my $this = {}; # create an anonymous hash, and #self points to it.bless $this; # connect the hash to the package cocoa.return $this; # return the reference to the hash.}1; {}创造一个对不含键/值对的哈希表(即关系数组)的援用,归来值被赋给局域变量$this。因变量bless()掏出该援用,报告东西它援用的是cocoa,结果归来该援用。因变量的归来值此刻指向这个隐姓埋名哈希表。从new()因变量归来后,$this援用被废弃,但挪用因变量生存了对该哈希表的援用,所以该哈希表的援用数不会为零,进而使perl在外存中生存该哈希表。创造东西可如次挪用:$cup = new cocoa;

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.