Java方法03——构造方法与可变参数
我们应该有恒心,尤其要有自信心——居里夫人
★本篇笔记简介:一、拓展知识-->二、构造方法-->三、可变参数
目录
一、拓展知识:命令行传参
①为什么要了解命令行传参?
有时候你希望运行一个程序时候再传递给它消息。
这要靠传递命令行参数给main()函数实现。
②命令行形参是什么?
命令行参数是在执行程序时候紧跟在程序名字后面的信息。
二、构造方法
ps:构造方法,可以联系C++中的构造函数来加以理解。
1构造方法的作用:
当一个对象被创建时候,构造方法用来初始化该对象。
2.关于构造方法的几点说明:
①构造方法与它的类名相同,它无返回值。
②通常会使用构造方法给一个类的实例变量赋初值,或者执行其它必要的步骤来创建一个完整的对象。
③不管你是否自定义构造方法,所有的类都会有构造方法——默认构造方法,它的访问修饰符和类的访问修饰符相同即类为 public,构造函数也为 public。
④一旦有自定义的构造方法,默认构造方法就会失效。
3.实例助解:
简单构造方法实现:调用构造方法来初始化一个对象
// 一个简单的构造方法 class MyClass { int x; //Myclass中的构造方法 MyClass() { //如果没有这个自定义的构造方法,类在构造初始化时,会调用默认的构造方法。 x = 5; } public static void main(String args[]) { MyClass c1 = new MyClass(); MyClass c2 = new MyClass(); System.out.println(c1.x + " " + c2.x); } }
输出演示如图:
三、可变参数
1.预备知识
Java支持传递同类型的可变参数给一个方法。(JDK1.5时加入)
2.可变参数理解
java 可变参数是1.5版本的新特性,意思其实就是:用户若是想定义一个方法,但是并不知道以后要用的时候,到底要传几个参数进去,这时可以在方法的参数列表中写参数类型或者数组名,然后在方法内部直接用操作数组的方式操作。
①可变适用于:
参数个数不确定,类型确定的情况,java把可变参数当做数组处理。
②方法的可变参数的声明如下所示:
typeName... parameterName
在方法声明中,在指定参数类型后加一个省略号(…) 。
③注意:
- 一个方法中只能指定一个可变参数;
- 它必须是方法的最后一个参数。
- 任何普通的参数必须在它之前声明。
④ ③中注意部分解释
ps: a.和b.结合起来理解
a.一个方法为什么只能指定一个可变参数?
因为当可变参数个数大于1时,至少会有一个不是最后一项,所以只支持有一个可变参数。
b.可变参数为什么必须要是方法的最后一个参数呢?
因为参数个数不定,所以当其后边还有相同类型参数时,java无法区分传入的参数属于前一个可变参数,还是后边的参数,可变参数只能位于最后一项。
3.实例助解:
public static void main(String args[]) { // 调用可变参数的方法 Max(1, 3, 7.7, 5.5, 9); Max(new double[]{1, 2, 3}); } public static void Max( double... numbers) { if (numbers.length == 0) { System.out.println("没有参数通过"); return; } double result = numbers[0]; for (int i = 1; i < numbers.length; i++){ //for循环,实现大小比较 if (numbers[i] > result) { result = numbers[i]; } } System.out.println("最大值为:" + result); }
输出演示如图:
作者:Code_流苏(一个喜欢古诗词和编程的Coder😊)
★喜欢的话,还请多多点赞与关注! 感谢支持!
笔记更新随个人学习进度而进行,欢迎评论交流学习!