#!/usr/bin/perl use strict; use warnings; package Obj; sub new { my $class = shift; my $self = {}; bless $self, $class; $self->initialize(); return $self; } sub initialize { my $self = shift; $self->{ a } = 10; return $self; } package main; my $obj = Obj->new; print $obj->{'a'};