2012-06-05 119 views
0

我正在学习oracle中的面向对象的概念,并在某些方面有一些混淆 例如,我知道如何创建对象类型,但不知道什么意思不可实例化?面向对象的数据库术语

create or replace type compar_item_t as object(
com varchar2(50), 
chint varchar2(254), 

not instantiable member function getChint 
        return varchar2, 
       member function print 
        return varchar2 
) not instantiable not final;     

没有实例化的手段,我们不能实例化,或做什么最后期限意味着我的意思不是实例化不是最终的?; ?

回答

2

我认为这个文件可能会有所帮助,如果你不熟悉的人:

http://docs.oracle.com/cd/B19306_01/server.102/b14220/objects.htm

的Oracle对象技术是建立在Oracle的 关系技术的一个抽象层。

这意味着“这是我们的产品,所以我们做了我们自己的术语,因为我们走”)

不管怎么说,这是什么意思甲骨文通过“实例化”(一个字我不确定你会在大多数字典中找到,并且可能会被大多数拼写检查程序拒绝;))?从相同的链接:

声明一个方法为NOT实例化意味着该类型不是 提供用于该方法的实现....

一个NOT实例化类型的子类型可以覆盖任何的 超实例的非实例化方法,并提供具体的实现。如果有剩余的非实例方法, 亚型也必须一定被声明为NOT实例化....

所以我猜“非实例”是类似于“抽象基类”或“接口“在大多数其他OOP语言。

恕我直言......

+0

所以这意味着,那个对象,不可实例化是声明,不能访问函数? –