1 package com.neusoft.interfaced;
2 /**
3 * 接口:
4 * 语法:interface 接口名{
5 * public static final 变量1=值1;
6 * public abstract 返回值类型 方法名(形参);
7 * }
8 * 1.接口和类是一样的,可以定义自己的成员变量和成员方法,可以通过继承产生子接口
9 * 2.接口的命名方法:interface前面可以有public修饰或无权限修饰符。
10 * 当无权限修饰符的时候,接口仅仅在包内可用。如果有public则可以被任何包所用。
11 * 3.接口里面的变量:使用public static final修饰,这三个关键字部分可省,也可全部
12 * 省略,public的意思是在包内外都可见,static是静态变量,final声明的是常量。
13 * 4.接口中的方法:使用public abstract修饰,这两个关键字均可省,
14 * 接口中只能定义抽象方法。(只能有方法的声明不能有方法的实现)。
15 * 5.java中通过实现多个接口来实现多继承,使用关键词implement
16 *
17 */
18 public interface InterfaceDemo {
19 public static final String DESCRIPTION="二维图形的面积接口";
20 public abstract double getArea();
21 public abstract double getPerimeter();
22 }
1 package com.neusoft.interfaced;
2
3 public class Rectangle implements InterfaceDemo {
4
5 double width;
6 double height;
7
8 public Rectangle(double width, double height) {
9 super();
10 this.width = width;
11 this.height = height;
12 System.out.println(DESCRIPTION);
13 }
14 @Override
15 public double getArea() {
16 // TODO Auto-generated method stub
17 return width*height;
18 }
19 @Override
20 public double getPerimeter() {
21 // TODO Auto-generated method stub
22 return (width+height)*2;
23 }
24
25 }