有关方法的学习和总结(一)

上周我们学习了方法的定义和调用等一系列问题,过程中或多或少有些疑惑。课余自己的学习和总结,拿出来和大家分享。

  1方法概述

在我们的日常生活中,方法可以理解为要做某件事情,而采取的解决办法。

如:小明同学在路边准备坐车来学校学习。这就面临着一件事情(坐车到学校这件事情)需要解决,解决办法呢?可采用坐公交车或坐出租车的方式来学校,那么,这种解决某件事情的办法,我们就称为方法。

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

方法实现的过程中,会包含很多条语句用于完成某些有意义的功能——通常是处理文本,控制输入或计算数值。

我们可以通过在程序代码中引用方法名称和所需的参数,实现在该程序中执行(或称调用)该方法。方法,一般都有一个返回值,用来作为事情的处理结果。

  2方法的语法格式

在Java中,声明一个方法的具体语法格式如下:

修饰符返回值类型方法名(参数类型参数名1,参数类型参数名2,......){

执行语句

………

return 返回值;

}

对于上面的语法格式中具体说明如下:

  • 修饰符:方法的修饰符比较多,有对访问权限进行限定的,有静态修饰符static,还有最终修饰符final等,这些修饰符在后面的学习过程中会逐步介绍
  • 返回值类型:用于限定方法返回值的数据类型
  • 参数类型:用于限定调用方法时传入参数的数据类型
  • 参数名:是一个变量,用于接收调用方法时传入的数据
  • return关键字:用于结束方法以及返回方法指定类型的值
  • 返回值:被return语句返回的值,该值会返回给调用者

需要特别注意的是,方法中的"参数类型 参数名1,参数类型 参数名2"被称作参数列表,它用于描述方法在被调用时需要接收的参数,如果方法不需要接收任何参数,则参数列表为空,即()内不写任何内容。方法的返回值必须为方法声明的返回值类型,如果方法中没有返回值,返回值类型要声明为void,此时,方法中return语句可以省略。

接下来通过一个案例来演示方法的定义与使用,如下图所示。MethodDemo01.java

public class MethodDemo01 {

  3 public static void main(String[] args) {

int area = getArea(3, 5); // 调用 getArea方法

System.out.println(" The area is " + area);

}

// 下面定义了一个求矩形面积的方法,接收两个参数,其中x为高,y为宽

public static int getArea(int x, int y) {

int temp = x * y; // 使用变量temp记住运算结果

return temp; // 将变量temp的值返回

}

}

运行结果如下图所示。

运行结果

在上述代码中,定义了一个getArea()方法用于求矩形的面积,参数x和y分别用于接收调用方法时传入的高和宽,return语句用于返回计算所得的面积。在main()方法中通过调用getArea()方法,获得矩形的面积,并将结果打印。

  4方法调用图解

接下来通过一个图例演示getArea()方法的整个调用过程,如下图所示。

getArea()方法的调用过程

从上图中可以看出,在程序运行期间,参数x和y相当于在内存中定义的两个变量。当调用getArea()方法时,传入的参数3和5分别赋值给变量x和y,并将x*y的结果通过return语句返回,整个方法的调用过程结束,变量x和y被释放。

时间: 2024-10-23 01:42:38

有关方法的学习和总结(一)的相关文章

多目标跟踪方法 NOMT 学习与总结

多目标跟踪方法 NOMT 学习与总结 ALFD NOMT MTT 读 'W. Choi, Near-Online Multi-target Tracking with Aggregated Local Flow Descriptor, ICCV,2015'笔记 NOMT这个方法在MOTChallenge2015,MOTChallenge2016库上的结果都算比较好的了,虽然方法比较老了.另外一个显著的特点就是该方法的各种tricks实在是太多,虽没有找到源码,但对作者还真是佩服. 概述 这篇文章

更灵活的定位内存地址的方法(学习汇编)

