JAVA基础-----方法重载

overload--方法重载

方法重载

1. 概念: 一个类中的一组方法 有相同方法的名字 不一样的参数列表 这样的一组方法

  • 参数的不同体现在哪里?
  • 参数的个数 参数的类型 参数的顺序

2. 作用:为了让使用者便于记忆与调用 只需要记录一个名字 执行不同的操作

3. 自己也可以设计重载

  • 通过对象.方法名字 调用方法 可以直接通过方法的名字定位方法
  • 如果方法名字一致 通过放的参数列表类型 来定位方法
  • 如果没有与传递参数类型一致的方法,可以找一个参数类型可进行转化(自动);例如char 和 int

4. 在JDK1.版本之后 出现了一个新方法

  • int... x 动态参数列表 类型固定 个数可以动态 0--n都可以
  • x本质上就是一个数组 有length属性 有[index]
  • 动态参数列表的方法 不能 与数组类型的方法构成方法重载 因为本质一样的
  • 动态参数列表 可以不传参数 相当于0个 数组的方法必须传递参数
  • 动态参数列表在方法的参数中只能存在一份儿 且必须放置在方法参数的末尾
public class Overload
    public void teat(int... x){//x本质上是数组  int[] x={1,2,3,4,5,6}
        System.out.println("执行了tese方法带动态列表");
        for (int i =0;i<x.length;i++){
            System.out.print(" "+x[i]);
        }
    }
    public void teat(){
        System.out.println("执行了tese方法带没有携带参数");
    }
    public void teat(boolean b){
        System.out.println("执行了tese方法带boolean参数"+b);
    }
    public void teat(int i){
        System.out.println("执行了tese方法带int参数"+i);
    }
    public void teat(String s){
        System.out.println("执行了tese方法带int参数"+s);
    }
    public void teat(char c){
        System.out.println("执行了tese方法带int参数"+c);
    }

    public static void main(String[] args) {
        //1.创建对象
        Overload ol=new Overload();
        ol.teat();
        ol.teat(true);
        ol.teat(10);
        ol.teat(1,2,3,4,5,6);
        //通过对象.方法名字 调用方法  可以直接通过方法的名字定位方法
        //如果方法名字一致 通过放的参数列表类型 来定位方法
        //如果没有与传递参数类型一致的方法,可以找一个参数类型可进行转化(自动);例如char 和 int

    }
}

运行结果:
执行了tese方法带没有携带参数
执行了tese方法带boolean参数true
执行了tese方法带int参数10
执行了tese方法带动态列表
 1 2 3 4 5 6
Process finished with exit code 0

原文地址:https://www.cnblogs.com/CGGG/p/12563621.html

时间: 2024-10-07 21:15:57

JAVA基础-----方法重载的相关文章

java基础---------方法和方法重载

一.方法的基本使用方法的格式: 修饰符 返回类型 方法名(参数类型 参数1,参数类型 参数2){ 方法体语句: Return 返回值 } package java基础; import com.sun.corba.se.impl.orb.ParserTable; /** * 测试方法的使用 */ public class TestMethod { public static void main(String[] args) { //通过对象调用普通方法 TestMethod tm=new Test

-Java基础-方法

1.方法: 方法就是对一片代码包装起来,给这片代码按上一个名字.什么时候用到这片代码就调用这个名字就可以了. 1.方法必须申请在类中 2.方法中除了不能方法和类,其他想怎么写就这么写. 3.方法中可以调用[学Java,到凯哥学堂kaige123.com]其他的方法,但不能相互调用,会出现方法嵌套调用溢出错误 "java.lang.StackOverflowError" 4.主要按值传递(基本数据类型)和按引用传递.  5.集合参数 一个数据类型加上三个点再加上一个变量名 static

JAVA基础——方法笔记

java方法_学习笔记 由于我本人对java方法已经比较熟悉了,java方法的定义和使用也比较简单,这里只列举了基于我自身容易搞错的地方,希望对大家的学习有帮助!! 方法的参数可以是基本数据类型,如 int.double 等,也可以是引用数据类型,如 String.数组. 方法的重载 判断方法重载的依据: 1. 必须是在同一个类中 2. 方法名相同 3. 方法参数的个数.顺序或类型不同 4. 与方法的修饰符或返回值没有关系

Java笔记 —— 方法重载和方法重写

h2 { color: #4ABCDE } a { text-decoration: none !important } a:hover { color: red !important; text-decoration: underline !important } pre { border: solid 1px #CCCCCC; background-color: #F8F8F8; margin: 15px; overflow: auto; white-space: pre; font-siz

JAVA中方法重载,方法覆盖,方法继承等小结

1.方法重载(method overload)的具体规范 如果有两个方法的方法名相同,但参数不一致,哪么可以说一个方法是另一个方法的重载. 一.方法名一定要相同. 二.方法的参数表必须不同,包括参数的类型或个数,以此区分不同的方法体. 1.如果参数个数不同,就不管它的参数类型了! 2.如果参数个数相同,那么参数的类型或者参数的顺序必须不同. 三.方法的返回类型.修饰符可以相同,也可不同. 四.main方法也可以被重载

java 子类方法重载和重写区别

方法重写: * Override和Overload的区别?Overload能改变返回值类型吗? * overload可以改变返回值类型,只看参数列表 * 方法重写:子类中出现了和父类中方法声明一模一样的方法.与返回值类型有关,返回值是一致(或者是子父类)的 * 方法重载:本类中出现的方法名一样,参数列表不同的方法.与返回值类型无关. * 子类对象调用方法的时候: * 先找子类本身,再找父类.

java中方法重载是什么, 实际中到底有什么意义, 用处?请举例

7.3 方法重载(overload)  (视频下载) (全部书籍) 当几个方法有相同的方法名,但参数个数不同或参数类型不同时,就涉及方法重载 方法重载有什么意义呢?在公司里编程,有时候一个方法名,要用到很多次,而且每次跟每次的参数都不一样,而且这个方法名,特别适合某个业务(比如登录),这个时候你变成其他的方法名,对大家来讲都很别扭,这时候就用到重载的概念了. square(int i)和square(double d) 涉及方法重载. public class SquareDemo { publ

Java面向对象----方法重载

方法重载(over load):方法名相同,参数列表不同,返回类型无关 package com.tanlei.newer; public class OverLoadDemo { public static void main(String[] args) { Printer printer=new Printer(1000); printer.print("hello"); printer.print(12); printer.print("hello", 12)

JAVA面向对象 - 方法重载与覆盖

方法重载 方法重载就是在类的同种实现方式,到底采用哪种方式,取决与调用者给出的参数.方法重载特点是方法名相同,方法的参数类型,个数,顺序至少有一项不同,方法放回类型可以不同,方法的修饰符可以不同,只是放回类型不一样,不能构成重载 实例 1 package com.beekc.www; 2 3 public class Beekc { 4 public static void main(String[] args) { 5 Max c = new Max(); 6 System.out.print