android的方法与方法重载和方法调用的概念

方法:

主要内容如下:

1、计算机编程中的一个基本思想:分而治之,如果不将问题分解成便于解决的小问题,那计算机编程将成为一项艰巨的任务。

2、java使你能够定义方法来解决问题的各个部分,从而化整为零,解决整个问题。

3、在编程中可以结合自定义的方法和java自带的方法来解决实际问题。使用迭代和递归的方法解决计算机科学问题以及各自的优缺点

4、方法的格式:

 

返回类型 方法名(参数列表){

    声明和语句

      ……

}

1) 方法名可以是任何有效的标识符,命名规则和变量一样。

2) 返回类型是该方法返回给调用者的数据类型,需注意的是:该方法返回值的数据类型应当与返回类型一致。

3) 参数列表中是一份用逗号隔开的列表,其中包含对传递给方法的值的声明。

4)方法名、返回类型和参数列表定义了方法签名,即唯一识别方法的“签名”。

3)花括号之间的部分是方法的方法体,这是完成所有工作的地方。

5) 如果方法调用自身,则称此操作为递归。

今天的主要内容也不多,主要是要记住方法的格式和调用。




今天讲的是最后一章方法重载和方法的调用,主要内容如下:

 

   一、 在Java 中,同一个类中的2个或2个以上的方法可以有同一个名字,只要它们的参数声明不同即可。在这种情况下,该方法就被称为重载(overloaded ),这个过程称为方法重载(method overloading )。方法重载是Java 实现多态性的一种方式。

     当一个重载方法被调用时,Java 用参数的类型和(或)数量来表明实际调用的重载方法的版本。因此,每个重载方法的参数的类型和(或)数量必须是不同的。虽然每个重载方法可以有不同的返回类型,但返回类型并不足以区分所使用的是哪个方法。当Java 调用一个重载方法时,参数与调用参数匹配的方法被执行。

     当一个重载的方法被调用时,Java 在调用方法的参数和方法的自变量之间寻找匹配。但是,这种匹配并不总是精确的。在一些情况下,Java 的自动类型转换也适用于重载方法的自变量。

    方法重载支持多态性,因为它是Java 实现“一个接口,多个方法”范型的一种方式。

 当你重载一个方法时,该方法的每个版本都能够执行你想要的任何动作。没有什么规定要求重载方法之间必须互相关联。但是,从风格上来说,方法重载还是暗示了一种关系。这就是当你能够使用同一个名字重载无关的方法时,你不应该这么做。例如,你可以使用sqr这个名字来创建一种方法,该方法返回一个整数的平方和一个浮点数值的平方根。但是这两种操作在功能上是不同的。按照这种方式应用方法就违背了它的初衷。在实际的编程中,你应该只重载相互之间关系紧密的操作。

 

二、方法的调用

方法定义的目的,就是要给其他人使用。多数情况下,使用方法需要进行显示的方法调用。方法被调用之后,就会执行方法体内部的语句,完成预定义的功能。

根据方法的调用者与被调用的方法所处的位置,方法调用的形式可以分为两种:

 1、调用者和被调用方法位于同一类中,形式如下:

[this.]方法名([实际参数列表])

在大多数情况下,关键字this可以省略。

 2、 调用者位于被调用方法所在类的外部,形式如下:

对象名.方法名([实际参数列表])   或者  类名.方法名([实际参数列表])

实际参数列表是对应方法的形式参数列表,可以是0个或多个变量或表达式,如果超过一个,需用逗号分隔。

 

三、方法调用的参数

在定义一个方法时,程序员可能会根据需要列出一个参数表,这些参数被称为形式参数,简称为形参。在调用方法时,需要调用者提供与之相匹配的参数表,被称为实际参数,简称为实参。

这里的匹配有两个条件:

 1、 实参和形参的个数要相等。

 2、 实参和形参对应位置上的数据类型要相容。即数据类型相同,或者实参可以做自动类型转换转换成形参类型。

     在方法调用发生时,系统会将实参的值按照位置关系一个一个传递给形参,即第一个实参传给第一个形参,第二个实参传给第二个形参,……这个过程中,不会考虑形参和实参的名字。如图:

 

方法重载

方法调用的传值过程


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值