1.and指令:逻辑与指令,按位进行与运算.与1不变,与0变0,可将对象相应位设为0. 2.or指令:逻辑或指令,按为进行或运算.或1变1,或0变0,可将对象位设为1. 3.[BX+idata]的几种表现形式: mov ax,[200+bx] mov ax,200[bx] mov ax,[bx].200 4.SI和DI是8086CPU中和Bx功能相似的寄存器,只是不能分成两个8位的寄存器来用. 5.[BX+SI]进行内存地址定位的几种形式: mov ax,[bx][si] mov ax,[bx+

Spark运行调试方法与学习资源汇总

最近,在学习和使用Spark的过程中,遇到了一些莫名其妙的错误和问题,在逐个解决的过程中,体会到有必要对解决上述问题的方法进行总结,以便能够在短时间内尽快发现问题来源并解决问题,现与各位看官探讨学习如下: 解决spark运行调试问题的四把“尖刀”: 1.Log 包括控制台日志.主从节点日志.HDFS日志等.许多错误可以通过日志,直接对错误类型.错误来源进行准确定位,因此,学会读取和分析Log是解决问题的第一步. 2.Google 确定错误类型和原因后,就可以使用Google在Spark User

豆瓣移动端风格的css命名方法与学习

在CSS取名相对于刚入门来说是最头疼的事情,往往取一个可读性的名字相对以后的代码风格还是很重要的. 在配合团队方面一个好的类名可以帮助同事来理解,增加团队之间的效率有着很大的意义. 豆瓣的前段相对其他网站来说还是比较文艺清爽的,所以很值得去向他们团队学习,学习的地方很多,先来取名把. 在最外面的一个<div class="ck-root">.....</div>首先内容先用一个大的div盒子包起来, <div class="ck-root&quo

pyqt 动态显示时间方法例子学习

# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' import sys,datetime from PyQt4.QtCore import Qt from PyQt4 import QtGui,QtCore,Qt from ti import Ui_Form class Example(QtGui.QDialog,Ui_Form): def __init__(self,parnet=None): super(Exa

对属性动画ObjectAnimator.ofObject方法的学习和理解

关于对属性动画 ObjectAnimator.ofObject(view, "position", new PointEvaluator(), pStart, pEnd); 方法的学习和理解,做个总结,也当做笔记记在这里,遗忘的时候以便查阅,也希望能帮助正在学习这块知识的同学. 这个方法的主要作用是根据一定的规则对目标对象的某个具体属性进行改变,从而使目标对象实现与该属性相关的动画效果. 参数的讲解: 第一个参数:动画的实施对象 第二个参数:关键词,在动画的实施对象中必须要有一个 &q

Thinkphp回顾之(四)查询方法深入学习

本次讲的查询方法主要有:表达式查询,模糊查询,between语句,in语句,区间查询,统计数据,普通方式查询,但大多数都只是引入数组而已,明白了第一个,其他的也就差不多全明白了,唯一要注意的是在后台中notlike中间没空格,而not in,not between中间必须有空格才能有效,不要与后面的前台标签搞混了,话不多说,直接上代码 public function showone(){ echo "欢迎你".$_GET['name'];//在页面上直接就可以Index/show/na

PowerDesigner最基础的使用方法入门学习

1:首先创建概念数据模型,如图所示(后面介绍一些比如物理数据模型等等,由于此软件全部是英文的,所以作为一个chinese不是很懂的,耐心的多使用几次就好了.) 请自行脑补 概念模型(CDM Conceptual Data Model) 物理模型(PDM,Physical Data Model) 面向对象的模型(OOM Objcet Oriented Model) 业务模型(BPM Business Process Model) 2:点击上面的ok,即可出现下图左边的概念模型1,自己起得概念模型的

学习易经的步骤及方法 如何学习易经

<周易>是为世所公认的最难以阅读和理解的古代典籍之一.概括来说,学习<周易>的难点有三个部分:       第一.<周易>是一部由卦象和系辞两个部分组成的典籍.学习<周易>的第一个难点,也恰恰在于此处--对卦象的熟悉.最基本的就是在卦象和卦名之间,建立起明确的联系,见名知象,见象知名. 第二.<周易>形成乃至传承的历史非常悠久而漫长,保守的说至今也有不少于5000年左右的时间.在这个过程中,无论是<易>的体系本身,还是<易>