java为什么静态方法只能调用静态方法
2018-04-16 本文已影响0人
Alex_1799
因为静态方法是属于类的,动态方法属于实例对象,动态方法只有在对象实例化之后才存在,
如果静态方法能调用动态方法的话,那如果别人通过类名调用静态方法时实例对象可能并不存在,但是方法内又调用了对象的方法,由于对象不存在,所以动态方法也不存在,程序肯定报错,所以java直接在编译阶段检查这种错误,避免运行时异常
因为静态方法是属于类的,动态方法属于实例对象,动态方法只有在对象实例化之后才存在,
如果静态方法能调用动态方法的话,那如果别人通过类名调用静态方法时实例对象可能并不存在,但是方法内又调用了对象的方法,由于对象不存在,所以动态方法也不存在,程序肯定报错,所以java直接在编译阶段检查这种错误,避免运行时异常