Java中的接口
1. 在Java中,一个类只能够有一个直接的父类,但是一个类可以实现多个接口,Java采用这种方式实现多继承;
2. 接口的概念:
a.接口明确地描述了系统对外提供的所有服务,清晰地把系统的实现细节与接口分离,系统的实现细节由接口的实现类负责实现,接口负责对外描述系统提供的服务,对内描述系统应该具备的功能;
b.接口和抽象类都不能够被实例化,但是抽象类中可以包含具体的实现,这样可以提高代码的重用性,而接口不能包含任何具体的实现;
3.接口的特点
(1)接口中的成员变量必须全部是public,static,final类型(编译时常量),必须被显式地初始化;
(2)接口中的方法必须全部是public,abstract类型;
综合(1)(2)两点,接口中不能够出现:
A.实例变量
B.非抽象的实例方法
C.静态方法
(3)接口中没有构造方法,因为不能够创建接口的实例对象;
(4)一个接口不能够实现另外一个接口,只能够继承另外多个接口(类可以实现多个接口,接口可以继承多个接口),如果接口C同时继承接口A和B,则接口C成为符合接口;
(5)接口必须通过类实现它的抽象方法,当类实现某个接口时,它必须实现接口中所有的抽象方法,否则这个类必须被定义为抽象类
(6)不能够创建接口的实例,但可以创建接口类型的引用变量,该变量可以引用实现这个接口的类的实例
4.抽象类vs接口
4.1 相同点
(1)抽象类和接口都位于继承树的上层;
这里有一个设计思想:当一个系统(一个类)使用一棵继承树上的类时,应该尽可能地把引用变量声明为继承树的上层抽象类型,引用变�
相关文档:
List的用法
List包括List接口以及List接口的所有实现类。因为List接口实现了Collection接口,所以List接口拥有Collection接口提供的所有常用方法,又因为List是列表类型,所以List接口还提供了一些适合于自身的常用方法,如表1所示。
表1 List接口定义的常用方法及功能
从表1可以看出,List接口提供的适合于自身的 ......
在成功实现Java调用C++之后,接下来想到能否通过JNA实现Java调用Fortran,今天试验了一下,还是比较容易的。
网上有一个Java调用F95的例子,但是我考虑不仅要实现F95的调用,还要实现F77的调用,所以费了一些周折。
问题的关键在于F77为过程名自动添加了一个尾部的下划线,所以sub1这个过程,到Java一端,就变成了sub1_, ......
它可以导入库,调用外面的库函数,java语言就很好的地利用了这一点,jsp也可以在网页中调用java编写好的程序,要使用javabean标签
struts本身就是对java技术一个包装,包括,html,jsp及标签,servlet。
hibernate是别人编写好映射数据库的工具,其代码都是用java语言编写的,只是为了方便用户使用,用户只要导入其库,调用� ......
Java 反射是Java语言的一个很重要的特征,它使得Java具体了“动态性”。
在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法?答案是肯定的。这种动态获取类的信息以及动态调用对象的方法的功能来自于Java 语言的反射(Reflection)机制 ......