package User; use strict; ... sub new { my ($pkg,$pw, $userName, $home,$shell) = @_; bless { password => $pw || "Changeme", name => $userName, home => $home || "/usr/home/$userName", shell => $shell || "/usr/bin/bash" }, $pkg; } sub changePasswd { my $obj = shift; my $oldPassword = shift; my $newPassword = shift; ... $obj->{password} = newPassword; } ... 1;