#class Address package Address; use strict; use warnings; #constructor sub new { my ($class) = @_; my $self = { _street => undef, _city => undef, _state => undef, _zip => undef }; bless $self, $class; return $self; } sub street { my ( $self, $street ) = @_; $self->{_street} = $street if defined($street); return $self->{_street}; } sub city { my ( $self, $city ) = @_; $self->{_city} = $city if defined($city); return $self->{_city}; } sub state { my ( $self, $state ) = @_; $self->{_state} = $state if defined($state); return $self->{_state}; } sub zip { my ( $self, $zip ) = @_; $self->{_zip} = $zip if defined($zip); return $self->{_zip}; } sub print { my ($self) = @_; print "Address: $self->{_street}\n". "$self->{_city}\n" . "$self->{_state}\n" . "$self->{_zip}\n\n" ; } 1;