A. java中, 怎麼調用別的類的私有方法
利用反射即可調用;
簡易實例代碼如下:
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
/**
* @author thomaslwq
* @version 創建時間:Sep 4, 2012 9:53:49 PM
* 類說明
*/
public class ReflectionTest {
public static void setObjectColor(Object obj) throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAcces***ception, InvocationTargetException{
Class cls = obj.getClass();
//獲得類的私有方法
Method method = cls.getDeclaredMethod("privateMethod", null);
method.setAccessible(true); //沒有設置就會報錯
//調用該方法
method.invoke(obj, null);
}
public static void main(String args[]) throws SecurityException, IllegalArgumentException, NoSuchMethodException, IllegalAcces***ception, InvocationTargetException{
setObjectColor(new MyTest());
}
}
//測試類
class MyTest{
public void setMyTest(){
System.out.println("setMyTest");
}
/**
類的私有方法
**/
private void privateMethod(){
System.out.println("調用了 private Method");
}
}
B. java Main函數怎麼調用其他函數。 其他類。
主函數main前必須有static修飾符,static表示是靜態。
一般,在靜態的方法中,若要|-直接-|調用其他方法,那麼被調用的也必須是靜態。
你的程序中包含兩個部分
方法getInt() 和主函數main 其中主函數是靜態(main必須是靜態)。
那麼要在main中直接調用getInt()是不可以了,因為getInt沒有用static修飾,也就是說getInt不是靜態。
將public void getInt() 修改成 public static void getInt() ,追加靜態修飾符static後可直接調用。
主函數main修改為
public static void main(String[] args)
{
getInt(); //這里調用了上面的方法
System.out.println("總共有括弧對數:");
}
返回值:
有些方法是帶有返回值的,取決於你的用途。能不能帶返回值取決於void修飾符
普通方法,無返回值void修飾 。如 public void fangfa()這是無返回值的
public int fangfa() 這個是有返回值的,而且返回值必須是int
舉個例子
public int getPlayercounts()
{
int playercount = 0 ;//一般先初始化一個相應的變數待用(重要)
for (int i = 0 ; i < 99 ; i ++) //一些相關的計算和方法開始..
playercount ++ ;
return playercount; //返回一個int值(重要,而且是必須)
}
當你的方法不是用void修飾 而是用其他數據類型修飾,均是要有返回值的,也就是說在方法的結束為止至少要有一個return + 相應的數據類型的變數 來結束。
那麼返回值究竟有什麼意義呢?
看下面這個例子、
public static int getPlayercounts() //注意我用了static 這是一個靜態方法
{
int playercount = 0 ;//一般先初始化一個相應的變數待用(重要)
for (int i = 0 ; i < 99 ; i ++) //一些相關的計算和方法開始..
playercount ++ ;
return playercount; //返回一個int值(重要,而且是必須)
}
public static voin main(String[] args)
{
System.out.println("一共有"+getPlayercounts()+"個玩家");
}
看出來了吧,getPlayercounts()執行後 會獲得執行時得到的int數,在一些需要最後得到某個結果的方法中,用含有返回值的方法是非常方便的。
==============================================
你的代碼完全修改後如下,因為你需要的是得到括弧數,所以將你的原有方法改成一個返回int值得方法。
public class java
{
public static int getInt()// 原來是 public void getInt() ,修改後增加了static修飾, int替換了void
{
String strChar="a(bc)()()dnn()()j";
int iX=0;
int iY=0;
for(int p=0; p<strChar.length();p++)
{
String getstr=strChar.substring(p,p+1);
if(getstr.equals("(")){iX++;}
if(getstr.equals(")")){iY++;}
}
return Math.min(iY, iX);//取兩者之間的最小值(即括弧對數)作為返回值
}
public static void main(String[] args)
{
System.out.println("總共有括弧對數:"+getInt());
}
}
郁悶 寫了半天發現你已經認可了。。
C. java一個類怎麼調用另外一個類的主方法
1、與一般調用沒什麼差別,直接new 出來另一個類的對象,調用方法即可。
B裡面代碼
publicclassB{
publicstaticvoidmain(Stringargs[]){
System.out.println("thisisB");
}
}
A裡面代碼
publicstaticvoidmain(Stringargs[])
{
Bb=newB();
b.main(args);
}
運行A效果:
D. java怎麼調用另一個類的方法
java中如何調用類?本類中的直接方法名調用,不管是public還是private或protected。其他類中的如果是public的話,直接其他類的對象調用即可。如果是static的話直接其他類名加方法名調用。
如果另一個類中的那個方法是私有的話,就不能直接調用到,如果是其他類型的話看情況,如果是靜態的(static)話,直接用類名可以調用到,如果是非靜態的,就需要利用另一個類的實例(也就是用那個類生成的對象)來調用。
先在eclipse中創建一個Java工程文件。並在src下創建demo包,在demo包下創建類DemoClass。接下來在DemoClass類中添加一個靜態屬性和靜態方法。被static修飾的屬性或方法就是靜態的。
如果一個類中只有一個名稱為a的方法,那麼我們可以直接調用即可,如下圖所示以下是我們直接使用傳統的方式直接調用這個類中的a方法。
Java中的一個類怎麼調用另一個類中的方法
1、java類有兩種方法一種是類方法就是用static修飾的,一種是實例方法,就是沒有static修飾的方法。類方法可以同時類名.方法名的方式調用。而實例方法必須先生存類的實例在通過實例.方法名的方式調用。
2、如果有訪問許可權的話,可以調用該類的靜態方法(不同包需要引用import);一般的方法只能引用該類的實例對象的方法。直接在此類的方法里調用另一個類或對象的方法。
3、先在eclipse中創建一個Java工程文件。並在src下創建demo包,在demo包下創建類DemoClass。接下來在DemoClass類中添加一個靜態屬性和靜態方法。被static修飾的屬性或方法就是靜態的。
4、與一般調用沒什麼差別,直接new出來另一個類的對象,調用方法即可。
Java中的一個類怎麼調用另一個類中的方法?1、java類有兩種方法一種是類方法就是用static修飾的,一種是實例方法,就是沒有static修飾的方法。類方法可以同時類名.方法名的方式調用。而實例方法必須先生存類的實例在通過實例.方法名的方式調用。
2、先在eclipse中創建一個Java工程文件。並在src下創建demo包,在demo包下創建類DemoClass。接下來在DemoClass類中添加一個靜態屬性和靜態方法。被static修飾的屬性或方法就是靜態的。
3、如果一個類中只有一個名稱為a的方法,那麼我們可以直接調用即可,如下圖所示以下是我們直接使用傳統的方式直接調用這個類中的a方法。
4、如果有訪問許可權的話,可以調用該類的靜態方法(不同包需要引用import);一般的方法只能引用該類的實例對象的方法。直接在此類的方法里調用另一個類或對象的方法。
在java中怎樣使方法調用同一個類中的方法是什麼?1、如果一個類中只有一個名稱為a的方法,那麼我們可以直接調用即可,如下圖所示以下是我們直接使用傳統的方式直接調用這個類中的a方法。
2、方法新建一個類。然後在調用類中先進行被調用類實例化,然後通過實例化的對象訪問。
3、通過this的方式引用,this是當前類的引用,可以在類裡面來引用這個類的屬性和方法。
4、你main方法是靜態方法,靜態方法是不能調用非靜態方法。因為靜態方法是提前載入的。這個時候可能非靜態方法根本就還沒載入。所以,是部允許在靜態方法裡面調用非靜態方法的。
E. Java中的一個類怎麼調用另一個類中的方法
publicclass調用
{
publicstaticvoidmain(String[]args)
{
System.out.println("
==========Java中的一個類怎麼調用另一個類中的方法!==========
");
init();
}//初始化!
privatestaticvoidinit()
{
//創建A類對象
Aa=newA();
a.show2();
a.show1();
System.out.println("
------------------------------分割線--------------------------
");
//創建B類對象
Bb=newB();
b.method1();
b.method2();
}
}
//A類!
classA
{
voidshow1()
{
System.out.println("這個是A類中的show1方法,調用B類的method1方法");
newB().method1();
}
voidshow2()
{
System.out.println("這個是A類中的show2方法!");
}
}
//B類!
classB
{
voidmethod1()
{
System.out.println("這個是B類中的method1方法!");
}
voidmethod2()
{
System.out.println("這個是B類中的method2方法!調用A類的show2方法");
newA().show2();
}
}
F. java中如何調用其他java文件
JAVA中方法的調用主要有以下幾種:
1.非靜態方法
非靜態方法就是沒有 static 修飾的方法,對於非靜態方法的調用,是通過對 象來調用的;
2.調用靜態方法
靜態方法就是用 static 修飾的方法,靜態方法的調用是通過類名來調用的;
3.方法與方法之間的調用
方法與方法之間的調用,主要是在一個方法內部如何調用其他方法。
(1)靜態方法內部調用其他方法
如果在本類當中,靜態方法可以直接調用靜態方法,