zoukankan      html  css  js  c++  java
  • Java基础——方法

    方法

    一、方法的定义

    1、方法就是完成特定功能的代码块(在某些其他语言中,也被称为函数)

    2、方法定义的格式

    修饰符	方法返回值类型	方法名(参数类型1 参数1,参数类型2 参数2,……){
    	方法体语句;
    	return 返回值;
    }
    

    3、方法定义的格式说明:

    修饰符:现在先认为是固定的public static

    返回值类型:方法体中的代码执行结果的数据类型

    方法名:标识符

    参数:类比数学中函数的自变量z = f(x,y)

    return:跳转控制关键字

    返回值:方法执行得到的最终结果

    二、如何写一个函数——两个明确

    1、返回值类型 明确功能结果的数据类型

    2、参数列表 明确有几个参数,以及参数的数据类型

    对于方法的调用,又分为两种情况:

    (1)、有返回值的方法调用

    (2)、无返回值的方法调用

    3、方法调用的注意事项

    (1)、方法不调用不执行

    (2)、方法与方法是平级关系,可以嵌套调用,但不能嵌套定义

    (3)、方法定义的时候参数之间用逗号隔开

    (4)、方法调用的时候不用传递数据类型

    (5)、如果方法有明确的返回值,一定要有return带回一个值

    /**
    *定义方法:两数求和
    *
    */
    public class MethodDemo1 {
    
      public static void main(String[] args) {
        //用变量接收有返回值的方法调用
        int result = add(3, 4);
        System.out.println(result);
    
        //输出调用
        System.out.println(add(3,4));
    
        //直接调用 有返回值的方法调用没有意义
        add( 3, 4);
    
        //调用方法没有返回值的方法, 只能使用直接调用
        print("void 你好");
      }
    
      //定义方法 执行 3 + 4
      //public static int add1 () {
      //  int result = 3 + 4;
      //  return result;
      //}
    
      // 定义实现两数求和的加法运算
      public static int add (int x, int y) {
        int result = x + y;
        return result;
      }
    
      //定义没有返回值的方法  void表示方法没有返回值
      public static void print (String s) {
        System.out.println("我自己来输出" + s);
        //return; //可以有可以没有
      }
    
    
    }
    
    

    三、方法重载(overload)

    1、方法重载

    在同一个类中,允许存在多个的同名方法,只需满足:

    (1)、参数个数不同

    (2)、参数类型不同

    (3)、参数顺序不同(不是指形式参数的变量名顺序不同,而是指形式参数类型顺序)

    2、编译器如何区分方法——通过方法签名

    方法签名:方法名 + 参数列表 比如add(int, int) 、add(double, double)

    public class OverLoadDemo {
    
      public static void main(String[] args) {
    
        int a = 1;
        int b = 2;
        //int add = add(a, b, 10);
        //double c = 1.1;
        //double d = 2.2;
        //double doubleAdd = add(c, d);
        //
        //add(1,2);
    
        //int call = add(a, b);
        //add(a, b);
      }
    
      //两数相加
      public static int add(int x, int y) {
        System.out.println("int add");
        return x + y;
      }
    
      //public static double add(int x, int y) {
      //  return x + y;
      //}
    
    
      //实现3数相加
      public static int add(int x, int y, int z) {
        return add(x, y) + z;
      }
    
      //参数类型不同
      public static double add(double x, double y) {
        System.out.println("double add");
        return x + y;
      }
    
      //参数顺序不同
      public static int add(int y, byte x) {
        return x + y;
      }
    
      public static int add(byte y, int x) {
        return x + y;
      }
    
    }
    
    
    /** 
     * 比较两个数据是否相等。
     * 参数类型分别为 两个byte类型,
     *              两个short类型,
     *              两个int类型
     *              两个long类型
     * 并在main方法中进行测试
    
     */
    public class Exercise {
    
      public static void main(String[] args) {
    
        byte b = 1;
        short c = 2;
        long a  = 1L;
        long d = 100L;
        equals(b,c);
        equals(a,d);
      }
    
    
      public static boolean equals(byte a, byte b) {
        System.out.println("byte equals");
        return a == b;
      }
    
    
      public static boolean equals(short a, short b) {
        System.out.println("short equals");
        return a == b;
      }
    
    
      public static boolean equals(int a, int b) {
        System.out.println("int equals");
        return a == b;
      }
    
      public static boolean equals(long a, long b) {
        System.out.println("long equals");
        return a == b;
      }
    }
    
  • 相关阅读:
    尽管以C++为基础,但 Java 是一种更纯粹的面向对象程序设计语言
    Java 还是 C++?
    计划的回报
    阶段4:校订
    阶段3:开始创建
    阶段2:如何构建?
    阶段1:要制作什么?
    阶段0:拟出一个计划
    不要迷失
    分析和设计
  • 原文地址:https://www.cnblogs.com/lcpp/p/13081785.html
Copyright © 2011-2022 走看看