package TestClass; use base qw(ConfClass); sub new { my $class = shift; my $self = $class->SUPER::new(); # Initialize the superclass ConfClass here. ... # Do whatever you want. return $self; } #### package TestClass; use ConfClass; sub new { my $self = {}; bless $self; $self->conf(ConfClass->new()); } sub conf { my ($self, $conf) = @_; $self->{'_CONF'} = $conf if $conf; return $self->{'_CONF'}; }