Board logo

標題: static 關鍵字 (一) [打印本頁]

作者: tonyh    時間: 2015-3-7 16:59     標題: static 關鍵字 (一)

本帖最後由 tonyh 於 2015-3-7 17:57 編輯

成員 (資料成員或方法成員) 在宣告時若使用關鍵字 static 修飾,則該成員變成屬於類別 (class) 擁有而非物件 (object) 擁有,因此我們若要在其他地方使用該成員時,不用建立實體物件,只需透過類別即可使用。譬如:Math.PI 即為靜態的資料成員,而Math.pow() 即為靜態的方法成員。

[attach]1165[/attach]
  1. public class ch63
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,3.8f);
  6.         Dog d2=new Dog("球球",1,2.5f);
  7.         Cat c1=new Cat("咪咪",5,3.2f);
  8.         d1.showProfile();
  9.         d2.showProfile();
  10.         c1.showProfile();
  11.         System.out.println("總共有"+Dog.sum+"隻狗,"+Cat.sum+"隻貓.");
  12.     }
  13. }
  14. class Dog
  15. {
  16.     static int sum=0;
  17.     String name;
  18.     int age;
  19.     float w;
  20.     Dog(String name, int age, float w)
  21.     {
  22.         sum++;
  23.         this.name=name;
  24.         this.age=age;
  25.         this.w=w;
  26.     }
  27.     void showProfile()
  28.     {
  29.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤.");
  30.     }
  31. }
  32. class Cat
  33. {
  34.     static int sum=0;
  35.     String name;
  36.     int age;
  37.     float w;
  38.     Cat(String name, int age, float w)
  39.     {
  40.         sum++;
  41.         this.name=name;
  42.         this.age=age;
  43.         this.w=w;
  44.     }
  45.     void showProfile()
  46.     {
  47.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤.");
  48.     }
  49. }
複製代碼

作者: 李允軒    時間: 2015-3-7 17:28

  1. public class ch61
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,1.3f);
  6.         d1.showProfile();
  7.         Dog d2=new Dog("球球",1,1.2f);
  8.         d2.showProfile();
  9.         Cat c1=new Cat("咪咪",3,1.5f);
  10.         c1.showProfile();
  11.         System.out.println("總共有"+Dog.sum+"隻狗,"+Cat.sum+"隻貓");
  12.     }
  13. }
  14. class Dog
  15. {
  16.     static int sum=0;
  17.     String name;
  18.     int age;
  19.     float w;
  20.     Dog()
  21.     {
  22.     }
  23.     Dog(String name,int age,float w)
  24.     {
  25.         sum++;
  26.         this.name=name;
  27.         this.age=age;
  28.         this.w=w;
  29.     }
  30.     void showProfile()
  31.     {
  32.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  33.     }
  34. }
  35. class Cat
  36. {
  37.     static int sum=0;
  38.     String name;
  39.     int age;
  40.     float w;
  41.     Cat()
  42.     {
  43.     }
  44.     Cat(String name,int age,float w)
  45.     {
  46.         sum++;
  47.         this.name=name;
  48.         this.age=age;
  49.         this.w=w;
  50.     }
  51.     void showProfile()
  52.     {
  53.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  54.     }
  55. }
複製代碼

作者: 張郁庭    時間: 2015-3-7 17:30

  1. public class ch63
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,1.3f);
  6.         Dog d2=new Dog("球球",1,1.2f);
  7.         Cat c1=new Cat("咪咪",3,1.5f);
  8.         d2.showProfile();
  9.         d1.showProfile();
  10.         c1.showProfile();
  11.         System.out.println("總共有"+Dog.sum+"隻狗,"+Cat.sum+"隻貓");
  12.     }
  13. }
  14. class Dog
  15. {
  16.     static int sum=0;
  17.     String name;
  18.     int age;
  19.     float w;
  20.     Dog()
  21.     {
  22.     }
  23.     Dog(String name,int age,float w)
  24.     {
  25.         sum++;
  26.         this.name=name;
  27.         this.age=age;
  28.         this.w=w;
  29.     }
  30.     void showProfile()
  31.     {
  32.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  33.     }
  34. }
  35. class Cat
  36. {
  37.     static int sum=0;
  38.     String name;
  39.     int age;
  40.     float w;
  41.     Cat()
  42.     {
  43.     }
  44.     Cat(String name,int age,float w)
  45.     {
  46.         sum++;
  47.         this.name=name;
  48.         this.age=age;
  49.         this.w=w;
  50.     }
  51.     void showProfile()
  52.     {
  53.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  54.     }
  55. }
