什么是方法

  1. 何谓方法

    1. 就是一个方法只完成一个功能,这样利于后期的扩展

    2. 例子:

      public static void main(String[] args) {
         System.out.println(add(1, 2));
      }
      public static int add(int a,int b){
         return a+b;
      }
  2. 方法的定义及调用

    1. 用来完成特定功能的代码片段

    2. 方法包含一个方法头和一个方法体

      1. 修饰符

      2. 返回值类型

      3. 方法名

      4. 参数类型

        1. 形式参数:

        2. 实参:

          例:

          public static void main(String[] args) {
             //实际参数:实际调用传递给他的参数
             System.out.println(add(1, 2));
          }
          //形式参数,用来定义作用的
          public static int add(int a,int b){
             return a+b;
          }
      5. 方法体


           public static void main(String[] args) {
               int i = max(20, 20);
               System.out.println(i);
          }

           public static int max(int a, int b) {
               int result = 0;
               if (a == b) {
                   System.out.println("两数字相等");
                   return 0;//终止方法
              }
               if (a > b) {
                   result = a;
              } else {
                   result = b
                     
              }

               return result;
          }
  3. 方法重载

    1. 方法可以无限重名但是参数类型得不同

    2. 重载规则(面试笔试题)

      1. 方法名称必须相等

      2. 参数类别必须不同

      3. 方法的返回类型可以相等也可以不想等

      4. 仅仅返回类型不同不足以成为方法重载

      public static int max(int a, int b) {
         int result = 0;
         if (a == b) {
             System.out.println("两数字相等");
             return 0;//终止方法
        }
         if (a > b) {
             result = a;
        } else {
             result = b;
        }

         return result;
      }
      //重载
      public static double max(double a, double b) {
         double result = 0;
         if (a == b) {
             System.out.println("两数字相等");
             return 0;//终止方法
        }
         if (a > b) {
             result = a;
        } else {
             result = b;
        }

         return result;
      }
  4. 命令行传参

  5. 可变参数

    public static void main(String[] args) {
       Demo03 demo03 = new Demo03();
       demo03.test(1,2,3);
    }
    public void test(int...i){
       System.out.println(i[0]);
       System.out.println(i[1]);
       System.out.println(i[2]);
    }
  6. 递归(笔试里面的高频问点)

    1. A方法调用B方法,我们很容易理解

    2. 递归就是:A方法调用A方法,自己调自己

    3. 利用递归可以用简单的程序来解决一些复杂的问题。它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。

    4. 递归结构分为两部分:

      a.递归头:什么时候不调自身方法。如果没有头,将陷入死循环

      b. 递归体:什么时候需要调用自身方法

      public static void main(String[] args) {
         int f = f(5);
         System.out.println(f);
      }
      //2!-------2*1
      //3!-------3*2*1
      public static int f(int n){
         if (n==1){
             return 1;
        }else {
             return n*f(n-1);
        }
      }
    5.  

