Java 類的重載/匿名類的使用/可變形參
阿新 • • 發佈:2018-10-09
() 重載 rod test lan port 制造 ... nbsp
1 /** 2 *1.類的方法的重載 3 *2.匿名類對象的傳遞和引用 4 *3.可變個數的形參(格式:1/對於方法的形參: 數據類型...形參名 5 * 2/可變個數的形參與同名的方法之間構成重載 6 * 3/可變個數的形參在調用時,個數從0到很多很多 7 * 4/可變個數的優勢,傳入單個或數組 時都可以調用 8 * 5/一致於數組,數組怎麽傳遞,可變形參就怎麽用) 9 */ 10 importjava.lang.*; 11 class Car{ 12 String name; 13 int wheel; 14 public Car(String name,int w){ //構造類 15 this.name = name; 16 this.wheel=w; 17 } 18 public Car( ){ //重載構造類 19 this.name = "####"; 20 this.wheel= 0; 21 } 22 public void describeCar(){23 System.out.println("{name:"+this.name+" wheelnum:"+this.wheel+"}"); 24 } 25 } 26 class Factory{ 27 //制造車 28 public Factory(){ 29 } 30 public Car produceCar(String name,int wnum){ 31 Car c=new Car(); 32 c.name=name; 33 c.wheel=wnum; 34 returnc; 35 } 36 public void Tested(Car c){ 37 if(c.name=="####") 38 System.out.println(c.name+"Test: 發現故障!未初始化!"); 39 else 40 System.out.println(c.name+" is Ok!"); 41 } 42 } 43 44 class SayMore{ 45 public SayMore(){ 46 } 47 public void say(int ...args){ 48 for(int i=0;i<args.length;i++) 49 System.out.print(args[i]+"\t"); 50 System.out.println(); 51 } 52 } 53 public class Test1 { 54 public static void main(String args[]){ 55 Factory f=new Factory(); 56 Car c1 = f.produceCar("蔥油醬餅",4); 57 c1.describeCar(); 58 System.out.println("使用匿名類: "); 59 new Car().describeCar(); 60 61 f.Tested(new Car()); //檢測匿名(空構造的數據)類 62 f.Tested(c1); //檢測實例化有數據的類 63 System.out.println(" // ///////////////////////////////////////////"); 64 65 SayMore s=new SayMore(); 66 s.say(666); //可變個數的形參,傳遞單個/多個 67 s.say(1,2,3); 68 69 int arr[]={1,2,3,4555}; 70 s.say(arr); 71 } 72 }
運行結果:
{name:蔥油醬餅 wheelnum:4} 使用匿名類: {name:#### wheelnum:0} ####Test: 發現故障!未初始化! 蔥油醬餅 is Ok! // /////////////////////////////////////////// 666 1 2 3 1 2 3 4555
Java 類的重載/匿名類的使用/可變形參