A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

如题:
是否可以从一个static方法内部发出对非static方法的调用?

2 个回复

倒序浏览
是否可以从一个static方法内部发出对非static方法的调用?
其实这个问题应该这样说:是否可以在一个静态方法内部直接发出对非静态方法的调用(即直接写出方法名)?
不可以;
静态方法是可以直接通过类名调用的(如 Arrays.sort() 数组工具类Arrays的排序方法),而非静态方法是随着对象的创建而加载进堆内存中的,需要通过对象来调用;
当通过类名直接调用静态方法时,对象可能还未创建,也就不能调用非静态方法了.
回复 使用道具 举报
而如果在静态方法内先创建本类的对象,然后通过该对象调用非静态方法,这样也是可以的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马