CREATE TYPE nom_type AS OBJECT (
nom_attribut1 type_attribut1
...
MEMBER FUNCTION nom_fonction1 (parametre1 IN|OUT type_parametre1, ...) RETURN type_fonction1
...
) [NOT FINAL];
/
CREATE TYPE BODY nom_type
IS
MEMBER FUNCTION nom_fonction1 (...) RETURN type_fonction1
IS
BEGIN
...
END ;
MEMBER FUNCTION nom_fonction2 ...
...
END ;
END ;
/
CREATE TYPE sous_type UNDER sur_type (
Déclarations spécifiques ou surcharges
) ;
Pour être héritable, un type doit être déclaré avec la clause optionnelle NOT FINAL
.
« The datatype cannot specify a length, precision, or scale. »
http://docs.oracle.com/cd/B13789_01/server.101/b10759/statements_5009.htm