① 怎麼實現javascript中調用java類中的方法
為了方便網頁和Android應用的交互,Android系統提供了WebView中JavaScript網頁腳本調用Java類方讓冊納法的機制。只要調用addJavascriptInterface方法即可映射一個Java對象到JavaScript對象上。
1、映射Java對象到JavaScript對象上
代碼如下:
mWebView = (WebView) findViewById(R.id.wv_content);
mWebView.setVerticalScrollbarOverlay(true);
final WebSettings settings = mWebView.getSettings();
settings.setSupportZoom(true);
//WebView啟用Javascript腳本執行
settings.setJavaScriptEnabled(true);
settings.(true);
//映射Java對象到一個名為」js2java「的Javascript對象上
//JavaScript中可以通過"window.js2java"來調用Java對象的方法
mWebView.addJavascriptInterface(new JSInvokeClass(), "js2java");
代碼如下:
/**網頁Javascript調姿鍵用介面**/
class JSInvokeClass {
public void back() {
activity.finish();
}
}
2、JavaScript調坦沒用Java對象示例
調用上述JSInvokeClass類對象的back方法,如下:
復制代碼 代碼如下:
window.js2java.back();
② java中一個類怎麼調用另一個類中的函數
1、導入包:import md5.md5;
2、創建對象:md5 obj=new md5();
3、調用函數:obj.getMD5ofStr(" "); //裡面的內容自己給
③ java怎麼在main函數調用其他類的方法
new 出來。
比如有個classaa類
classaa(){
}
aaa=newaa();
④ java一個類怎麼調用另外一個類的主方法
1、與一般調用沒什麼差別,直接new 出來另一個類的對象,調用方法即可。
B裡面代碼
publicclassB{
publicstaticvoidmain(Stringargs[]){
System.out.println("thisisB");
}
}
A裡面代碼
publicstaticvoidmain(Stringargs[])
{
Bb=newB();
b.main(args);
}
運行A效果:
⑤ 關於用java反射調用一個類裡面的方法並執行
Java中要用到反射,首先就必須要獲取到對應的class對象,在Java中有三種方法獲取類對應的class對象。
1、通過類的.class屬性
2、通過類實例的getClass()方法獲取
3、通過Class.forName(String className)方法獲取
現在比如在package下有個類Calculator
publicclassCalculator{
publicdoubleadd(doublescore1,doublescore2){
returnscore1+score2;
}
publicvoidprint(){
System.out.println("OK");
}
publicstaticdoublemul(doublescore1,doublescore2){
returnscore1*score2;
}
}
publicclassCalculatorTest{
publicstaticvoidmain(String[]args)throwsException{
//通過類的.class屬性獲取
Class<Calculator>clz=Calculator.class;
//或者通過類的完整路徑獲取,這個方法由於不能確定傳入的路徑是否正確,這個方法會拋ClassNotFoundException
// Class<Calculator>clz=Class.forName("test.Calculator");
//或者new一個實例,然後通過實例的getClass()方法獲取
// Calculators=newCalculator();
// Class<Calculator>clz=s.getClass();
//1.獲取類中帶有方法簽名的mul方法,getMethod第一個參數為方法名,第二個參數為mul的參數類型數組
Methodmethod=clz.getMethod("mul",newClass[]{double.class,double.class});
//invoke方法的第一個參數是被調用的對象,這里是靜態方法故為null,第二個參數為給將被調用的方法傳入的參數
Objectresult=method.invoke(null,newObject[]{2.0,2.5});
//如果方法mul是私有的private方法,按照上面的方法去調用則會產生異常NoSuchMethodException,這時必須改變其訪問屬性
//method.setAccessible(true);//私有的方法通過發射可以修改其訪問許可權
System.out.println(result);//結果為5.0
//2.獲取類中的非靜態方法
Methodmethod_2=clz.getMethod("add",newClass[]{double.class,double.class});
//這是實例方法必須在一個對象上執行
Objectresult_2=method_2.invoke(newCalculator(),newObject[]{2.0,2.5});
System.out.println(result_2);//4.5
//3.獲取沒有方法簽名的方法print
Methodmethod_3=clz.getMethod("print",newClass[]{});
Objectresult_3=method_3.invoke(newCalculator(),null);//result_3為null,該方法不返回結果
}
}
⑥ java中一個類中的方法如何訪問另一個類中的方法,方法都是public
新建一個類的實例,然後調用。
如:
publicclassha{
publicstaticvoidmain(String[]args){
abss=newab();
ss.haha();
}
}
classab{
publicvoidhaha(){
System.out.println("Java");
}
}
在main方法中調用類ab的haha方法。
總結一下:
類名 實例名 = new 類名(構造方法的參數表);
這是實例化,然後用實例名就可以進行調用了:
實例名.方法名(方法參數表);
註:參數表可以為空
另外,還有一種方法,就是將方法設置為靜態(static),用類名直接訪問。
如:
publicclassha{
publicstaticvoidmain(String[]args){
ab.haha();
}
}
classab{
//加上static
publicstaticvoidhaha(){
System.out.println("Java");
}
}
加了static後,就可以用類名直接調用。
總結一下:方法聲明為:
public static void 方法名(參數表){}
調用格式為:
類名.方法名(參數表);
⑦ java涓鍚屼竴涓綾葷殑鏂規硶鎬庝箞璋冪敤
浣爉ain鏂規硶鏄闈欐佹柟娉曪紝
闈欐佹柟娉曟槸涓嶈兘璋冪敤闈為潤鎬佹柟娉曘
鍥犱負闈欐佹柟娉曟槸鎻愬墠鍔犺澆鐨勩傝繖涓鏃跺欏彲鑳介潪闈欐佹柟娉曟牴鏈灝辮繕娌″姞杞姐傛墍浠ワ紝鏄閮ㄥ厑璁稿湪闈欐佹柟娉曢噷闈㈣皟鐢ㄩ潪闈欐佹柟娉曠殑銆
鍙浠ュ湪闈欐佹柟娉曚腑錛岃幏寰楅潪闈欐佹柟娉曟墍鍦ㄧ殑綾葷殑瀵硅薄瀹炰緥銆
鍦ㄩ潤鎬佹柟娉曚腑錛岀敤榪欎釜瀹炰緥鍘昏皟鐢ㄩ潪闈欐佹柟娉曘
姣斿: A a = new A(); a.aaaaa();