sub new{ my $class = shift; my %att = ( name => 'Foo', vname => 'Bär', @_); bless{ name => $att{name}, vname => $att{vname}, USER => {} }, $class; } sub add{ my $self = shift; my $att = shift; my $val = shift; $self->{USER}{$att} = $val; } my $m = main->new(name => 'booooo'); $m->add('PLZ','12345'); puts Dumper $m; # das gibt aus: $VAR1 = bless( { 'USER' => { 'PLZ' => '12345' }, 'name' => 'booooo', 'vname' => 'Bär' }, 'main' );