接口(四)
1.接口
1.1语法
public interface 接口名 extends 接口1,接口2...{
1.常量
2.抽象方法
}
1.2特点
a.用interface修饰
b.接口可以继承接口,多继承
c.接口内只能定义常量和抽象方法
d.接口不能实例化,但是可以作为子类的引用
e.实现接口的子类都必须实现它的所有抽象方法
f.规约
1.3实现接口
public class 类名 implements 接口名{
//实现方法
}
2.foreach循环和...
... :形参 里面出现,表示的是可变参数
foreach循环:
语法:for(数组元素类型 数组的元素值 :数组){}
for循环:
语法:for(int 下标=0;i<数组的长度;i++){数组元素值 数组[i]}
eg:Day12六
运行结果:
1 package Day12六; 2 3 public class Test { 4 5 public static void main(String[] args) { 6 dealArray(1); 7 dealArray(1,2); 8 dealArray(1,2,3); 9 } 10 11 //动态的数组-->固定长度 12 public static void dealArray(int... intArray){ 13 //for循环 14 //语法:for(int 下标=0;i<数组的长度;i++){数组元素值 数组[i]} 15 for(int i=0;i<intArray.length;i++){ 16 System.out.print(intArray[i]+" "); 17 } 18 System.out.println(); 19 20 //foreach循环 21 //语法:for(数组元素类型 数组的元素值 :数组){} 22 for(int i : intArray){ 23 System.out.print(i+" "); 24 } 25 System.out.println(); 26 } 27 }
接口代码如下:
1 package Day11四; 2 3 public interface A { 4 public void sub(); 5 }
1 package Day11四; 2 3 public interface B { 4 public void sub(); 5 }
1 package Day11四; 2 /** 3 * implements 实现 (接口) 4 * extends 父类(普通类,抽象类) 5 * @author Administrator 6 * 7 */ 8 public class ImpA implements MyInterface{ 9 10 //重写 11 public void add(){ 12 System.out.println("--实现父类的方法--"); 13 } 14 public void sub(){ 15 System.out.println("--实现A的方法--"); 16 } 17 }
1 package Day11四; 2 /** 3 * 特殊的抽象类 4 * 1.接口所有方法都是抽象方法 5 * 2.接口只能定义常量 6 * @author Administrator 7 * 8 */ 9 public interface MyInterface extends A,B{ 10 public static final int A=10; 11 public void add(); 12 }
1 package Day11四; 2 /* 3 * 引用多态:父类去引用子类实例 4 */ 5 public class Test { 6 public static void main(String[] args) { 7 int a=MyInterface.A; 8 System.out.println(a); 9 } 10 }
运行结果:
10