Java中方法介绍

方法就是用来完成解决某件事情或实现某个功能的办法。

    方法实现的过程中,会包含很多条语句用于完成某些有意义的功
能——通常是处理文本,控制输入或计算数值。
	我们可以通过在程序代码中引用方法名称和所需的参数,
实现在该程序中执行(或称调用)该方法。方法,一般都有一个返回值,
用来作为事情的处理结果。

语法格式

   修饰符   返回类型  方法名(参数类型  参数名1,参数类型  参数名2,...){
   			执行语句
   			...
   			return 返回值;
    }
  • 修饰符:对访问权限的限定,有静态修饰符statiic,最终修饰符final等

  • 返回值类型:用于限定方法返回值的数据类型

  • 参数类型:用于限定调用方法时传入参数的数据类型

  • 参数名:是一个变量,用于接收调用方法时传入的数据值

  • return关键字:用于结束方法以及返回方法指定类型的值

      注 1、方法中的“参数类型 参数名1,参数类型 参数名2”被称作参数列表;
      	 2、参数列表可以为空,即()内不写任何内容;
      	 3、方法的返回值必须为方法声明的返回值类型
    	 4、方法中没有返回值,返回值类型要声明为void,此时,方法中return
    	    语句可以省略。
    

例1:

 	修饰符   修饰符   返回值类型   方法名  		参数列表
   	public  static   void        main     (String[] args) 

例2:

 修饰符   修饰符   返回值类型    方法名  		参数列表
 public  static      int    Fibonacci2       (int n)

调用的图解
在这里插入图片描述
方法的重载

 方法重载是指在一个类中定义多个同名的方法,
 但要求每个方法具有不同的参数的类型或参数的个数。

注:

  • 参数个数不同,如method(int x)与method(int x,int y)不同
  • 参数类型不同,如method(int x)与method(double x)不同
  • 参数顺序不同,如method(int x,double y)与method(double x,int y)不同
  • 重载只与方法名与参数类型相关与返回值无关 如void method(int x)与int method(int y)不是方法重载,不能同时存在
  • 重载与具体的变量标识符无关
    如method(int x)与method(int y)不是方法重载,不能同时存在

参数的传递

要调用一个方法时,我们会把指定的数值,传递给方法中的参数,
这样方法中的参数就拥有了这个指定的值,可以使用该值,在方法中运算
  • 形式参数:定义方法时,参数列表中的变量
  • 实际参数:调用方法时,传入给方法的数值
例:
public class Test7 {
    public static void main(String[] args) {
        //调用sum时2和4为实际参数
        int sum = sum(2,4);
        System.out.println(sum);
    }

	//sum方法中的参数列表中的a和b都为形式参数
	public static int  sum(int a,int b){
	    int sum =0;
	    sum=a+b;
	    return sum;
}
}

地址的介绍

一、局部变量
	方法中的局部变量存在于栈内存中,当调用一个方法时,系统都会为该
	方法建立一个方法栈,其所在的方法中声明的变量就存放在方法栈中
	当方法结束,系统就会释放方法栈,其对应在该方法中声明的变量随着栈的销毁而约束
二、成员变量
	对象实例的引用存储在栈内存中,对象实例存储在堆内存中。
	对象中声明的成员变量存储在堆中。
 三、静态变量
 	存放于Java内存区域的方法区
 	与Java堆一样,是各个线程共享的内存区域
 	用于存储已被虚拟机加载的类的信息、常量、静态变量

局部变量和成员变量的区别

  • 定义位置不同

    定义在类中的变量是成员变量
    定义在方法中或者代码块中里面的为局部变量
    
  • 在内存中位置不同

    成员变量存储在堆内存的对象中
    局部变量存储在栈内存的方法中
    
  • 声明的周期不同

    成员变量随着对象的出现而出现在堆中,随着对象的消失而从堆中消失
    局部变量随着方法的运行出现在栈中,随着方法在栈中消失而消失
    
  • 初始化不同

    成员变量因为在堆内存中,所有默认的初始化
    局部变量没有默认的初始化值,必须手动的给其赋值才能使用
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值