收藏此站 联系我们 网站
当前位置:首页» 行业新闻 » 【建站服务】高端!网站定制/设计/优化/二次开发/制作/搭建-邹平高端网站建设-域名申请

【建站服务】高端!网站定制/设计/优化/二次开发/制作/搭建-邹平高端网站建设-域名申请

作者: 风兰 . 阅读量: 18 . 发表时间:2022-09-21 05:12:14

网站建设

上往建站提供服务器空间服务商百度快照排名网站托管百度推广运营,致力于设计外包服务与源代码定制开发360推广搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


高端!网站定制/设计/优化/二次开发/制作/搭建-邹平高端网站建设


网站建设.png

ublic static void main(String args[]){      Animal b = new Dog(); // Dog 对象      b.move(); //执行 Dog类的方法   }}

以上实例编译运行结果如下:

动物可以移动狗可以跑和走

重载(Overload)

重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。

每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。

最常用的地方就是构造器的重载。

重载规则:

  • 被重载的方法必须改变参数列表(参数个数或类型不一样);

  • 被重载的方法可以改变返回类型;

  • 被重载的方法可以改变访问修饰符;

  • 被重载的方法可以声明新的或更广的检查异常;

  • 方法能够在同一个类中或者在一个子类中被重载。

  • 无法以返回值类型作为重载函数的区分标准。

实例

Overloading.java 文件代码:

public class Overloading {    public int test(){        System.out.println("test1");        return 1;    }    public void test(int a){        System.out.println("test2");    }      //以下两个参数类型顺序不同    public String test(int a,String s){        System.out.println("test3");        return "returntest3";    }      public String test(String s,int a){        System.out.println("test4");        return "returntest4";    }      public static void main(String[] args){        Overloading o = new Overloading();        System.out.println(o.test());        o.test(1);        System.out.println(o.test(1,"test3"));        System.out.println(o.test("test4",1));    }}

重写与重载之间的区别

区别点重载方法重写方法
参数列表必须修改一定不能修改
返回类型可以修改一定不能修改
异常可以修改可以减少或删除,一定不能抛出新的或者更广的异常
访问可以修改一定不能做更严格的限制(可以降低限制)

总结

方法的重写(Overriding)和重载(Overloading)是java多态性的不同表现,重写是父类与子类之间多态性的一种表现,重载可以理解成多态的具体表现形式。

  • (1)方法重载是一个类中定义了多个方法名相同,而他们的参数的数量不同或数量相同而类型和次序不同,则称为方法的重载(Overloading)。

  • (2)方法重写是在子类存在方法与父类的方法的名字相同,而且参数的个数与类型一样,返回值也一样的方法,就称为重写(Overriding)。

  • (3)方法重载是一个类的多态性表现,而方法重


重载就是同样的一个方法能够根据输入数据的不同,做出不同的处理


重写就是当子类继承自父类的相同方法,输入数据一样,但要做出有别于父类的响应时,你就要覆盖父类方法


horse

   horse


  guo***gren1107@163.com


5年前 (2017-05-12)

   我一点都不方


  274***2310@qq.com


54

重载是同样的一个方法写多次变量修饰符不一样,当调用方法时,会自动判断给入数的类型,选取其中符合的方法。


public class Overloading {

    private static int i = 1;

    private static double l = 3.1415;

    private static String k = "我是栗子";


    //参数类型不同

    public void test(int a){

        System.out.println("你输入了整数:"+a);

    }   

 

    public void test(double a){

        System.out.println("你输入了浮点数:"+a);

    }   

 

    public void test(String a){

        System.out.println("你输入了字符串:"+a);

    }   

 

    public static void main(String[] args){

        Overloading lizi = new Overloading();

        lizi.test(i);

        lizi.test(l);

        lizi.test(k);

    }

}

输出结果:


你输入了整数:1

你输入了浮点数:3.1415

你输入了字符串:我是栗子

我一点都不方

   我一点都不方


  274***2310@qq.com


5年前 (2017-06-04)

   九刃


  528***187@qq.com


38

补充:父类申明变量指向子类实例,该父类变量不能调用父类不存在的变量和方法,否则会编译错误


class Animal{

   public void move(){

      System.out.println("动物可以移动");

   }

}

 

class Dog extends Animal{

   public int age;

   public void move(){

       age = 10;

      System.out.println("狗可以跑和走");

   }

   public void bark(){

      System.out.println("狗可以吠叫");

   }

}

 

public class TestOverride{

   public static void main(String args[]){

      Animal a = new Animal(); // Animal 对象

      Animal b = new Dog(); // Dog 对象

 

      a.move();// 执行 Animal 类的方法

      b.move();//执行 Dog 类的方法

      // b.age;//去掉前注释符号,会编译错误

      // b.bark();//去掉前注释符号,会编译错误

   }

}

九刃

   九刃


  528***187@qq.com


5年前 (2017-06-27)

   luzhe610


  sci***n@qq.com


78

重载与重写的简明理解:


 重载反映的是"随机应变". 同样一项功能, 根据数据类型的不同, 采用不同的处理方式. 比如, 同样是吃饭, 去高档餐厅吃西餐, 你会西装革履, 但是去吃火锅, 穿便装就比较合适.

重写反映的是"父子差异". 你"继承"了父亲吃火锅的爱好, 但是吃同一份鸳鸯锅(注意, 数据类型相同) , 你喜欢涮红汤, 你父亲喜欢涮清汤.

luzhe610

   luzhe610


  sci***n@qq.com


5年前 (2017-09-18)

   TJ


  133***99286@163.com


12

关于重载函数参数列表变化的可能性:


/**

 * @author tangjia

 * @date 2017年10月29日 下午4:29:06

 * @version 1.0

 * @since jdk 1.8.0_65

 * 类说明:测试重载函数

 */

public class Main {


    public static void main(String[] args) {

        int age = 10;

        String name = "ii";

        handle(age);

        handle(name);

        handle(name,age);

                handle(age,name);

    }

    

    public static void handle(int age) {

        System.out.println(age);

    }

    

    public static void handle(String name) {

        System.out.println(name);

    }

    

    public static void handle(int age,String name) {

        System.out.println("the age of "+name+" is "+age);

    }

    

    public static void handle(String name, int age) {

        System.out.println("the age of "+name+" is "+age);

    }

}

 1.参数类型变化,如参数从int 转变为String 类型

 2.参数个数变化,如参数个数从一个转变为两个

 3.参数顺序变化,如从handle(int age, String name)转变为handle(String name,int age)

 4.函数返回值可变可不变

TJ

   TJ


  133***99286@163.com


5年前 (2017-10-29)

   Xander663


  xan***1998@163.com


12

自定义的类重载比较函数的方法:


public class Match implements Comparable{

    public int compareTo(Object o) {

        Match tgt = (Match)o;


高端!网站定制/设计/优化/二次开发/制作/搭建-邹平高端网站建设


上往建站提供搭建网站域名注册官网备案服务网店详情页设计企业网店专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管网页美工排版,致力于域名申请竞价托管软文推广全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机网站推广百度竞价托管网站建设上网建站推广服务网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站

全国服务热线
18114747181
二维码
手机端二维码
上往建站
地址:全国各地都有驻点商务 |  网站建设上往建站
在线咨询QQ:1120768800
 
QQ在线咨询
售前咨询热线
18114747181
营销顾问
营销顾问
售后服务热线
400-000-1116
售后服务
售后服务