您的位置:首页 > 编程语言 > Java开发

java核心技术----接口

2016-11-25 09:18 211 查看
接口:用来描述类具有什么功能,而并不给出每个功能的具体实现。

一个类可以实现一个或多个接口。

克隆(深拷贝):创建一个新对象,且新的对象的状态与原始对象的状态相同。当对克隆的新对象进行修改时,不会影响原始对象的状态。

内部类:内部类定义在另外一个类的内部,其中的方法可以访问包含它们的外部类的域。

接口:接口不是类,不能被实例化,而是对类的一组需求的描述,这些类要遵从接口描述的统一格式进行定义,也就是说要实现接口中的方法。

接口中的所有方法自动地属于public。接口中不能含有实例域,也不能在接口中实现方法。可以将接口看作是没有实例域的抽象类。

比如要对对象进行排序必须得实现Comparable接口:

public interface Comparable<T>
{
int compareTo(T other);
}
import java.util.Arrays;

/**
* Created by N3verL4nd on 2016/11/25.
*/

class test implements Comparable<test>{
private int score;

public test(int score){
this.score = score;
}

public int getScore() {
return score;
}

@Override
public int compareTo(test o) {
return (score - o.score);
}
}

public class HelloWorld {
public static void main(String[] args) {
test[] arr = new test[5];
arr[0] = new test(100);
arr[1] = new test(90);
arr[2] = new test(95);
arr[3] = new test(70);
arr[4] = new test(80);

Arrays.sort(arr);
for (test t : arr){
System.out.println(t.getScore());
}
}
}
接口不是类,不能使用new运算符实例化一个接口,但是却可以声明接口的变量,接口变量必须引用实现了接口的类对象,用以实现多态。

接口中不能包含实例域与静态方法,但却可以包含常量。接口中的域将自动设为public static final。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: