WEB开发网
开发学院软件开发Java 面向 Java 开发人员的 db4o 指南: 结构化对象和集... 阅读

面向 Java 开发人员的 db4o 指南: 结构化对象和集合

 2010-04-01 00:00:00 来源:WEB开发网   
核心提示: 清单 8. 哇!办公室恋情!@TestpublicvoidtestEmployeeNativeQuery(){List<Employee>spouses=db.query(newPredicate<Person>(){publicbooleanmatch(Personca

清单 8. 哇!办公室恋情!

@Test public void testEmployeeNativeQuery() 
{ 
  List<Employee> spouses = 
    db.query(new Predicate<Person>() { 
      public boolean match(Person candidate) { 
        return (candidate.getSpouse() instanceof Employee); 
      } 
    }); 
  for (Person spouse : spouses) 
    System.out.println(spouse); 
} 

当执行此查询时,不会产生什么结果,因为现在此查询只查找配偶也在公司工作的 Employee。目前,数据库中的雇员都不满足这个条件。如果公司雇佣 Charlotte,那么会返回两个 Employee:Ted 和 Charlotte(但是人家说办公司恋情永远不会发生)。

在很大程度上,就是这样。继承不会对更新、删除和激活深度产生任何影响,只会影响到对象的查询方面。但是回想起 Java 平台提供的两种形式的继承:实现继承和接口继承。前者通过各种 extends 子句来实现,而后者通过 implements 来实现。如果 db4o 支持 extends,那么它也一定支持 implements,您将会看到,这有利于实现强大的查询功能。

都是关于接口的

就像任何 Java (或 C#)编程人员使用了一段时间这种语言后认识到的,接口对于建模非常有用。尽管不会经常看到,接口具有强大的 “隔离” 交叉在传统实现继承行中的对象的能力;通过使用接口,我可以声明某些类型为 Comparable 或者 Serializable,或者在本例中,Employable(是的,从设计的角度说这是大材小用了,但是用于教学还是很不错的)。

上一页  2 3 4 5 6 7 8  下一页

Tags:面向 Java 开发

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接