在speak方法中不是又为head重新赋值了嘛,你调用speak的时候head的值已经不是大头了
void speak(String s) {head="歪着头"; System.out.println(s); } 这里有保head改成歪着头了。另外float head; ??应该是String head吧?