導航:首頁 > 編程語言 > java兩個類調用函數調用函數調用函數

java兩個類調用函數調用函數調用函數

發布時間:2025-07-26 09:58:08

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());
}
}

郁悶 寫了半天發現你已經認可了。。

❷ java中的函數調用怎麼理解

java中把函數叫做方法!
方法就是生活中的功能,方法定義就是創建功能,方法調用就是使用功能。
我現在要輸出一個字元串,這個字元串需要上下都有一行「*」,並且要求星星的個數與輸出的字元串長度相同。如果字元串是Hello World!,那麼星星的個數是12個。
public static void main(String[] args) {
String s = "Hello World!";
int len = s.length();
for(int i = 0; i < len; i++) {
System.out.print("*");
}
System.out.println();
System.out.println(s);
for(int i = 0; i < len; i++) {
System.out.print("*");
}
System.out.println();
}

上面的代碼可以完成任務,但是如果我再要你輸出一個Hello Java!也要求用星星裝飾。你還需要把上面的代碼再打一次。這會很麻煩!這時我們可以創建一個方法,然後重復調用這個方法就可以了。也就是創建一個功能,然後重復使用這個功能!
public static void printStr(String s) {
int len = s.length();
printXing(len);
System.out.println(s);
printXing(len);
}
public static void printXing(int n) {
for(int i = 0; i < n; i++) {
System.out.print("*");
}
System.out.println();
}

public static void main(String[] args) {
printStr("Hello World!");
printStr("Hello Java!");
}
===============
方法可以重用,也就是功能一旦創建用可以多次使用!
在生活中功能是不能獨立存在的,它必須屬於某個物體,也就是對象。例如車有行駛,停止等功能,車就是對象!在Java中方法也需要指定屬於哪個對象,這樣的方法就是實例方法。
功能有時還需要有參數,例如你想使用電腦的功能,那你需要給電腦的開機方法提供電。你想使用汽車的行駛方法,你需要給車提供汽油。上面方法中printStr方法需要的參數是要輸出的字元串。
方法分類:
有參、無參
有返回值、無返回值
實例方法、靜態方法
=====
相對而言,方法還有主調與被調關系!
同一類中是否可以有兩個名稱、參數列表一樣方法呢?
編譯器如何區分方法,JVM又是如何區分方法!
Java中的getter橋方法區別在哪裡?
方法的遞歸調用!
無返回值方法如何使用return
方法的覆蓋、方法的重載
方法的修飾:abstract、final、static、native、strictfp、synchronized
===============
學習Java,理解它很重要。但理解不等於會,想學會一定要多練習!!!
有學生問過我說:「老師,你給我們打的代碼我都能看懂,但為什麼你讓我們自己打時我就打不出來了呢?一點思路都沒有了!」
理解了方法是什麼,你就會在你的程序中定義方法,調用方法了嗎?不是!你認識漢字嗎?你認識為什麼寫不出來詩呢?你能看懂李白的「將進酒」嗎?看懂了為什麼你寫不出來呢?想寫詩怎麼辦,答案是多看別人的詩,注意別人的詩在哪些地方用了哪些字!然後自己寫一些簡單的,來模仿別人的,模仿的時間長了,也就會了。

❸ java中一個類怎麼調用另一個類中的函數

在Java編程中,當我們需要在一個類中調用另一個類中的函數時,首先需要確保兩個類在同一項目中或已正確引入相應的包。例如,如果你有一個名為md5的類,並且該類中包含一個名為getMD5ofStr的方法,你可以按照以下步驟進行調用:

1. 首先,導入必要的包。假設md5類位於一個名為md5的包中,你需要在調用該類之前先進行導入,代碼如下:

import md5.md5;

2. 接著,在需要調用函數的地方創建目標類的對象。在本例中,你需要創建一個名為obj的md5對象,代碼如下:

md5 obj = new md5();

3. 最後,通過調用對象的方法來執行相應的操作。在本例中,你可以調用getMD5ofStr方法,並傳入一個字元串參數,代碼如下:

obj.getMD5ofStr(" ");

這里的" "可以替換成你想要轉換為MD5的任意字元串。通過以上步驟,你就可以在當前類中成功調用另一個類中的函數了。

值得注意的是,在實際開發過程中,你應該盡量保持類之間的耦合度較低,以提高代碼的可維護性和復用性。同時,確保所使用的類和方法符合項目需求和編碼規范。

另外,當你需要調用的類位於其他包中時,可以使用完整的包路徑來導入,例如:

import com.example.md5.md5;

這樣,你就能在項目中正確引用並調用該類中的方法了。

在進行類間調用時,還應注意檢查目標類是否存在以及方法簽名是否正確,避免因引入錯誤的類或方法而導致的運行時錯誤。確保代碼的健壯性和穩定性是軟體開發中不可或缺的一部分。

❹ java函數調用(在一個類中怎麼調用另一個類的變數和函數)

import java.util.Scanner;

public class Student {//帶有主函數的類,Score類在下面
String name;
Score score=new Score();//此句有重大嫌疑

public String introce()
{

return(name+"\t"+score.java+"\t"+score.db+"\t"+score.c+"\t"+score.sum()+"\t"+score.avg());//name之後的全部顯示為0
}

public static void main(String args[])
{
Student stu[]=new Student[10];
Score score[]=new Score[10];
Scanner in=new Scanner(System.in);

for(int i=0;i<3;i++)
{
stu[i]=new Student();
score[i]=new Score();
System.out.println("學生"+(i+1)+"的名字:");
stu[i].name=in.next();
System.out.println("學生"+(i+1)+"java成績:");
score[i].java=in.nextFloat();
System.out.println("學生"+(i+1)+"DB成績:");
score[i].db=in.nextFloat();
System.out.println("學生"+(i+1)+"C語言成績:");
score[i].c=in.nextFloat();
}
System.out.println("姓名\tjava成績\tDB成績是\tc語言成績\t總成績\t平均成績");
for(int j=0;j<3;j++)
{
System.out.println(stu[j].introce());
}

}
} //錯誤之二:少了一個右邊大括弧,造成第一個類不完整
class Score {//score類 錯誤地方一:在一個java文件中只允許有一個功能類 去掉public 就好了

float java,db,c;
public float sum()
{
float ssum=java+db+c;
return ssum;
}
public float avg()
{
return sum()/3;
}
}

閱讀全文

與java兩個類調用函數調用函數調用函數相關的資料

熱點內容
萬國伺服器怎麼樣 瀏覽:979
vmware文件夾重定向在哪裡 瀏覽:34
安卓如何將屏幕調到最暗 瀏覽:633
怎樣壓縮圖片太大 瀏覽:93
單片機的發展趨勢是什麼 瀏覽:628
雲的伺服器近期價格 瀏覽:950
6BIT編碼加密 瀏覽:993
java重寫父類的方法 瀏覽:77
書迷選什麼app免費 瀏覽:123
加密伺服器提示運行錯誤怎麼辦 瀏覽:742
python高級視頻教程下載 瀏覽:782
android監聽自身卸載 瀏覽:907
怎麼新建xs文件夾 瀏覽:317
phpexec效率 瀏覽:564
程序員適合什麼軸的機械鍵盤 瀏覽:290
山東地區大件運輸用什麼app 瀏覽:108
程序員32歲還需要繼續嗎 瀏覽:476
淘寶騰訊雲伺服器靠譜嗎 瀏覽:549
androidnanotime 瀏覽:945
夏天我的世界伺服器地址 瀏覽:355