静态方法和非静态方法调用详解
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();报错
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?