zoukankan      html  css  js  c++  java
  • Method overloading

    Method overloading

    Method overloading permits multiple methods in the same class to have the same name as long as they have unique signatures. When compiling an invocation of an overloaded method, the compiler uses overload resolution to determine the specific method to invoke. Overload resolution finds the one method that best matches the arguments or reports an error if no single best match can be found. The following example shows overload resolution in effect. The comment for each invocation in the Main method shows which method is actually invoked.

    class Test
    {
    static void F() {
    Console.WriteLine("F()");
    }

    static void F(object x) {
    Console.WriteLine("F(object)");
    }

    static void F(int x) {
    Console.WriteLine("F(int)");
    }

    static void F(double x) {
    Console.WriteLine("F(double)");
    }

    static void F<T>(T x) {
    Console.WriteLine("F<T>(T)");
    }

    static void F(double x, double y) {
    Console.WriteLine("F(double, double)");
    }

    static void Main() {
    F(); // Invokes F()
    F(1); // Invokes F(int)
    F(1.0); // Invokes F(double)
    F("abc"); // Invokes F(object)
    F((double)1); // Invokes F(double)
    F((object)1); // Invokes F(object)
    F<int>(1); // Invokes F<T>(T)
    F(1, 1); // Invokes F(double, double) }
    }

    As shown by the example, a particular method can always be selected by explicitly casting the arguments to the exact parameter types and/or explicitly supplying type arguments.

  • 相关阅读:
    找不到vc_runtimeMinimum_x86.msi!
    ubuntu开启coredump
    log4j2项目打成jar包运行日志无法打印
    linux 下使用 tc 模拟网络延迟和丢包
    Spring MVC
    typora实现图片上传
    java异常和调优
    java线程
    java三大特征
    webstorm如何更换主题以及更换主题后字体缩放问题
  • 原文地址:https://www.cnblogs.com/flyinthesky/p/1563657.html
Copyright © 2011-2022 走看看