Java 类的重载/匿名类的使用/可变形参

Posted 好好学习,天天向上

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 类的重载/匿名类的使用/可变形参相关的知识,希望对你有一定的参考价值。

 1 /**
 2  *1.类的方法的重载
 3  *2.匿名类对象的传递和引用
 4  *3.可变个数的形参(格式:1/对于方法的形参: 数据类型...形参名
 5  *                      2/可变个数的形参与同名的方法之间构成重载
 6  *                      3/可变个数的形参在调用时,个数从0到很多很多
 7  *                      4/可变个数的优势,传入单个或数组 时都可以调用
 8  *                      5/一致于数组,数组怎么传递,可变形参就怎么用)
 9  */
10 import java.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         return c;
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]+"	");
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 类的重载/匿名类的使用/可变形参的主要内容,如果未能解决你的问题,请参考以下文章

Java 基础知识点 笔记总结

Java重载之带有可变形参的方法

java基础day7

java提高篇-----详解匿名内部类 ,形参为什么要用final

Java方法的重载和重写

java重写和重载