Object Oriented Database Oracle PLSQL

SQL>
SQL> CREATE OR REPLACE TYPE PriceType AS OBJECT (
  2      discount_rate   NUMBER (10, 4),
  3      price           NUMBER (10, 2),
  4      CONSTRUCTOR FUNCTION PriceType (price NUMBER)
  5         RETURN SELF AS RESULT
  6   )
  7   INSTANTIABLE FINAL;
  8   /
Type created.
SQL>
SQL>
SQL>
SQL> -- Body
SQL>
SQL> CREATE OR REPLACE TYPE BODY PriceType
  2   AS
  3      CONSTRUCTOR FUNCTION PriceType (price NUMBER)
  4         RETURN SELF AS RESULT
  5      AS
  6      BEGIN
  7         SELF.price := price * .9;
  8         RETURN;
  9      END PriceType;
 10   END;
 11   /
Type body created.
SQL>
SQL> show errors
No errors.
SQL>
SQL>