靜態方法中調用非靜態方法


有時候面試的時候,面試官會問靜態方法里能不能調用非靜態方法,這時候呢,你的回答是什么呢?

雖然不能直接調用,但是可以間接的調用,可以通過將一個對象的引用傳入靜態方法中,再去調用該對象的非靜態方法。靜態方法通過用傳進來的對象引用調用非靜態方法,從而達到靜態方法調用非靜態方法。

 1 public class StaticMethodClass{
2 void NonStaticMethod(){
3 System.out.println("This is a non-sataic method.");
4 }
5
6 static void StaticMethod(StaticMethodClasst s){
7 System.out.println("This is a static method.");
8 s.NonStaticMethod();
9 }
10
11 public static void main(String[] args) {
12 StaticMethodClass obj=new StaticMethodClass();
13 StaticMethod(obj);
14 }
15 }

 

  


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com