static
有static 類別方法 ---不用先建構物件,可直接以類別呼叫該方法,例如 Integer.parseInt("123");
無static 物件方法-----必須先建構物件,再以物件名稱呼叫,例如 Test a=new Test(); a.ppp();
class Test{
public void ppp(){
System.out.println("物件方法");
}
public static void kkk(){
System.out.println("類別方法");
}
}
Test.kkk(); 正確
Test.ppp(); 錯誤
Test a=new Test();
a.ppp();//正確
----------------------------------------------------------
以下是我寫的範例參考,用來計算n!=多少。
class factorial {
public static void main(String[] args) {
long xxx, n;// 定義我們的答案xxx為長整數
// 定義a是一個factorial()類的新物件
factorial a = new factorial();
// 呼叫a物件的calcute函式,並且給這個函式一個值n(必須是常整數類型),calcute會回傳一個值
for (n = -1; n <= 5; n++) {
xxx = a.calculate(n);
// 在螢幕上顯示n階層=xxx
System.out.println(n + "!=" + xxx);
}
}
// 定義一個公開的函式名字叫做calculate,我們把她用來計算階層
// (long n1)表示它包含一個參數n1(常整數類型)
// 函式不包含void則需要回傳(return)一個值,return的類型是long
public long calculate(long n1) {
//如果n1等於0則回傳答案=1
if (n1 == 0)
return 1;
//如果n1<0則回傳答案等於0
if (n1 < 0)
return 0;
//定義一個ans為long,計算n!的答案
long ans = 1;
for (int i = 1; i <= n1; i++) {
ans = ans * i;
}
//回傳ans給xxx=a.calcute(n)
return ans;
}
}
執行結果
有static 類別方法 ---不用先建構物件,可直接以類別呼叫該方法,例如 Integer.parseInt("123");
無static 物件方法-----必須先建構物件,再以物件名稱呼叫,例如 Test a=new Test(); a.ppp();
class Test{
public void ppp(){
System.out.println("物件方法");
}
public static void kkk(){
System.out.println("類別方法");
}
}
Test.kkk(); 正確
Test.ppp(); 錯誤
Test a=new Test();
a.ppp();//正確
----------------------------------------------------------
以下是我寫的範例參考,用來計算n!=多少。
class factorial {
public static void main(String[] args) {
long xxx, n;// 定義我們的答案xxx為長整數
// 定義a是一個factorial()類的新物件
factorial a = new factorial();
// 呼叫a物件的calcute函式,並且給這個函式一個值n(必須是常整數類型),calcute會回傳一個值
for (n = -1; n <= 5; n++) {
xxx = a.calculate(n);
// 在螢幕上顯示n階層=xxx
System.out.println(n + "!=" + xxx);
}
}
// 定義一個公開的函式名字叫做calculate,我們把她用來計算階層
// (long n1)表示它包含一個參數n1(常整數類型)
// 函式不包含void則需要回傳(return)一個值,return的類型是long
public long calculate(long n1) {
//如果n1等於0則回傳答案=1
if (n1 == 0)
return 1;
//如果n1<0則回傳答案等於0
if (n1 < 0)
return 0;
//定義一個ans為long,計算n!的答案
long ans = 1;
for (int i = 1; i <= n1; i++) {
ans = ans * i;
}
//回傳ans給xxx=a.calcute(n)
return ans;
}
}
執行結果
沒有留言:
張貼留言