首页 > 编程语言 >Java学习,重载(Overload)

Java学习,重载(Overload)

时间:2024-11-27 09:05:05浏览次数:6  
标签:Java int Overload add 参数 重载 方法 public

Java中,重载(Overload)是指同一个类中,可以有多个方法有相同的名称,但这些方法的参数列表必须不同。参数列表的不同可以体现在参数的个数、参数的类型或者参数的顺序上。重载使得一个类可以以多种方式被调用,提高了代码的灵活性和可读性。

方法名称相同:
重载的方法必须具有相同的名称。这是重载的基本要求。
参数列表不同:
重载的方法必须有不同的参数列表。这可以是参数的数量不同、参数的类型不同,或者参数的顺序不同。
返回类型可以相同:
重载的方法可以有相同的返回类型,也可以有不同的返回类型。返回类型不是重载的区分条件。
访问修饰符可以不同:
重载的方法可以有不同的访问修饰符,但这通常不是重载的主要原因。访问修饰符的变化不会影响方法的重载。
异常处理可以不同:
重载的方法可以声明抛出不同的异常,但这也不是重载的区分条件。异常处理的变化不会影响方法的重载。
static和final方法与重载:
static方法和final方法都可以被重载。static方法属于类,而final方法只是不能被重写(在子类中),但它们在同一个类中仍然可以被重载。

示例:
class Calculator {
    // 重载方法add,用于两个整数相加
    public int add(int a, int b) {
        return a + b;
    }
 
    // 重载方法add,用于三个整数相加
    public int add(int a, int b, int c) {
        return a + b + c;
    }
 
    // 重载方法add,用于两个浮点数相加
    public double add(double a, double b) {
        return a + b;
    }
 
    // 重载方法add,用于两个字符串连接
    public String add(String a, String b) {
        return a + b;
    }
 
    // 这不是重载,因为参数列表与第一个add方法相同
    // public int add(int a, int b) {
    //     return a * b; // 错误:方法已存在
    // }
}
 
public class Main {
    public static void main(String[] args) {
        Calculator calc = new Calculator();
 
        System.out.println(calc.add(2, 3));       // 输出: 5
        System.out.println(calc.add(2, 3, 4));    // 输出: 9
        System.out.println(calc.add(2.5, 3.5));   // 输出: 6.0
        System.out.println(calc.add("Hello, ", "world!")); // 输出: Hello, world!
    }
}

 

标签:Java,int,Overload,add,参数,重载,方法,public
From: https://blog.csdn.net/xuann/article/details/144043012

相关文章

  • Java学习, 多态
    Java多态是面向对象编程中的一个核心概念,它允许对象在运行时表现出不同的行为。多态性主要通过继承和接口实现,使得一个引用变量在不同情况下可以指向不同类的对象,并调用这些对象的方法。多态的优点消除类型之间的耦合关系可替换性可扩充性接口性灵活性简化性编译时多......
  • 【最新原创毕设】基于Java的面向中职物联网专业教师的课程资源服务平台(免费领源码)可做
    目录摘要1绪论1.1选题背景与意义1.2国内外研究现状1.3论文结构与章节安排2系统分析2.1可行性分析2.2系统流程分析2.2.1系统开发流程2.2.2用户登录流程2.2.3系统操作流程2.2.4添加信息流程2.2.5修改信息流程2.2.6删除信息流程2.3 系统......
  • (分享源码)计算机毕业设计必看必学 上万套实战教程手把手教学JAVA、PHP,node.js,C++、pyth
    摘 要随着互联网大趋势的到来,社会的方方面面,各行各业都在考虑利用互联网作为媒介将自己的信息更及时有效地推广出去,而其中最好的方式就是建立网络管理系统,并对其进行信息管理。由于现在网络的发达,果园信息统计管理系统的信息通过网络进行信息管理掀起了热潮,所以针对果园信......
  • (分享源码)计算机毕业设计必看必学 上万套实战教程手把手教学JAVA、PHP,node.js,C++、pyth
    摘 要科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用Java技术建设物......
  • AVL树详解及Java实现
    (数据结构)AVL详解文章目录(数据结构)AVL详解1.前言思考试验结论分析2.AVL树的相关概念平衡因子AVL树的特点3.二叉搜索树的失衡添加元素造成的失**衡****添加元素失衡的特点**1.LL-右旋转(单旋)2.LR-左旋转后再右旋转(双旋)3.RR-左旋转以及RL-右旋转后再左旋转添加元素......
  • 初识java(1)
    大家好,今天是我们开启java的新篇章,这意味着又是一个新的开始,那么我们就来看看这个编程语言。一.标识符在程序中由用户给类名,方法名或者变量所取的名字。硬性规则:标识符中可以包含字母,数字以及下划线和$符号等等。注意:标识符不能以数字开头,也不能是关键字,且严格区分大小写。......
  • Java DAY8
        用Lambda函数替代匿名内部类对象(在匿名内部类的基础上再简化)Lambda省略更优雅,但是非必须方法引用(可遇而不可求,以看得懂为主)    静态方法引用        类名::静态方法名        实例方法引用    特定类的方法引用......
  • 第十章 JavaScript的应用
    10.1JavaScript概述10.1.1JavaScript简介JavaScript是一种基于对象(0bject)和事件驱动(EventDriven)并具有安全性能的脚本语言,能够与HTML(超文本标记语言)、Java语言一起在Web页面中与Web客户交互它无须经过先将数据传给服务器端(Server)、再传回来的过程,而直接可以由客户......
  • java集合及源码
    目录一.集合框架概述1.1集合和数组数组 集合1.2Java集合框架体系常用二. Collection中的常用方法        添加        判断   删除      其它集合与数组的相互转换 三Iterator(迭代器)接口3.0源码3.1作用及格式3.2原理3.3......
  • JAVAJSP物业管理系统源码JSP小区管理系统源码JSP小区物业管理系统源码JSP社区管理系统
    一、项目介绍系统的使用者分为用户(业主)和管理员(物业)两类,根据使用者不同,将有不同的主页,对应不同的功能权限。将本系统分为用户子系统和管理员子系统。在用户子系统中,使用者通过账号密码(用户)登入系统,进入主页,通过主页链接,进入小区服务,小区公告,信息查询,系统功能四个功能模块,在模......