首页 > 编程语言 >java学习日记20230311-方法重载/可变参数/作用域

java学习日记20230311-方法重载/可变参数/作用域

时间:2023-03-12 20:58:42浏览次数:41  
标签:20230311 java 作用域 局部变量 参数 可变 方法

方法重载

  • java中允许同一个类中,多个同名方法的存在,但要求形参列表不一致:System.out.println();
    • 减轻了起名的麻烦
    • 减轻了记名的麻烦
      • 方法名必须相同
      • 形参列表必须不同(个数/类型/顺序)
      • 返回类型无要求
      • 重载会进行最佳匹配

方法可变参数

  • java允许将同一个类中多个同名同功能但参数个数不同的方法,封装成一个方法,就可以通过可变参数实现;
  • 访问 修饰符。返回类型 方法名(数据类型 形参名){};
  • 可变参数的实参可以是0和任意多个
  • 可变参数的实参可以是数组;
  • 可变参数可以普通参数放在形参列表中,但是可变参数必须放在最后
  • 一个形参列表中只能出现一个可变参数

 

JAVA的作用域

  • 在java编程中,主要的变量就是属性(成员变量)和局部变量;
  • 局部变量一般是指在成员方法中定义的变量;
  • 全局变量,也就是属性,作用域为整个类体;
  • 局部变量除了属性之外的其他变量,作用域为定义他的代码块中;
  • 全局变量可以不赋值,直接使用,因为有默认值,局部变量必须赋值后,才能使用,因为没有默认值;
  • 属性和局部变量可以重名,访问时遵循就近原则;
  • 在同一个作用域中,比如在同一个成员方法中,两个局部变量不同重名;
  • 属性生命周期较长,伴随着对象的创建而创建,伴随着对象的销毁而销毁。局部变量,声明周期较短,伴随着他的代码块的执行而创建,伴随着代码块的结束而死亡,即再一次方法调用过程中
  • 全局变量/属性,可以被本类使用,也可以被其他类使用
  • 局部变量,只能在本类中的定义的方法中使用
  • 全局变量可以加访问修饰符
  • 局部变量不可以加修饰符

标签:20230311,java,作用域,局部变量,参数,可变,方法
From: https://www.cnblogs.com/DragonJack/p/17207915.html

相关文章

  • java.lang.IllegalStateException: couldn't determine local port. Please set sprin
    2023-03-12记录一下出现上述问题的原因(1)问题描述:在打包springboot项目时,出现了上述问题(2)产生原因:在打包时,项目的生命周期中没有关闭test(3)解决方法:关闭test,如图,之后......
  • 学java前预备知识
    计算机预科1.打开CMD的方式开始+系统+命令提示符。Win+R输入CMD打开控制台(推荐使用)。在任意文件夹下,按住Shift键+鼠标右键打开命令行窗口。在资源管理......
  • JavaScript异步编程的深入理解,使用回调函数实现异步编程
    异步编程是指在程序运行时,任务不会按照函数调用的顺序依次执行,而是可以同时执行多个任务。JavaScript异步编程有很多种方式,例如使用回调函数、Promise、async/await等。下面......
  • 2023-03-12 Java中的链表
    链表LinkedListJDK中有标准库实现:java.util.LinkedList,和java.util.List对比,其实两者都可以看做是动态数组链表的特征线性数据结构——链表是真正的动态数据结构:数......
  • AI来实现代码转换!Python转Java,Java转Go不在话下?
    今天看到个有趣的网站,给大家分享一下。该网站的功能很神奇,可以实现编程语言的转化。感觉在一些场景之下还是有点作用的,比如你原来跟我一样是做Java的,因为工作需要突然转G......
  • 【Java】图片压缩处理
    需求如下:一些图片太大了,手机拍摄上传的图片有5M大小,然后阅读的内容其实不需要特别高的分辨率1M以下的图片并不需要被压缩,压缩只是针对部分过大的图片处理 图片处理库:......
  • java8新特性-引用流-sorted
    例子:List<User>users=newArrayList<>();users.add(newUser("张三",30));users.add(newUser("李四",34));users.add(newUser("王五",20));......
  • Java中的线程状态
    Java中线程的状态New:新创建对象,还没执行start()方法RUNNABLE:就绪态和运行状态。BLOCKED:表示线程等到获取锁时候的状态。WAITING:处于这种状态的线程不会被分配CPU执行......
  • java SE、java ME、 java EE区别和
        ......
  • java数据库代码生成工具代码
    importcom.baomidou.mybatisplus.annotation.IdType;importcom.baomidou.mybatisplus.generator.AutoGenerator;importcom.baomidou.mybatisplus.generator.config.*......