#================= package BaseClass; #================= our $ID = 1; sub new { my $class = shift; return bless {}, $class; } sub id { my $self = shift; my $class = ref $self; return eval "\$${class}::ID"; } #================ package SubClass; #================ use base qw( BaseClass ); our $ID = 2; #============ package main; #============ my $obj = new SubClass; my $id = $obj->id(); print "$id\n";