Java泛型接口详解及示例代码
时间: 2023-07-29 19:09:18 浏览: 142
Java泛型接口是指在接口中定义泛型类型的接口,可以在接口中使用泛型类型来定义方法参数类型、返回值类型或者接口自身的类型。下面是一个简单的泛型接口示例:
```java
public interface MyList<T> {
void add(T element);
T get(int index);
int size();
}
```
上面的示例中,定义了一个 MyList 接口,使用泛型类型 T 来表示列表中元素的类型,包含了三个方法:add、get 和 size,分别用于向列表中添加元素、获取列表中指定位置的元素和获取列表的大小。
下面是一个实现 MyList 接口的示例代码:
```java
public class ArrayList<T> implements MyList<T> {
private T[] array;
private int size;
public ArrayList() {
array = (T[]) new Object[10];
size = 0;
}
@Override
public void add(T element) {
if (size == array.length) {
T[] newArray = (T[]) new Object[array.length * 2];
System.arraycopy(array, 0, newArray, 0, array.length);
array = newArray;
}
array[size++] = element;
}
@Override
public T get(int index) {
if (index < 0 || index >= size) {
throw new IndexOutOfBoundsException();
}
return array[index];
}
@Override
public int size() {
return size;
}
}
```
上面的示例中,定义了一个 ArrayList 类,实现了 MyList 接口,使用泛型类型 T 来表示列表中元素的类型。在 add 方法中,如果列表已满,则扩容数组;在 get 方法中,如果索引超出列表范围,则抛出 IndexOutOfBoundsException 异常。
使用泛型接口可以使代码更加通用和灵活,可以适用于各种不同类型的数据结构和算法。
阅读全文