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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

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

6 个回复

倒序浏览
OverloadOverride的区别。Overloaded的方法是否可以改变返回值的类型?

回复 使用道具 举报
不可以。。。
回复 使用道具 举报

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

不可以。静态只能调用静态,静态是随着类的加载而加载,此时还没有加载非静,内存中有了静态,没有非静态,所以静态不能调用非静态。
Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?

1、重载只看同名函数参数列表。(即只看函数括号内的内容,与返回值无关)
2、覆写要一模一样(包括返回值、函数名、参数列表)
3、如果在一个类中,有两个函数,它们名称相同、参数列表相同,只是返回值不同,是不可以存在同一个类中的,这两个就是同一个函数。

如果想看看效果,自己可以将各种情况的函数代码写在eclipse里。eclipse会自动提示你可不可以这样写。自己有疑问时,可以这样来测试,然后再找原因或者总结规律。
回复 使用道具 举报
不可以。静态只能调用静态,静态是随着类的加载而加载,此时还没有加载非静,内存中有了静态,没有非静态,所以静态不能调用非静态。
解释的很好,我也受教了,只是知道不能调用,没法解释的那么详细
回复 使用道具 举报
你说的是一个类里面还是两个类里面?
回复 使用道具 举报
jumtop 中级黑马 2015-8-31 22:07:55
7#
应该是不行的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马