#!/usr/bin/perl use strict; use warnings; use Data::Dumper; package Class; my %class_hash; sub new { my $class = shift; my $value = shift || 'default'; my $self = { value => $value }; bless $self, $class; return $self; } sub set_class_hash { my $self = shift; my ($k, $v) = @_; $class_hash{$k} = $v; } sub get_class_hash { my $self = shift; my $k = shift; return $class_hash{$k}; } package main; my $obj1 = new Class('one'); $obj1->set_class_hash('color', 'red'); print Dumper $obj1; my $obj2 = new Class('two'); print $obj2->get_class_hash('color'), "\n"; print Dumper $obj2;