Java--接口和类集框架
一、接口
接口是静态常量和抽象方法的集合。也就是说,接口中只能有静态常量和抽象方法。
public interface Pet {
public static final int A = 10;
public abstract void eat();
public abstract void play();
}
public class Dog extends SuperClass implements Pet, IPet{
@Override
public void eat() {
System.out.println("狗在啃骨头");
}
@Override
public void play() {
System.out.println("狗在陪人玩");
}
@Override
public void fun() {
}
}
注意:
1、类实现接口的时候,必须实行接口的所有的抽象方法,如果没有全部实行,则这个类要标记为抽象类。
2、接口可以继承接口。可以把父接口的抽象方法全部继承过来。
3、java中继承是单继承,但是实现接口的时候是多实现。换句话说:一旦涉及到接口,就是可以继承或者实现多个接口。类与类之间只能是单继承。
4、在接口只,静态常量的修饰 public static final均可以省略。省略之后也是公共的静态常量
5、在接口中,抽象方法的public abstract 也可以省略,省略之后也是公共的抽象方法。
6、在实际开发中,这些修饰符一般都是省略的。
7、一个类可以继承一个类的同时,再去实现多个接口。
6、在既有继承又有实现的时候,必须是先继承再实现。
二、集合框架
数组的缺点:
1、长度固定,没有办法改变数组的长度。
2、数组的长度很多时候无法满足具体的需求。
3、删除数据和添加数据比较麻烦。
java为了克服数组的缺点,就设计了一个集合框架。
最大优点:动态的去调整集合的容量。
集合只能存储对象!!!
不能存储基本数据类型
如果需要存入基本数据类型,那么就应该使用这些基本数据类型的相应的包装类。
注意:
1、在迭代元素的过程中,移除元素只能使用迭代器的remove()方法。会移除刚刚next过的那个方法。(必须先next再remove)
2、在迭代的过程中,禁止使用集合对象的移除方法。否则会抛出异常java.util.ConcurrentModificationException
3、迭代的过程,除了调用迭代器的remove,进来避免去添加元素。