import java.util.*;public class Test { static List list; static Set set; public static void main(String[] args){ Student stu1 = new Student("001","zhang","100"); Student stu2 = new Student("002","zhao","200"); Student stu3 = new Student("003","li","300"); Teacher tea1 = new Teacher("004","wang","400"); Teacher tea2 = new Teacher("005","yang","500"); List list = new ArrayList(); list.add(stu1); list.add(stu2); list.add(stu3); list.add(tea1); list.add(tea2); Test.show(); list.clear(); Test.show(); } private static void show() { for(int i = 0; i<list.size(); i++){ Person p = (Person)list.get(i); p.eat(); } }}出现了空指针异常,这是为什么?