`
mazhongjia
  • 浏览: 25399 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
1.java提供实现接口+继承抽象类两种方式可以用来定义允许多个实现的类型,也就是被扩展。 ·采用继承抽象类的方式 缺点:会破坏类的层次结构。单继承所导致 优点:   1)可以提供使用者(子类)实现上的帮助。我的理解 ...

自定义聚合函数

create or replace type string_sum_obj as object ( --聚合函数的实质就是一个对象 sum_string varchar2(4000), static function ODCIAggregateInitialize(v_self in out string_sum_obj) return number, --对象初始化 member function ODCIAggregateIterate(self in out string_sum_obj, value in varchar2) ...
系统的维护性(可扩展性)是由:“开-闭”原则、里氏代换原则、依赖倒转原则、组合/聚合复用原则所保证的。   系统的灵活性是由:“开-闭”原则、迪米特法则、接口隔离原则所保证的。   系统的复用性(可插入性)是由:“开-闭”原则、里氏代换原则、依赖倒转原则、组合/聚合复用原则所保证的。    
“重载(overload)”:  1、overload时,方法的参数类型、个数至少有一个不相同;  2、overload不检查:方法的返回类型、方法的访问权限、方法所抛异常 3、两个func完全是不同的函数。只是恰好函数名相同。这两个func在虚函数指针表占用了两个不同的Entry. vtable      Entry 1: void func(Number)      Entry 2: void func(String) 4、overload是编译期就决定了调用哪个函数;      编译器根据方法参数类型、个数的不同,产生了不同的调用函数地址(不同的Entry)的jvm指令5、overl ...
public class nhn { public static int f(int x){ if(x==0) return 0; else return 2 * f(x - 1) + x*x; } public static int f1(int x){ if(x==0) return 0; else{ int sum = 0; for(int i=0;i<=x;i++){ sum = sum * 2 + i*i; } return sum; } } pu ...
Global site tag (gtag.js) - Google Analytics