base
クラスを継承する。
使い方:
①親クラスを指定する。
use base qw(親クラス(パッケージ名)のリスト);
②コンストラクタをオーバーライドする場合(引数なし):
package foo2;
use base qw(foo1);
sub new {
my $param = shift;
my $class = ref($param) || $param;
my $self =
$class->foo1::new;
$self;
}
③コンストラクタをオーバーライドする場合(引数を親クラスに渡す):
package foo2;
use base qw(foo1);
sub new {
my $param = shift;
my $class = ref($param) || $param;
my $self =
$class->foo1::new(@_);
$self;
}
④メソッドをオーバーライドする場合:
親クラスと同じメソッドを子クラスに書けばよい。
⑤親クラスのメソッドを呼び出す場合:
package foo2;
use base qw(foo1);
sub method
{
my $self = shift;
$self->foo1::method(@_);
}