JAVA_06_方法

01_例子

跟C++很像,不列举了

说一下重载

02_重载

判断Java方法是否重载主要看方法名相同,参数列表不同。以下是具体规则:

1.方法名必须完全相同 大小写敏感,同名是重载的前提。

2.参数列表必须不同 满足以下任一条件即可:

① 参数类型不同

② 参数顺序不同(类型组合顺序)

③ 参数个数不同

3.与返回值、访问修饰符、异常无关

仅参数列表影响重载,返回值类型不同、访问修饰符不同或抛出异常不同都不算重载。

简单记忆:重载是编译时多态,编译器根据传入参数就能确定调用哪个方法。

举个例子:

java 复制代码
public class Example {
    // 参数个数不同:重载
    void show(int a) { }
    void show(int a, int b) { }

    // 参数类型不同:重载
    void show(String s) { }
    void show(double d) { }

    // 参数顺序不同:重载
    void show(int a, String s) { }
    void show(String s, int a) { }

    // 仅返回值不同:编译错误,不是重载
    // int show() { return 1; }
    // void show() { }
}

03_方法的值传递

调用change方法前:100

调用change方法后:100

调用change方法前:20

调用change方法后:200

数组是引用数据类型,形参和实参指向同一个地址,当形参修改时,实参的值也会修改,

而 int a = 100,这种是基本数据类型,形参的改变不会影响实参

相关推荐
格林威6 小时前
多相机微秒级对齐:硬件触发 vs PTP(IEEE 1588)方案实战对比
开发语言·人工智能·数码相机·机器学习·计算机视觉·视觉检测·机器视觉
都叫我大帅哥6 小时前
给 Java 程序员的 CSRF 攻击详解:从原理到防御实战
java
江南十四行6 小时前
Spring框架核心(上)——IoC控制反转与DI依赖注入详解
java·后端·spring
fb_123457 小时前
Linux磁盘分区从入门到实操:MBR_GPT全解析+分区工具实战指南
java·linux·gpt
初级代码游戏7 小时前
iOS开发 Swift 速记2:三种集合类型 Array Set Dictionary
开发语言·ios·swift
码智社8 小时前
JSON 零基础到资深全体系教程
java·json
峥嵘life9 小时前
Android WiFi 热点 Channel 信道 和 Frequency 频率 转换总结
android·开发语言
wgego9 小时前
基础的反序列化一些总结(php和java)
java·开发语言·笔记
冻柠檬飞冰走茶10 小时前
PTA基础编程题目集 7-8超速判断(C++语言实现)
开发语言·数据结构·c++·算法
机建狂魔10 小时前
Codex 接入第三方模型 API 实战:以 Mimo 为例
java·服务器·数据库·ai·ai编程·codex