Java方法03——构造方法与可变参数

简介: Java方法03——构造方法与可变参数

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😊)

★喜欢的话,还请多多点赞与关注! 感谢支持!

笔记更新随个人学习进度而进行,欢迎评论交流学习!


目录
相关文章
|
1月前
|
算法 Java 开发者
Java 项目实战数字华容道与石头迷阵游戏开发详解及实战方法
本文介绍了使用Java实现数字华容道和石头迷阵游戏的技术方案与应用实例,涵盖GUI界面设计、二维数组操作、游戏逻辑控制及自动解法算法(如A*),适合Java开发者学习游戏开发技巧。
184 46
|
2月前
|
安全 Java API
Java 17 及以上版本核心特性在现代开发实践中的深度应用与高效实践方法 Java 开发实践
本项目以“学生成绩管理系统”为例,深入实践Java 17+核心特性与现代开发技术。采用Spring Boot 3.1、WebFlux、R2DBC等构建响应式应用,结合Record类、模式匹配、Stream优化等新特性提升代码质量。涵盖容器化部署(Docker)、自动化测试、性能优化及安全加固,全面展示Java最新技术在实际项目中的应用,助力开发者掌握现代化Java开发方法。
115 1
|
2月前
|
安全 Java API
Java 集合高级应用与实战技巧之高效运用方法及实战案例解析
本课程深入讲解Java集合的高级应用与实战技巧,涵盖Stream API、并行处理、Optional类、现代化Map操作、不可变集合、异步处理及高级排序等核心内容,结合丰富示例,助你掌握Java集合的高效运用,提升代码质量与开发效率。
191 0
|
2月前
|
算法 搜索推荐 Java
Java中的Collections.shuffle()方法及示例
`Collections.shuffle()` 是 Java 中用于随机打乱列表顺序的方法,基于 Fisher-Yates 算法实现,支持原地修改。可选传入自定义 `Random` 对象以实现结果可重复,适用于抽奖、游戏、随机抽样等场景。
97 0
|
2月前
|
安全 Java
JAVA:Collections类的shuffle()方法
`Collections.shuffle()` 是 Java 中用于随机打乱列表顺序的工具方法,适用于洗牌、抽奖等场景。该方法直接修改原列表,支持自定义随机数生成器以实现可重现的打乱顺序。使用时需注意其原地修改特性及非线程安全性。
95 0
|
2月前
|
算法 安全 Java
java中Collections.shuffle方法的功能说明
`Collections.shuffle()` 是 Java 中用于随机打乱列表顺序的方法,基于 Fisher-Yates 算法实现,常用于洗牌、抽奖等场景。可选 `Random` 参数支持固定种子以实现可重复的随机顺序。方法直接修改原列表,无返回值。
97 0
|
2月前
|
Java 程序员 项目管理
Java 程序员不容错过的 Git Flow 全套学习资料及应用方法详解 Git Flow
本文详细介绍了Git Flow技术方案及其在Java项目中的应用实例,涵盖分支管理、版本发布与紧急修复流程,帮助开发者掌握高效的代码管理方法,提升团队协作效率。附示例操作及代码下载链接。
70 0
java202303java学习笔记第四十天反射获取构造方法1
java202303java学习笔记第四十天反射获取构造方法1
154 0
|
存储 Java Spring
java笔记之反射机制(方法&构造方法)
如何获取Class 1.Class中静态方法 forName("类全名") 2.类.class关键字 3.对象引用.getClass()方法 Class中的常用方法 int = getModifiers(); 获取类的修饰符(权限+特征) String = getName(); 获取类的全名(包名.类名) String = getSimpleName(); 获取类简单名(只有类名 缺少包) Class = getSuperClass(); 获取当前类父类的对应Class Class[] = getInterfaces(); 获取当前类父亲接口 Package
166 0

热门文章

最新文章