モジュール分けすることは今まででもやってたけど、
継承はする意味がないかなと思ってやってなかった。
んで、必要がでてきたので継承をしてみたんだけど、
@ISAを使うのはなんか嫌だなと思って探してみた。
こうすればできるみたい。
package InheriteClass;
use BaseClass;
use base qw(BaseClass);
sub new {
my $class = shift;
my $self = $class->SUPER::new; # コンストラクタの呼び出し
return bless($self, $class);
}
1;
perlではC++やJavaのようなnewはないので、慣例的にnewメソッドをコンストラクタとして書く。
(当たり前すぎて面白くもない?)
んで、アクセス指定子なんてご大層なものはないので、
継承すると基底クラスのメソッド、プロパティは使い放題。
(そもそも、なんでも使い放題なんだが。これなんとかならんのかな?)
No comments:
Post a Comment