在Java中,方法之间的调用有多种形式,以下是我整理的多种情况,为什么会这样?

银河系栋梁 2019-03-02 02:13:18
在Java中,方法之间的调用有多种形式,以下是我整理的多种情况,为什么会这样?
以下所说的方法和类都是public
1.使用methodName()的情况
(1)在同一个类中,非static方法调用非static方法或static方法
(2)在同一个类中,static方法之间互相调用
(3)递归调用
2.使用instanceName.methodName()的情况
(1)在同一个类中,static方法调用非static方法
(2)一个类中的方法调用另一个类中的非static方法
3.使用ClassName.methodName()的情况
(1)一个类中的方法调用另一个类中的static方法
4.使用this.methodName()的情况
(1)在同一个类中,非static方法之间互相调用
...全文
92 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
看static方法与非static方法的区别:
在类中使用static修饰的静态方法会随着类的定义而被分配和装载入内存中;
而非静态方法属于对象的具体实例,只有在类的对象创建时在对象的内存中才有这个方法的代码段。
也就是说static方法的加载先与非static方法。所以在类中static方法是无法调用非static方法的
咸哼酒家 2019-03-02
  • 打赏
  • 举报
回复
调用的格式都是:对象.方法
区别是被调用的方法和要调用的地方在不在同一个类中。
在一个类中, 可以用this.方法, 或者直接用方法
不在一个类中,如果是静态的,直接用类.方法 或者 实例化对象.方法 来调用

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