複製代碼

作者: 林宇翔    時間: 2015-3-7 17:31

  1. public class ch61
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,1.3f);
  6.         d1.showProfile();
  7.         Dog d2=new Dog("球球",1,1.2f);
  8.         d2.showProfile();
  9.         Cat c1=new Cat("咪咪",3,1.5f);
  10.         c1.showProfile();
  11.         System.out.println("總共有"+Dog.sum+"隻狗,"+Cat.sum+"隻貓");
  12.     }
  13. }
  14. class Dog
  15. {
  16.     static int sum=0;
  17.     String name;
  18.     int age;
  19.     float w;
  20.     Dog()
  21.     {
  22.     }
  23.     Dog(String name,int age,float w)
  24.     {
  25.         sum++;
  26.         this.name=name;
  27.         this.age=age;
  28.         this.w=w;
  29.     }
  30.     void showProfile()
  31.     {
  32.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  33.     }
  34. }
  35. class Cat
  36. {
  37.     static int sum=0;
  38.     String name;
  39.     int age;
  40.     float w;
  41.     Cat()
  42.     {
  43.     }
  44.     Cat(String name,int age,float w)
  45.     {
  46.         sum++;
  47.         this.name=name;
  48.         this.age=age;
  49.         this.w=w;
  50.     }
  51.     void showProfile()
  52.     {
  53.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  54.     }
  55. }
複製代碼

作者: 張峻瑋    時間: 2015-3-7 17:31

  1. public class ch63
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,3.8f);
  6.         Dog d2=new Dog("球球",1,2.5f);
  7.         Cat c1=new Cat("咪咪",5,3.2f);
  8.         d1.showProfile();
  9.         d2.showProfile();
  10.         c1.showProfile();
  11.         System.out.println("總共有"+Dog.sum+"隻狗,"+Cat.sum+"隻貓.");
  12.     }
  13. }
  14. class Dog
  15. {
  16.     static int sum=0;
  17.     String name;
  18.     int age;
  19.     float w;
  20.     Dog()
  21.     {
  22.     }
  23.     Dog(String name,int age,float w)
  24.     {
  25.         sum++;
  26.         this.name=name;
  27.         this.age=age;
  28.         this.w=w;
  29.     }
  30.     void showProfile()
  31.     {
  32.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤.");
  33.     }
  34. }   
  35. class Cat
  36. {
  37.     static int sum=0;
  38.     String name;
  39.     int age;
  40.     float w;
  41.     Cat()
  42.     {
  43.     }
  44.     Cat(String name,int age,float w)
  45.     {
  46.         sum++;
  47.         this.name=name;
  48.         this.age=age;
  49.         this.w=w;
  50.     }
  51.     void showProfile()
  52.     {
  53.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤.");
  54.     }
  55. }
複製代碼

