Perl Inherit Instance
Person.pm: #!/usr/bin/perl-w ? package Person; ? use strict; use English; use warnings; ? sub new { ? my $self = {}; ? ? shift; ? my ($name,$age) =@_; ? ? $self->{name} =$name; ? $self->{age} =$age; ? ? bless ($self); } ? sub change_name { ? my $self = shift; ? #print$self."n"; ? my $name = shift; ? #print$name."n"; ? ? $self->{name} =$name; } ? my $object_person = Person->new("Tom",26); print "Name:".$object_person->{name}."n"; ? $object_person->change_name("Jim"); print "Name:".$object_person->{name}."n"; ? ---------------------------------------------------------------------------------- ? Employee.pl: #!/usr/bin/perl -w ? package Employee; use Person; @ISA = qw(Person); ? use strict; use English; use warnings; ? sub new { ? shift; ? ? my ($name,$age,$salary) = @_; ? my $self = Person->new($name,$age); ? ? $self->{salary} = $salary; ? ? bless ($self); ? ? return $self; } ? sub change_salary { ? my $self = shift; ? my $new_salary = shift; ? ? $self->{salary} = $new_salary; } ? my $object_employee =Employee->new ("Tonny",28,10000); print "Name: " .$object_employee->{name} . ",Age: " . $object_employee->{age}. ",Salary: " .$object_employee->{salary} . ".n"; ? $object_employee->change_name("Tommy"); $object_employee->change_salary(13000); ? print "Name: " .$object_employee->{name} . ",Salary: " .$object_employee->{salary} . ".n"; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |