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]+"\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. }

运行结果:

  1. {name:葱油酱饼 wheelnum:4}
  2. 使用匿名类:
  3. {name:#### wheelnum:0}
  4. ####Test: 发现故障!未初始化!
  5. 葱油酱饼 is Ok!
  6. // ///////////////////////////////////////////
  7. 666
  8. 1 2 3
  9. 1 2 3 4555

Java 类的重载/匿名类的使用/可变形参的更多相关文章

  1. [改善Java代码]建议40:匿名类的构造函数很特殊

    建议40: 匿名类的构造函数很特殊 在上一个建议中我们讲到匿名类虽然没有名字,但可以有一个初始化块来充当构造函数,那这个构造函数是否就和普通的构造函数完全一样呢?我们来看一个例子,设计一个计算器,进行 ...

  2. java语言中的匿名类与lambda表达式介绍与总结 (Anonymous Classes and Lambda Expressions)

    2017/6/30 转载写明出处:http://www.cnblogs.com/daren-lin/p/anonymous-classes-and-lambda-expressions-in-java ...

  3. java面向对象类的继承~ 匿名类 ;多态特性;强制类型转换

    类的继承 创建子类语法:     修饰符 class 子类名 extends 父类名{        } 匿名子类语法: 直接实例化,过程中通过匿名类 继承父类,在实例化过程中将子类匿名 <父类 ...

  4. Java内部抽象类的匿名类初始化

    说在前面的话,以前写过一次这个变态代码,后来重构,把那个new的语法简化了,最近又要整,差点都想不起来了,留个文档把 1.下面这个案例更变态,抽象类还有一个个泛型类:首先内部抽象类的定义: /* * ...

  5. Java通过接口实现匿名类的实例

    package com.chase.test; /** * 通过接口实现匿名类的实例 * * @author Chase * * @date 2013-10-18 下午04:28:17 * * @ve ...

  6. Java:匿名类,匿名内部类

    本文内容: 内部类 匿名类 首发日期 :2018-03-25 内部类: 在一个类中定义另一个类,这样定义的类称为内部类.[包含内部类的类可以称为内部类的外部类] 如果想要通过一个类来使用另一个类,可以 ...

  7. Java之匿名类讲解

    参考https://blog.csdn.net/jiaotuwoaini/article/details/51542059 匿名类,正如名字一样在java中没有名字标识的类,当然了编译后还是会安排一个 ...

  8. Java 内部类、成员类、局部类、匿名类等

    Java各种称呼类详解 Java有各种各样类,内部类.嵌套类.成员类.局部类(本地类).静态类.匿名类.文件类以及这些组合起来的称呼类,成员内部类,成员匿名类,成员嵌套类,本地匿名类等,真是多的不行, ...

  9. Java 内部类,成员类,局部类,匿名类等

    根据内部类的位置不同,可将内部类分为 :成员内部类与局部内部类. class outer{ class inner{//成员内部类 } public void method() { class loc ...

随机推荐

  1. go string类型的特性

    参考文章: http://c.biancheng.net/view/36.html 1. 获取ascii类型字符的长度个数和获取utf8类型字符长度的个数 a. len("咪咪") ...

  2. sort(()=>{return Math.random()-0.5)}乱序数组不准确

    为什么sort(()=>{return Math.random()-0.5)}乱序数组不准确.(注意结合插入排序原理来理解) @1.chrome浏览器对于数组长度10以内为插入排序.反之则快速排 ...

  3. 《C专家编程》读书笔记之第1~4章

    一.C:穿越时空的迷雾 1. C标准中定义了描述编译器的特点的一些术语: (1) 由编译器定义的(imprementation-defined) 由编译器设计者决定如何处理.例如:整型数右移时要不要扩 ...

  4. 【AtCoder】AGC009

    AGC009 A - Multiple Array 从后往前递推即可 #include <bits/stdc++.h> #define fi first #define se second ...

  5. Git在IDEA工具中快捷拉取代码

    在拥有GitLab账号之后, 进入IDEA中,点击vcs菜单-->Checkout from Version Control-->Git 随后会出现一个弹框,输入git上的项目地址点击CL ...

  6. 1.5JdbcTmeplates、Jpa、Mybatis、beatlsql、Druid的使用

    Spring boot 连接数据库整合 -- create table `account`DROP TABLE `account` IF EXISTSCREATE TABLE `account` ( ...

  7. hdu 1029 求出现次数过半的数

    题目传送门//res tp hdu 已知必定存在一个元素出现次数超过一半,考虑用栈 若当前元素等于栈顶元素,入栈,反之出栈,并将当前元素入栈 最终的栈顶元素即是所求 #include<iostr ...

  8. JZOJ.1153【贪心算法】硬币交换

    好难啊!!! 可聪明的我还是解出来了!(逃 题目描述 小z最近迷上了一款游戏――To Be A Farmer,他在游戏中控制的人物是一个叫FZ的Farmer.FZ身上有G1个金币.S1个银币和B1个铜 ...

  9. # OpenGL常用函数详解(持续更新)

    OpenGL常用函数详解(持续更新) 初始化 void glutInit(int* argc,char** argv)初始化GULT库,对应main函数的两个参数 void gultInitWindo ...

  10. 牛客 216 C 小K的疑惑

    大意: 给定树, 求多少个三元组(i,j,k), 满足dis(i,j)=dis(j,k)=dis(k,i). 刚开始想复杂了, 暴力统计了所有的情况. #include <iostream> ...