摘要:
[root@wx03 test]# cat Horse.pm package Horse;use base qw(Critter);sub new {my $invocant = shift;my $class = ref($invocant) || $invocant;my $self = {... 阅读全文
摘要:
[root@wx03 test]# cat Horse.pm package Horse;use base qw(Critter);sub new {my $invocant = shift;my $class = ref($invocant) || $invocant;my $self = {... 阅读全文
摘要:
packge Mule;use base ("Horse", "donkey"); # 声明一个超类它是下面东西的缩写:package Mule;BEGIN {our @ISA = ("Horse", "Donkey");require Horse;require Donkey;}Horse 类... 阅读全文
摘要:
packge Mule;use base ("Horse", "donkey"); # 声明一个超类它是下面东西的缩写:package Mule;BEGIN {our @ISA = ("Horse", "Donkey");require Horse;require Donkey;}Horse 类... 阅读全文
摘要:
perl 为什么要用引用来做对象呢?因为一个重要的原因是 my 引用 脱离作用域,外部仍旧生效 阅读全文
摘要:
12.5.3 UNIVERSAL:最终的祖先类:你可以把 UNIVERSAL 看作最终的祖先,所 有类都隐含地从它衍生而来。INVOCANT->isa(CLASS)如果 INVOCANT 的类是 CLASS 或者任何从 CLASS 继承来的,isa 方法返回真。 除了包名字以外,CLASS还可以... 阅读全文
摘要:
12.5.3 UNIVERSAL:最终的祖先类:你可以把 UNIVERSAL 看作最终的祖先,所 有类都隐含地从它衍生而来。INVOCANT->isa(CLASS)如果 INVOCANT 的类是 CLASS 或者任何从 CLASS 继承来的,isa 方法返回真。 除了包名字以外,CLASS还可以... 阅读全文
摘要:
有时候,你希望一个衍生类的方法表现得象基类中的某些方法的封装器这就是 SUPER 伪类提供便利的地方。它令你能够调用一个覆盖了的基类方法,而不用声明 是哪个类定义了该方法。(注:不要把这个和第十一章的覆盖 Perl 的内建函数的机制混淆 了,那个不是对象方法并且不会被继承覆盖。你调用内建函数的覆... 阅读全文
摘要:
12.5.2 访问被覆盖的方法:当一个类定义一个方法,那么该子过程覆盖任意基类中同名的方法。[root@wx03 test]# cat Horse.pm package Horse;our @ISA = "Critter";sub new {my $invocant = shift;my $cl... 阅读全文
摘要:
12.5.2 访问被覆盖的方法:当一个类定义一个方法,那么该子过程覆盖任意基类中同名的方法。[root@wx03 test]# cat Horse.pm package Horse;our @ISA = "Critter";sub new {my $invocant = shift;my $cl... 阅读全文