JAVA是否允许返回值类型不同的重载overload或覆盖override?
重载是一定不允许的。比如
class Super{void f(){}int f(){return 1;}}class Super{void f(){}}class Sub extends Super{int f(){return 1;}}class Grain{public String toString(){return "Grain";}}class Wheat extends Grain{public String toString(){return "Wheat";}}class Mill{Grain process(){//注意返回值return new Grain();}}class WheatMill extends Mill{Wheat process(){//注意返回值return new Wheat();}}public class CovariantReturn {public static void main(String[] args) {Mill m = new Mill();Grain g = m.process();System.out.println(g);m = new WheatMill();g = m.process();System.out.println(g);}}