JAVA類之間方法的調(diào)用問題小結(jié)
注:調(diào)用方法——調(diào)用另一方法的方法
被調(diào)用方法——被調(diào)用的方法
一、靜態(tài)方法調(diào)用其他方法:
1. 靜態(tài)方法調(diào)用非靜態(tài)方法
無論是否在同一類內(nèi),均需要通過對象調(diào)用
//Test類
package main;
public class Test {
public void IsSon1(){//非靜態(tài)方法
System.out.println("java大爺,你成功調(diào)用了你非靜態(tài)方法里的兒子1");
}
public static void main(String[] args) {
Test son1=new Test();
son1.IsSon1();//靜態(tài)方法通過對象調(diào)用此類中的非靜態(tài)方法
Son son=new Son();//靜態(tài)方法通過對象調(diào)用Son類中的非靜態(tài)方法
son.IsSon();
}
}//Son類
package main;
public class Son {
public void IsSon(){
System.out.println("java大爺,你成功的調(diào)用了你另一個類里的兒子");
}//Son類里的非靜態(tài)方法
}
2.靜態(tài)方法調(diào)用靜態(tài)方法
同一類內(nèi)直接調(diào)用,不同類內(nèi)直接通過類名.方法名(參數(shù)表)調(diào)用
package main;
public class Test {
public static void IsSon2(){//靜態(tài)方法
System.out.println("java大爺,你成功調(diào)用了你靜態(tài)方法里的兒子2");
}
public static void main(String[] args) {
IsSon2();//靜態(tài)方法直接調(diào)用類內(nèi)的靜態(tài)方法
Son.IsSon3();//靜態(tài)方法通過類名直接調(diào)用Son類中的靜態(tài)方法
}
}package main;
public class Son {
public static void IsSon3(){
System.out.println("java大爺,你成功的調(diào)用了你另一個類里的靜態(tài)兒子3");
}//Son類里的靜態(tài)方法
}
二、非靜態(tài)方法調(diào)用其他方法
1.非靜態(tài)方法在同一類內(nèi)調(diào)用其他方法
在同一類內(nèi),非靜態(tài)方法可以直接調(diào)用靜態(tài)方法和非靜態(tài)方法
package main;
public class Test {
public void Son1(){//非靜態(tài)方法
System.out.println("java大爺,你成功調(diào)用了你非靜態(tài)方法里的兒子1");
}
public static void Son2(){//靜態(tài)方法
System.out.println("java大爺,你成功調(diào)用了你靜態(tài)方法里的兒子2");
}
public void alloutput(){
Son1();//非靜態(tài)方法直接調(diào)用類內(nèi)的非靜態(tài)方法△
Son2();//非靜態(tài)方法直接調(diào)用類內(nèi)的靜態(tài)方法△
}
public static void main(String[] args) {
Test test = new Test();
test.alloutput();//前邊已學靜態(tài)方法通過對象調(diào)用非靜態(tài)方法
}
}
2.非靜態(tài)方法在不同類之間調(diào)用其他方法
在不同類之間,非靜態(tài)方法需要通過對象才能調(diào)用非靜態(tài)方法。
非靜態(tài)方法既可以通過對象調(diào)用靜態(tài)方法又可以通過類名直接調(diào)用(由于對象的調(diào)用方式屬于非靜態(tài)調(diào)用方式,所以建議使用類名直接調(diào)用靜態(tài)方法)
package main;
public class Test {
public void output(){
Son.IsSon1();//通過類名直接調(diào)用Son類中的靜態(tài)方法,不建議使用對象調(diào)用靜態(tài)方法
Son son = new Son();
son.IsSon2();//通過對象調(diào)用Son類中的非靜態(tài)方法
}
public static void main(String[] args) {
//同一類中的靜態(tài)方法調(diào)用非靜態(tài)方法output,前邊已經(jīng)涉及到
Test test = new Test();
test.output();
}
}package main;
public class Son {
public static void IsSon1(){//Son類里的靜態(tài)方法
System.out.println("java大爺,你成功的調(diào)用了你另一個類里的靜態(tài)兒子1");
}
public void IsSon2(){//Son類里的非靜態(tài)方法
System.out.println("java大爺,你成功的調(diào)用了你另一個類里的非靜態(tài)兒子2");
}
}
到此這篇關(guān)于JAVA類之間方法的調(diào)用問題小結(jié)的文章就介紹到這了,更多相關(guān)java類方法調(diào)用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- java同一個類中,一個無事務(wù)方法調(diào)用一個有事務(wù)方法時,事務(wù)失效問題
- Java獲取調(diào)用當前方法的類名或方法名(棧堆信息)的四種方式舉例
- Java多線程run方法中直接調(diào)用service業(yè)務(wù)類應(yīng)注意的問題及解決
- 在java中由類名和方法名字符串實現(xiàn)其調(diào)用方式
- java子類調(diào)用父類的方法中包含子類重寫的實例方法
- Java中父類怎么調(diào)用子類的方法
- 利用java反射機制調(diào)用類的私有方法(推薦)
- 利用java反射機制實現(xiàn)自動調(diào)用類的簡單方法
- java 反射 動態(tài)調(diào)用不同類的靜態(tài)方法(推薦)
- Java動態(tài)調(diào)用類中方法代碼
相關(guān)文章
Java中SynchronousQueue的底層實現(xiàn)原理剖析
BlockingQueue的實現(xiàn)類中,有一種阻塞隊列比較特殊,就是SynchronousQueue(同步移交隊列),隊列長度為0。本文就來剖析一下SynchronousQueue的底層實現(xiàn)原理,感興趣的可以了解一下2022-11-11
Java實現(xiàn)SFTP文件上傳的詳細教程與代碼解析
在現(xiàn)代軟件開發(fā)中,文件傳輸是一個常見的需求,尤其是在需要將文件上傳到遠程服務(wù)器時,本文將詳細介紹如何使用Java實現(xiàn)SFTP文件上傳,需要的可以參考一下2025-05-05
Java對象在內(nèi)存中的布局是如何實現(xiàn)的?
Java對象在內(nèi)存中屬于oop-klass二分模型,即對象的實例數(shù)據(jù)和對象類型的元數(shù)據(jù)(字段定義、方法、常量池等元數(shù)據(jù))是分開存儲的.而由于JVM對對象內(nèi)相同寬度的字段分配在一起,所以只要指定了字段類型分配的順序,就可以計算出每種類型字段相對于當前對象的偏移起始位置2021-06-06
Java實戰(zhàn)小技巧之數(shù)組與list互轉(zhuǎn)
在Java中,經(jīng)常遇到需要List與數(shù)組互相轉(zhuǎn)換的場景,下面這篇文章主要給大家介紹了關(guān)于Java實戰(zhàn)小技巧之數(shù)組與list互轉(zhuǎn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2021-08-08

