java核心技术----接口
接口:用来描述类具有什么功能,而并不给出每个功能的具体实现。
一个类可以实现一个或多个接口。
克隆(深拷贝):创建一个新对象,且新的对象的状态与原始对象的状态相同。当对克隆的新对象进行修改时,不会影响原始对象的状态。
内部类:内部类定义在另外一个类的内部,其中的方法可以访问包含它们的外部类的域。
接口:接口不是类,不能被实例化,而是对类的一组需求的描述,这些类要遵从接口描述的统一格式进行定义,也就是说要实现接口中的方法。
接口中的所有方法自动地属于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。
Keep it simple!