Java 类的重载/匿名类的使用/可变形参
- /**
- *1.类的方法的重载
- *2.匿名类对象的传递和引用
- *3.可变个数的形参(格式:1/对于方法的形参: 数据类型...形参名
- * 2/可变个数的形参与同名的方法之间构成重载
- * 3/可变个数的形参在调用时,个数从0到很多很多
- * 4/可变个数的优势,传入单个或数组 时都可以调用
- * 5/一致于数组,数组怎么传递,可变形参就怎么用)
- */
- import java.lang.*;
- class Car{
- String name;
- int wheel;
- public Car(String name,int w){ //构造类
- this.name = name;
- this.wheel=w;
- }
- public Car( ){ //重载构造类
- this.name = "####";
- this.wheel= 0;
- }
- public void describeCar(){
- System.out.println("{name:"+this.name+" wheelnum:"+this.wheel+"}");
- }
- }
- class Factory{
- //制造车
- public Factory(){
- }
- public Car produceCar(String name,int wnum){
- Car c=new Car();
- c.name=name;
- c.wheel=wnum;
- return c;
- }
- public void Tested(Car c){
- if(c.name=="####")
- System.out.println(c.name+"Test: 发现故障!未初始化!");
- else
- System.out.println(c.name+" is Ok!");
- }
- }
- class SayMore{
- public SayMore(){
- }
- public void say(int ...args){
- for(int i=0;i<args.length;i++)
- System.out.print(args[i]+"\t");
- System.out.println();
- }
- }
- public class Test1 {
- public static void main(String args[]){
- Factory f=new Factory();
- Car c1 = f.produceCar("葱油酱饼",4);
- c1.describeCar();
- System.out.println("使用匿名类: ");
- new Car().describeCar();
- f.Tested(new Car()); //检测匿名(空构造的数据)类
- f.Tested(c1); //检测实例化有数据的类
- System.out.println(" // ///////////////////////////////////////////");
- SayMore s=new SayMore();
- s.say(666); //可变个数的形参,传递单个/多个
- s.say(1,2,3);
- int arr[]={1,2,3,4555};
- s.say(arr);
- }
- }
运行结果:
- {name:葱油酱饼 wheelnum:4}
- 使用匿名类:
- {name:#### wheelnum:0}
- ####Test: 发现故障!未初始化!
- 葱油酱饼 is Ok!
- // ///////////////////////////////////////////
- 666
- 1 2 3
- 1 2 3 4555
Java 类的重载/匿名类的使用/可变形参的更多相关文章
- [改善Java代码]建议40:匿名类的构造函数很特殊
建议40: 匿名类的构造函数很特殊 在上一个建议中我们讲到匿名类虽然没有名字,但可以有一个初始化块来充当构造函数,那这个构造函数是否就和普通的构造函数完全一样呢?我们来看一个例子,设计一个计算器,进行 ...
- java语言中的匿名类与lambda表达式介绍与总结 (Anonymous Classes and Lambda Expressions)
2017/6/30 转载写明出处:http://www.cnblogs.com/daren-lin/p/anonymous-classes-and-lambda-expressions-in-java ...
- java面向对象类的继承~ 匿名类 ;多态特性;强制类型转换
类的继承 创建子类语法: 修饰符 class 子类名 extends 父类名{ } 匿名子类语法: 直接实例化,过程中通过匿名类 继承父类,在实例化过程中将子类匿名 <父类 ...
- Java内部抽象类的匿名类初始化
说在前面的话,以前写过一次这个变态代码,后来重构,把那个new的语法简化了,最近又要整,差点都想不起来了,留个文档把 1.下面这个案例更变态,抽象类还有一个个泛型类:首先内部抽象类的定义: /* * ...
- Java通过接口实现匿名类的实例
package com.chase.test; /** * 通过接口实现匿名类的实例 * * @author Chase * * @date 2013-10-18 下午04:28:17 * * @ve ...
- Java:匿名类,匿名内部类
本文内容: 内部类 匿名类 首发日期 :2018-03-25 内部类: 在一个类中定义另一个类,这样定义的类称为内部类.[包含内部类的类可以称为内部类的外部类] 如果想要通过一个类来使用另一个类,可以 ...
- Java之匿名类讲解
参考https://blog.csdn.net/jiaotuwoaini/article/details/51542059 匿名类,正如名字一样在java中没有名字标识的类,当然了编译后还是会安排一个 ...
- Java 内部类、成员类、局部类、匿名类等
Java各种称呼类详解 Java有各种各样类,内部类.嵌套类.成员类.局部类(本地类).静态类.匿名类.文件类以及这些组合起来的称呼类,成员内部类,成员匿名类,成员嵌套类,本地匿名类等,真是多的不行, ...
- Java 内部类,成员类,局部类,匿名类等
根据内部类的位置不同,可将内部类分为 :成员内部类与局部内部类. class outer{ class inner{//成员内部类 } public void method() { class loc ...
随机推荐
- go string类型的特性
参考文章: http://c.biancheng.net/view/36.html 1. 获取ascii类型字符的长度个数和获取utf8类型字符长度的个数 a. len("咪咪") ...
- sort(()=>{return Math.random()-0.5)}乱序数组不准确
为什么sort(()=>{return Math.random()-0.5)}乱序数组不准确.(注意结合插入排序原理来理解) @1.chrome浏览器对于数组长度10以内为插入排序.反之则快速排 ...
- 《C专家编程》读书笔记之第1~4章
一.C:穿越时空的迷雾 1. C标准中定义了描述编译器的特点的一些术语: (1) 由编译器定义的(imprementation-defined) 由编译器设计者决定如何处理.例如:整型数右移时要不要扩 ...
- 【AtCoder】AGC009
AGC009 A - Multiple Array 从后往前递推即可 #include <bits/stdc++.h> #define fi first #define se second ...
- Git在IDEA工具中快捷拉取代码
在拥有GitLab账号之后, 进入IDEA中,点击vcs菜单-->Checkout from Version Control-->Git 随后会出现一个弹框,输入git上的项目地址点击CL ...
- 1.5JdbcTmeplates、Jpa、Mybatis、beatlsql、Druid的使用
Spring boot 连接数据库整合 -- create table `account`DROP TABLE `account` IF EXISTSCREATE TABLE `account` ( ...
- hdu 1029 求出现次数过半的数
题目传送门//res tp hdu 已知必定存在一个元素出现次数超过一半,考虑用栈 若当前元素等于栈顶元素,入栈,反之出栈,并将当前元素入栈 最终的栈顶元素即是所求 #include<iostr ...
- JZOJ.1153【贪心算法】硬币交换
好难啊!!! 可聪明的我还是解出来了!(逃 题目描述 小z最近迷上了一款游戏――To Be A Farmer,他在游戏中控制的人物是一个叫FZ的Farmer.FZ身上有G1个金币.S1个银币和B1个铜 ...
- # OpenGL常用函数详解(持续更新)
OpenGL常用函数详解(持续更新) 初始化 void glutInit(int* argc,char** argv)初始化GULT库,对应main函数的两个参数 void gultInitWindo ...
- 牛客 216 C 小K的疑惑
大意: 给定树, 求多少个三元组(i,j,k), 满足dis(i,j)=dis(j,k)=dis(k,i). 刚开始想复杂了, 暴力统计了所有的情况. #include <iostream> ...