首页 学无止境Java笔记正文

Java-方法基本语法

By无邪 Java笔记 2020-03-04 56 0

方法

以下程序不使用“方法”,分析存在那些缺点?

public class Methodtest01{    public static void main(string[] atgs){        //需求1:编写程序计算10、20的和,将结果输出        int a = 10;        int b = 20;        int c = a + b;        System.out.println(a + "+" + b + "+" + "=" + c);        //需求2:编写程序计算666、888的和,将结果输出        int x = 666;        int y = 888;        int z = x + y;        System.out.println(x + "+" + y + "+" + "=" + z);    }}

分析:以上的需求都是一个计算和的需求,功能相同,只不过每次数据不同。代码没得到复用。 

改进后

public class Methodtest01{    public static void main(string[] atgs){        //计算两个int类型数据的和。        sumInt(10,20);        sunint(666,888);    }    //方法:单独的定义一个方法,完成计算两个int类型数据的和,并且将结果输出的功能。    public static void sumInt(int a,int b){        int c = a + b;        System.out.println(a + "+" + b + "+" + "=" + c);    }}

方法的本质:就是一段代码片段,这段代码片段可以完成某个特定的功能,并且可以重复使用. 
方法定义在类体中,方法体之外。方法的编写位置没有先后顺序,可以随意。方法体中不能定义方法!!
 
方法体中的代码按自上往下的顺序依次执行! 
方法单词:Method 
C语言称为:函数/Function

方法的基础语法:

语法结构:

[修饰符列表] 返回值类型 方法名(形式参数列表){    方法体;    return 值;}

语法解释:

修饰符列表:

  • 可选项不是必须的,

  • 目前统一为:public static【后面记录】

  • 方法的修饰符列表当中没有static关键字,怎么调用这个方法? 

    • 类名.方法名(实际参数列表); .解释为 

返回值类型:

  • 什么是返回值? 

    • 方法的功能结束之后大多数都是需要返回最终执行结果的,执行结果可能是一个存在的数据。而这个存在的数据就是返回值.只要是数据就一定会有类型。

  • 返回值类型? 

    • 返回值是一个具体存在的数据,数据都是有类型的,此处需要指定的是返回值的具体类型

  • 返回值类型可以指定那些类型? 

    • Java任意一种类型都可以,包括基本数据类型和引用数据类型。

  • 不返回任何数据怎么写? 

    • Java中规定,当一个方法执行结束之后不返回任何数据的话,返回值类型位置必须编写:void 关键字,不可以不写!

  • 返回值怎么返回? 

    • return 值,并且要求“值”的数据类型必须和“方法的返回值类型”一致。不然编译器报错。

  • 返回值类型是void的时候,在方法体中不能编写return 值;这样的语句。但是要注意可以编写return;这样的语句。

  • 只要带有return关键字的语句执行,return语句所在的方法结束。 

方法名:

  • 只要是合法的标识符就行

  • 方法名最好见名知意

  • 方法名最好是动词

  • 方法名首字母要求小写,后面每个单词首字母大写


形式参数列表(形参):

  • 形参是局部变量:int a、double b......

  • 形参的个数可以是:0-N个

  • 多个形参之间用隔开

  • 形参中起决定性作用的是形参的数据类型,形参的名字就是局部变量的名字。

  • 方法在调用的时候,实际给这个方法传递的真是数据被称为:实际参数,简称实参

  • 实参列表和形参列表必须满足:

    列如: 
    方法定义 
    public static int sum(string 变量名,int 合法的标识符就行){ 
    }
     
    方法调用: 
    sum("abc",20)

    • 数量相同

    • 数据类型对应相同


方法体:

  • 方法体必须由大括号括起来{},方法体中的代码有顺序,遵循自上而下的顺序依次执行,并且方法体由Java语句够成,每一个Java语句以;结尾。

方法怎么调用?

方法只定义不去调用是不会执行的,只有在调用的时候才会执行。 
语法规则:《方法的修饰符列表当中有static》

  • 完整:类名.方法名(实参列表);这是一条java语句,表示调用某个类的某个方法,传递这样的实参。

  • 在本类中可以省略类名.,但是调用其他类的时候必须写类名.,省略后是默认在本类中找被调用的方法的

  • 方法的返回值类型不是void的时候: 

    • 要求方法必须百分百执行return 值;这样的返回值

    • 否则编译器报错:编译错误

  • 一个方法有返回值的时候,当我们调用这个方法的时候,方法返回了一个值,对于调用者来说,这个返回值可以选择接受,也可以选择不接受。但是大部分情况下我们都是选择接收的!

深入return

  • 带有return关键字的java语句只要执行,所在的方法执行结束。

  • 在“同一个作用域”中,return语句下面不能编写任何代码,因为这些代码永远都执行不到。所以编译报错。

public class Method{    public static void main(string[] arg){        m();    }    pubilc static int m(){        int a = 10;        if(a > 3){ //编译报错,因为编译期检测到if有可能为真有可能为假,所以return 1;不一定执行,就相当于不返回,报错!            return 1;        }    }}
  • 在返回值类型是void的方法中使用return;语句。 

    • return;语句出现在返回值类型为void的方法中,主要是为了用来结束当前方法!

public class Method{
    public static void main(string[] arg){
            m();
            m1();
   }
    pubilc static void m(){ 
     //编译错误:对于结果类型为空的方法,无法返回值。
         return 1;
   }
   pubilc static void m1(){
     //编译正确!           
      return;    
   }
}
  • return用来结束当前方法,break、continue用来结束循环


本文标题:Java-方法基本语法
本文链接:https://dingqidong.com/?id=133
作者授权:除特别说明外,本文由 By无邪 原创编译并授权 无邪-blog 刊载发布。
版权声明:本文使用「署名-非商业性使用-相同方式共享 4.0 国际」创作共享协议,转载或使用请遵守署名协议。

评论