作者: 劉得恩    時間: 2015-3-7 17:31

  1. public class ch63
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 Dog d[]={new Dog("xxx",100,0.1),new Dog("bitch",1233,999999)};
  6.                 Cat c=new Cat("xx",-2,-100.4);
  7.                 d[0].showProfile();
  8.                 d[1].showProfile();
  9.                 c.showProfile();
  10.                 System.out.println(Dog.sum+"隻狗"+Cat.sum+"隻貓");
  11.         }
  12. }
  13. class Dog
  14. {
  15.         static int sum=0;
  16.         String name;
  17.         int age;
  18.         double weight;
  19.         Dog(String n,int a,double w)
  20.         {
  21.                 sum++;
  22.                 name=n;
  23.                 age=a;
  24.                 weight=w;
  25.         }
  26.         void showProfile()
  27.         {
  28.                 System.out.println(name+"今年"+age+"歲,體重"+weight+"公斤");
  29.         }
  30. }
  31. class Cat
  32. {
  33.         static int sum=0;
  34.         String name;
  35.         int age;
  36.         double weight;
  37.         Cat(String n,int a,double w)
  38.         {
  39.                 sum++;
  40.                 name=n;
  41.                 age=a;
  42.                 weight=w;
  43.         }
  44.         void showProfile()
  45.         {
  46.                 System.out.println(name+"今年"+age+"歲,體重"+weight+"公斤");
  47.         }
  48. }
複製代碼

作者: 周雍程    時間: 2015-3-7 17:31

  1. public class ch63
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,1.3f);  
  6.         Dog d2=new Dog("球球",1,1.2f);  
  7.         Cat c1=new Cat("咪咪",3,1.5f);
  8.         d1.showProfile();
  9.         d2.showProfile();
  10.         c1.showProfile();
  11.         System.out.println("總共有"+Dog.sum+"隻狗,"+Cat.sum+"隻貓");
  12.     }
  13. }
  14. class Dog
  15. {
  16.     static int sum=0;
  17.     String name;
  18.     int age;
  19.     float w;
  20.     Dog()
  21.     {
  22.     }
  23.     Dog(String name,int age,float w)
  24.     {
  25.         sum++;
  26.         this.name=name;
  27.         this.age=age;
  28.         this.w=w;
  29.     }
  30.     void showProfile()
  31.     {
  32.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  33.     }
  34. }
  35. class Cat
  36. {
  37.     static int sum=0;
  38.     String name;
  39.     int age;
  40.     float w;
  41.     Cat()
  42.     {
  43.     }
  44.     Cat(String name,int age,float w)
  45.     {
  46.         sum++;
  47.         this.name=name;
  48.         this.age=age;
  49.         this.w=w;
  50.     }
  51.     void showProfile()
  52.     {
  53.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  54.     }
  55. }
複製代碼

作者: 張彥承    時間: 2015-3-7 17:49

  1. public class ch61
  2. {
  3.     public static void main(String args[])
  4.     {
  5.         Dog d1=new Dog("憨憨",2,1.3f);
  6.         d1.showProfile();
  7.         Dog d2=new Dog("球球",1,1.2f);
  8.         d2.showProfile();
  9.         Cat c1=new Cat("咪咪",3,1.5f);
  10.         c1.showProfile();
  11.         System.out.println("總共有"+Dog.sum+"隻狗,"+Cat.sum+"隻貓");
  12.     }
  13. }
  14. class Dog
  15. {
  16.     static int sum=0;
  17.     String name;
  18.     int age;
  19.     float w;
  20.     Dog()
  21.     {
  22.     }
  23.     Dog(String name,int age,float w)
  24.     {
  25.         sum++;
  26.         this.name=name;
  27.         this.age=age;
  28.         this.w=w;
  29.     }
  30.     void showProfile()
  31.     {
  32.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  33.     }
  34. }
  35. class Cat
  36. {
  37.     static int sum=0;
  38.     String name;
  39.     int age;
  40.     float w;
  41.     Cat()
  42.     {
  43.     }
  44.     Cat(String name,int age,float w)
  45.     {
  46.         sum++;
  47.         this.name=name;
  48.         this.age=age;
  49.         this.w=w;
  50.     }
  51.     void showProfile()
  52.     {
  53.         System.out.println(name+"今年"+age+"歲,體重"+w+"公斤");
  54.     }
  55. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2