package Father;
use warnings;
use strict;
sub new {
my $class = shift;
my $self = {};
bless ($self, $class);
return $self;
}
# INTERFACE
sub aText {
#implement
die('Parent aText');
}
sub aList {
# implement
die('Parent aList');
}
1;
####
package Son;
use warnings;
use strict;
use Father;
use base qw(Father);
use constant {
aText => 'This is a Text',
aList => [qw(aaa bbb ccc)],
};
sub print_son {
my $self = shift;
print 'Son:', $self->aText(), "\n";
print 'Son: ', join(', ', @{$self->aList()}), "\n";
}
1;
##
##
#! /usr/bin/perl
use strict;
use warnings;
use Son;
my $s = Son->new();
print $s->aText(), "\n";
print join(', ', @{$s->aList()}), "\n";
$s->print_son();