1接口与内部类 2 什么是接口? ?接口技术主要描述类具有什么功能,而并不给出每个功能的具体实现。?在 Java 程序设计中,接口不是类,而是一组对类的需求描述,这些类要遵从接口描述的统一格式进行定义。?“如果你的类遵从某个特定接口,那么我就履行这项服务”! ? Arrays 类中的 sort 方法承诺可以对对象数组进行排序,但要求满足下列前提: ?parable 接口。 parable 接口? Comparable 接口的代码: public parable { pareTo(Object other); } ?parable pareTo 方法,并且这个方法的参数必须是一个 object 对象,返回一个整形数值。 4 ?在 JDK 中, Comparable 接口已经改进为泛型类型: public parable< T> {pareTo( T other); } ?所有接口都是 public 的,所以可以省略关键字 public ; ?接口中的所有方法自动地属于 public ?在接口中声明方法时,不必提供关键字 public 。?parable pareTo 方法必须确实比较两个对象的内容,并返回比较的结果: ? x<y, 返回一个负值; x=y, 返回 0; x>y ,返回一个正值。 5 ?一个接口中可以包括多个方法,还可以定义常量; ?接口中不能含有实例域,也不能在接口中实现方法?提供实例域和方法实现的任务应该由实现接口的类来完成。?可以将接口看成没有实例域的抽象类?两者之间有区别 6 类如何实现接口?要将类声明为实现一个接口,需要使用关键字 implements : ? classname implements interfacename ? class Employee parable ?{ ? public pareTo(Object otherObject ) ? { Employee other = ( Employee)otherObject ; ? if (salary < ) return -1; ? if (salary > ) return 1; ? return 0; ? } … } ?实现接口时,必须把方法声明为 public ;否则,将为默认访问属性?包可见性 7 ? :接口改进为泛型类型? class Employee parable<Employee> ?{ ? public pareTo(Employee other) ? { ? if (salary < ) return -1; ? if (salary > ) return 1; ? return 0; ? } ?…?} 8 parable 接口? ?pareTo 方法,而必须 parable 接口? ? Java 是强类型语言?调用方法时将会检查方法是否存在: sort-- compareTo ?实现接口可以确保拥有相应方法: ? Comparable--- compareTo 9 接口的特性?接口不是类,不能使用 new 实例化? x=parable( …);//ERROR ?可以声明一个接口变量,来引用实现了接口的类对象: ? Comparable x; ? x= new Employee( …); ?可以使用 instanceof 检查一个对象是否实现了某个特定的接口: ? if ( anObject instanceof Comparable) { …} 10 ?可以建立接口的层次链结构?像类的接口一样,可以扩展接口: ? Public interface Moveable { void move(double x, double y); } public interface Powered extends Moveable { double milesPerGallon (); } ?一个实现 Powered 接口的类需要实现 move 和 milesPerGallon 方法.
JAVA-接口-课件【PPT演示稿】 来自淘豆网m.daumloan.com转载请标明出处.