靜態方法和非靜態方法
阿新 • • 發佈:2021-07-13
什麼是靜態方法 什麼是非靜態方法
靜態方法 加了static修飾符的變數或者方法 一般通過 類名.變數名 來呼叫
非靜態方法 沒有加static的方法 通過物件.變數名來呼叫
示例
package com.oop.demo01; public class Demo02 { public static void main(String[] args) { // 靜態方法呼叫 a(); // 非靜態方法呼叫 Demo02 demo = new Demo02(); demo.b(); } // 靜態方法 跟類一起載入 public static void a() { System.out.println("我是靜態方法 a"); // b(); // Non-static method 'b()' cannot be referenced from a static context // a是一個靜態方法 此時 b方法還不存在 呼叫失敗 } // 非靜態方法 類例項化後才存在 public void b() { System.out.println("我是非靜態方法 b"); d(); c(); } public static void c(){ System.out.println("我是靜態 C方法"); } public void d(){ System.out.println("我是非靜態方法 D方法"); } }
輸出結果
小結
靜態方法跟類一起載入 非靜態方法例項化後才載入
所以 靜態方法中不能呼叫
非靜態方法
而非靜態方法可以呼叫 靜態方法 及 非靜態方法