package Father;
sub new {
my $class = shift;
return bless { news => undef }, $class;
}
1;
####
package Daughter;
use parent qw(Father);
sub status {
my $self = shift;
$self->{news} = 'bad';
return $self;
}
sub other {
my $self = shift;
return $self;
}
1;
####
package Son;
use parent qw(Father);
sub set {
my $self = shift;
$self->{news} = 'good';
return $self;
}
1;
####
use lib '.';
use Daughter;
use Son;
use Data::Dumper;
my $daughter = Daughter->new()->status;
print Dumper($daughter);
my $son = Son->new()->set;
print Dumper($son);
$daughter->other;
print Dumper($daughter);
####
$ perl 11156317.pl
$VAR1 = bless( {
'news' => 'bad'
}, 'Daughter' );
$VAR1 = bless( {
'news' => 'good'
}, 'Son' );
$VAR1 = bless( {
'news' => 'bad'
}, 'Daughter' );