java编程,接口的使用~2
2014-02-16 23:57
253 查看
在接口声明后面的大括号括起来的部分,为接口的接口体。接口体由两部分组成:常量声明和方法声明。其语法格式如下所示。
[修饰符] interface 接口名称 [extends 父接口名称列表]{
// 常量声明 [public] [static] [final] 常量名称;
// 方法声明 [public] [abstract] 返回类型 方法签名;
}
说明:
? 常量声明:接口中可以包含有常量声明,也可以不包含,它不是必须的,根据需要而定。如果有常量声明的话,默认是public static final类型的,也就是说,接口中的所有字段都隐含地具有public、static和final属性。所以可以省略常量声明的修饰符public、static和final,其作用都是一样的。
? 方法声明:接口中的方法只有返回类型和方法签名,而没有方法体。接口中的方法都具有public和abstract属性,所以在声明方法时,可以省略前面的修饰符public和abstract,作用都是一样的。也就是说,即使声明方法时前面不使用修饰符,该方法也隐含地是public和abstract的。
下面定义的接口包含有对接口中常量的声明和方法的声明。
public interface GroupedInterface extends Interface1,Interface2,Interface3 {
// 常量声明
double E = 2.718282; // 自然对数的基数
//上面的变量声明等价于 public static final double E=2.718282语句
// 方法声明
void doSomething (int i, double x);
int doSomethingElse(String s);
}
在接口的接口体中,含有对接口所包含的所有方法的声明。接口所含有的方法声明后面紧跟一个分号,而不是花括号,因为一个接口不提供对它里面所声明的方法的实现。在一个接口中声明的所有方法都隐含是public的,所以public修饰符可以被省略。在接口中声明的所有常量,默认都是public static final类型的,如上面的常量E。因为常量是不可修改的,所以在接口中声明的常量必须要赋初值,并且在接口的实现类中可以使用这个常量,但不能重新赋值(修改)。例如,下面的类GroupedInterfaceImpl实现的接口GroupedInterface:
public class GroupedInterfaceImpl implements GroupedInterface {
{
//E = 3.718282; //错误。不可以修改常量的值
System.out.println(E);
}
@Override
public void doSomething (int i, double x) {
}
@Override
int doSomethingElse(String s){
}
public static void main(String[] args){
new GroupedInterfaceImpl();
}
}
接口的主要作用,是声明共同的常量或方法,用来为不同的类提供不同的实现,但这些类仍然可以保持同样的对外接口。接口可以被类实现,也可以被其他接口继承。在类中实现接口需要使用关键字implements。
[修饰符] interface 接口名称 [extends 父接口名称列表]{
// 常量声明 [public] [static] [final] 常量名称;
// 方法声明 [public] [abstract] 返回类型 方法签名;
}
说明:
? 常量声明:接口中可以包含有常量声明,也可以不包含,它不是必须的,根据需要而定。如果有常量声明的话,默认是public static final类型的,也就是说,接口中的所有字段都隐含地具有public、static和final属性。所以可以省略常量声明的修饰符public、static和final,其作用都是一样的。
? 方法声明:接口中的方法只有返回类型和方法签名,而没有方法体。接口中的方法都具有public和abstract属性,所以在声明方法时,可以省略前面的修饰符public和abstract,作用都是一样的。也就是说,即使声明方法时前面不使用修饰符,该方法也隐含地是public和abstract的。
下面定义的接口包含有对接口中常量的声明和方法的声明。
public interface GroupedInterface extends Interface1,Interface2,Interface3 {
// 常量声明
double E = 2.718282; // 自然对数的基数
//上面的变量声明等价于 public static final double E=2.718282语句
// 方法声明
void doSomething (int i, double x);
int doSomethingElse(String s);
}
在接口的接口体中,含有对接口所包含的所有方法的声明。接口所含有的方法声明后面紧跟一个分号,而不是花括号,因为一个接口不提供对它里面所声明的方法的实现。在一个接口中声明的所有方法都隐含是public的,所以public修饰符可以被省略。在接口中声明的所有常量,默认都是public static final类型的,如上面的常量E。因为常量是不可修改的,所以在接口中声明的常量必须要赋初值,并且在接口的实现类中可以使用这个常量,但不能重新赋值(修改)。例如,下面的类GroupedInterfaceImpl实现的接口GroupedInterface:
public class GroupedInterfaceImpl implements GroupedInterface {
{
//E = 3.718282; //错误。不可以修改常量的值
System.out.println(E);
}
@Override
public void doSomething (int i, double x) {
}
@Override
int doSomethingElse(String s){
}
public static void main(String[] args){
new GroupedInterfaceImpl();
}
}
接口的主要作用,是声明共同的常量或方法,用来为不同的类提供不同的实现,但这些类仍然可以保持同样的对外接口。接口可以被类实现,也可以被其他接口继承。在类中实现接口需要使用关键字implements。
相关文章推荐
- java多线程编程之使用runnable接口创建线程
- Java网络编程从入门到精通(11):使用NetworkInterface类获得网络接口信息
- 面向接口编程时不能使用java已经实现的类的
- 编程学习笔记之Java相关:接口(interface)的概念与使用
- 使用函数接口和枚举实现配置式编程(Java与Scala实现)
- Java使用简单工厂模式对面向接口编程模式的深度解耦实现
- Java使用简单工厂模式对面向接口编程模式的深度解耦实现
- 举例说明Java设计模式编程中ISP接口隔离原则的使用
- [改善Java代码]异步运算考虑使用Callable接口
- java 类里面定义接口的使用
- [Jweb] JSP-编程 05 JSP 使用 javabean
- Java接口定义以及使用(标准定义)
- [原]Java多线程编程学习笔记之六:使用synchronized获取互斥锁的几点说明
- Java接口定义以及使用(代理设计)
- YinXiangMa_SDK_For_Java_V2.0接口开发者使用说明
- 编程实践:使用java访问mySQL数据库
- Java spi机制 面向接口的编程
- java:使用匿名类直接new接口 或者 new类
- 《Java 编程技巧1001条》第413条:使用mouseEnter 和 mouseExit
- java使用接口(翻译自Java Tutorials)