静态方法和非静态方法调用详解

1、静态方法不能直接调用非静态

2、非静态方法可以直接调用静态方法

原因:

    静态方法和类一起加载,非静态方法只有在创建对象时才会加载。所以才有了静态方法不能直接调用非静态(因为静态方法加载时类还没有初始化也就还没有非静态方法),非静态方法可以直接调用静态方法(因为非静态方法加载时静态方法早就加载了)。


 

public class Demo02 {
public void run(){
System.out.println("Running");
//非静态方法可以直接调用静态方法
sleep();
}

public static void sleep(){
System.out.println("sleep");
}

public static void main(String[] args) {
//静态方法可以直接调用静态方法,或者通过类名.方法名调用
sleep();
Demo02.sleep();

//run();报错
}
}
posted @   花田007  阅读(2098)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示