読者です 読者をやめる 読者になる 読者になる

Perl日記

PerlとかRubyとかPHPとかPythonとか

祝福オブジェクトを祝福する

一度 bless で祝福されたオブジェクトをもう一度 bless で祝福するとどうなるんだろうと思ってやってみた。

#!/usr/bin/env perl
use strict;
use warnings;

package Animal;

sub new {
  my ($class, $args) = @_;
  bless $args, $class;
}

package Iron;

sub new {
  my ($class, $args) = @_;
  bless $args, $class;
}

package main;
use Data::Dumper;

my $animal = Animal->new({ name => 'Taro' });
print Dumper($animal);

print "---------------------------------\n";

my $iron = Iron->new($animal); # 動物から鉄を練成する!
print Dumper($iron);
$VAR1 = bless( {
                 'name' => 'Taro'
               }, 'Animal' );
---------------------------------
$VAR1 = bless( {
                 'name' => 'Taro'
               }, 'Iron' );


ああ、やっぱりちゃんと関連クラス名が変わるだけなのね。