Polymorphic copy: Difference between revisions

Content added Content deleted
(→‎{{header|Go}}: small update for library change)
No edit summary
Line 753:
}
}</lang>
 
=={{header|NetRexx}}==
{{trans|Java}}
<lang NetRexx>/* NetRexx */
options replace format comments java crossref savelog symbols binary
 
-- -----------------------------------------------------------------------------
class RCPolymorphicCopy public
 
method copier(x = T) public static returns T
return x.copy
 
method main(args = String[]) public constant
obj1 = T()
obj2 = S()
System.out.println(copier(obj1).name) -- prints "T"
System.out.println(copier(obj2).name) -- prints "S"
return
 
-- -----------------------------------------------------------------------------
class RCPolymorphicCopy.T public implements Cloneable
 
method name returns String
return T.class.getSimpleName
 
method copy public returns T
dup = T
 
do
dup = T super.clone
catch ex = CloneNotSupportedException
ex.printStackTrace
end
 
return dup
 
-- -----------------------------------------------------------------------------
class RCPolymorphicCopy.S public extends RCPolymorphicCopy.T
 
method name returns String
return S.class.getSimpleName
</lang>
 
=={{header|Objective-C}}==