Java方法总结的更多相关文章

  1. C++调用JAVA方法详解

    C++调用JAVA方法详解          博客分类: 本文主要参考http://tech.ccidnet.com/art/1081/20050413/237901_1.html 上的文章. C++ ...

  2. JNI中C调用Java方法

    背景需求 我们需要在JNI的C代码调用Java代码.实现原理:使用JNI提供的反射借口来反射得到Java方法,进行调用. JNI关键方法讲解. 1. 在同一个类中,调用其他方法 JNIEXPORT v ...

  3. Atitit java方法引用(Method References) 与c#委托与脚本语言js的函数指针

    Atitit java方法引用(Method References) 与c#委托与脚本语言js的函数指针   1.1. java方法引用(Method References) 与c#委托与脚本语言js ...

  4. C#调用Java方法(详细实例)

    C#可以直接引用C++的DLL和转换JAVA写好的程序.最近由于工作原因接触这方面比较多,根据实际需求,我们通过一个具体例子把一个JAVA方法转换成可以由C#直接调用的DLL C#调用c++ C#调用 ...

  5. Android C代码回调java方法

    本文将讲述下列三种C代码回调java方法 1.c代码回调java空方法 2.c代码回调java int类型参数方法 3.c代码回调javaString类型参数方法 方法都差不多,先看c代码回调java ...

  6. oracle调用java方法的例子(下面所有代码都是在sql/plus中写)

    在Oracle中调用Java程序,注意:java方法必须是static类型的,如果想在JAVA中使用system.out/err输出log. 需要在oracle 中执行"call dbms_ ...

  7. Js调用Java方法并互相传参

    Js通过PhoneGap调用Java方法并互相传参的. 一.JAVA代码 写一个类,该类继承自Plugin并重写execute方法. import org.json.JSONArray; import ...

  8. HAL中通过JNI调用java方法【转】

    转载请注明本文出处:http://www.cnblogs.com/xl19862005 作者:Xandy 由于工作的需要,最近一直在研究HAL.JNI.Java方法之间互调的问题,并做了如下一些记录和 ...

  9. wrong number of arguments,java方法反射时数组参数的坑

    java方法中只有一个参数是数组,反射的时候我们不能想当然的传歌数组进去,传数组进去的时候表示多个参数. 两个数组不是一个意思啊. 我们应该把数组转为objet,这样才表示一个参数. import j ...

  10. JAVA 方法或者类的注释快捷键

    JAVA 方法或者类的注释快捷键 /*** 登录验证* @param 传入的* @return* @throws Exception*/这种注释效果 方法: 1.先敲“/”在敲两个**,然后回车 方法 ...

随机推荐

  1. 28.MysQL的日志管理及备份与恢复

    MySQL 索引.事务与存储引擎 目录 MySQL 索引.事务与存储引擎 MySQL 索引 索引的概念 索引的作用及副作用 索引的作用 索引的副作用 创建索引的原则依据 索引的分类和创建 普通索引 唯 ...

  2. JS:null

    null:它表示一个变量是空的或未知的. 看例子! var a = null; var b = 1; var c = "a"; var d; var e = "" ...

  3. 3D可视化解决方案为巷道工程安全护航

    最近山东栖霞笏山金矿事故中被困22名矿工的生命安全,在揪着全国民的心.大家都在祈求他们能从井下活着回来. 正是由于被困矿工的坚韧意志和政府相关部门不眠不休的奋力营救,11名矿工终于在被困十余日后平安升 ...

  4. 集成学习——GBDT(手推公式)

  5. SAP Web Dynpro-版本管理

    您可以使用版本管理来管理对象的旧版本,比较版本,也可以重置它们. 在版本管理中,您可以存储ABAP开发对象的不同版本. 在ABAP工作台中,您可以比较不同版本的- 视图 视窗 控制器 您也可以存储对象 ...

  6. SAP Table control

    REPORT RSDEMO02. * demostrates the use of table controls * unsolved problems: attributes left_col an ...

  7. SAP 日期计算

    1. CONVERSION_EXIT_IDATE_OUTPUT     INPUT:      20200601     OUTPUT:   03FEB2008 2. CONVERT_DATE_TO_ ...

  8. 揭秘GaussDB(for Redis):全面对比Codis

    摘要:Codis集群在国内Redis生态圈很流行,社区已停止维护.本文从架构和特性两方面对比,带你感受华为云GaussDB(for Redis)的全新价值. 本文分享自华为云社区<华为云Gaus ...

  9. sql-关键词的大小写与注释

    是否区分大小写 和 注释 大小写 oracle 自带的sqlplus: mysql 客户端 : Navicat: 注释 oracle 自带的sqlplus: mysql 客户端 : 小节 oracle ...

  10. 1_day01_java入门

    java入门 学习目标: 1.熟悉计算机编程语言 2.熟练掌握java特点 3.熟练配置java开发环境 4.熟练编写入门程序 5.熟练编写注释信息 一.计算机语言 1.1 什么是编程语言 计算机语言 ...