假设我有以下包层次结构:
A--> B --> C --> D
这意味着A是基类并B从它C继承,然后从 B 继承,依此类推。
另外,假设我有以下代码行:
my $co = D->new();
有什么方法可以检查(某种UNIVERSAL方法?)对象co是否是 的后代A?(或者一般来说,测试一个对象X是否是 package 的后代P)
见通用。
if ($D->isa('A')) {print "do something fancy"}
或者
if ($D->can('method_defined_in_A')) {print "can do that";}