`

Java编程那些事儿52—方法声明

阅读更多
Java编程那些事儿52—方法声明
郑州游戏学院 陈跃峰
第七章 方法
方法(method),在面向过程的语言中称作函数(function),在汇编语言中称作子程序,是一个代码功能块,实现某个特定的功能。在实际的程序开发中,方法是一种基础的组织代码的方式。本部分就介绍方法相关的概念、相关语法以及实际使用时需要注意的问题。
7.1 方法概述
方法的概念来源于数学上的函数,在数学中,当数据具有一定的规律时,就是用一个函数来代码该数字的规律,例如f(n)=n则代表1、2、3、……这样的一个数列。在数学上n是参数,对于确定的n值只有一个f(n)的值和它对应。
方法是一组为了实现特定功能的代码块的集合。方法在语法上的功能主要有以下两个:
l结构化代码
将代码按照功能进行组织,使代码的结构比较清晰,容易阅读和修改,也就是程序的可维护性强。
l减少代码重复
一个固定的功能,可能会在程序中多次使用,在使用时只需要调用写好的方法,而不用重复书写对应的功能代码。
方法在书写时需要注意以下两点:
l逻辑严谨
方法实现的一个完整的功能,所以在书写时要考虑到各种可能的情况,并对每种情况做出恰当的处理。
l通用性强
方法实现的是一种功能,在实际实现时,可以根据需要,使方法具备一定的通用性,除非必要,否则不要写专用的方法。
在Java语言中,恰当的使用方法,将使程序更加优雅,便于阅读和使用。下面就来介绍方法声明的语法格式。
7.2 方法声明
方法声明写在代码中类声明的内部,方法声明的外部,伪代码如下:
public class Hello{
方法声明1
方法声明2
……
}
在Java语言中,方法声明之间没有顺序。
方法声明,就是声明一种新的功能,或者说创造一种新的功能。例如以下是一个求int数据绝对值的方法声明代码:
publicintabs(int n){
if(n > 0){
return n;
}else{
return –n;
}
}
这里就实现了求int值绝对值的功能,为了使该功能通用,使用一个参数n代表需要求绝对值的数值,在方法内部使用求绝对值的逻辑:正数的绝对值是自身,负数的绝对值是相反数,使用return语句将方法运算的结果返回。
具体方法声明的语法格式如下:
访问控制符[修饰符]返回值类型方法名称(参数列表){
方法体
}
在实际声明一个方法时,需要依次确定以上内容。下面是具体的说明:
1、访问控制符
访问控制符限定方法的可见范围,或者说是方法被调用的范围。方法的访问控制符有四种,按可见范围从大到小依次是:public、protected,无访问控制符,private。其中无访问控制符不书写关键字即可。具体的范围在后续有详细介绍。
2、修饰符
修饰符是可选的,也就是在方法声明时可以不书写。
修饰符是为方法增加特定的语法功能,对于方法实现的逻辑功能无影响。方法的访问控制符有五个,依次是:
ustatic——静态的
ufinal——最终的
uabstract——抽象的
usynchronized——同步的
unative——本地的
具体修饰符的作用在后续内容中将详细介绍。
3、返回值类型
返回值类型是指方法功能实现以后需要得到的结果类型,该类型可以是Java语言中的任意数据类型,包括基本数据类型和复合数据类型。如果方法功能实现以后不需要反馈结果,则返回值类型书写为void。
在实际书写方法时,需要首先考虑一下方法是否需要反馈结果,如果反馈结果,则结果的类型是什么?这个根据方法的需要进行确定,例如上面求绝对值的方法,int类型的绝对值还是int类型,所以把返回值类型做成int型。
在方法声明里声明返回值类型,便于方法调用时获得返回值,并对返回值进行赋值以及运算等操作。
4、方法名称
方法名称是一个标识符,用来代表该功能块,在方法调用时,需要方法名称来确定调用的内容。
为了增强代码的可读性,一般方法名称标识符和该方法的功能一直,例如实现数组排序的方法,可以将方法名称设定为sort。
在Java编码规范中,要求方法的首字母小写,而方法名称中单词和单词间隔的第一个字母大写,例如bubbleSort。
5、参数列表
参数列表是声明方法需要从外部传入的数据类型以及个数,例如上面求int类型绝对值的方法,每次需要从外部传入一个int类型的值,这就需要在参数列表部分进行声明,语法格式为:
数据类型参数名称
多个参数时的格式为:
数据类型参数名称1,数据类型参数名称2,……
声明参数时,类型在前,名称在后,如果有多个参数时,参数和参数之间使用逗号进行分割。
参数的值在方法调用时进行指定,而在方法内部,可以把参数看作是已经初始化完成的变量,直接进行使用。
参数列表部分是方法通用性的最主要实现部分,理论上来说,参数越多,方法的通用性越强,在声明方法时,可以根据需要确定参数的个数,以及参数的类型。参数在参数列表中的排列顺序只和方法调用时有关。
6、方法体
方法体是方法的功能实现代码。方法体部分在逻辑上实现了方法的功能,该部分都是具体的实现代码,不同的逻辑实现代码区别会比较大。
在方法体部分,如果需要返回结果的值,则可以使用return语句,其语法格式为:
return 结果的值;
或无结果返回时:
return;
如果方法的返回值类型不是void,则可以使用return返回结果的值,要求结果值的类型和方法声明时返回值类型必须一致。如果返回值类型是void时,可以使用return语句实现方法返回,而不需要返回值。当代码执行到return语句时,方法结束,所以return语句的后续书写顺序的代码,例如:
return 0;
int n = 0;//语法错误,永远无法执行到该语句
另外,如果返回值类型不是void时,需要保证有值返回,例如下面的方法就有语法错误:
public int test(int a){
if(a < 0){
return 0;
}
}
则该方法的声明代码中,当a的值大于等于零时,则没有返回值,这语法上称作返回值丢失,这个也是在书写return语句时需要特别注意的问题。
分享到:
评论

相关推荐

    Java编程那些事儿

    Java编程那些事儿,可以帮助开发人员在闲余的时间看看。

    Java编程那些事儿[完整版]PDF(加密版)

    有CSDN的MVB 陈跃峰老师摘写,适合JAVA初学者的一本书! 由本人收集整理成完成版转换成PDF格式上传CSDN! 作者:陈跃峰老师 收集整理:云低夕落人归

    JAVA编程那些事儿

    JAVA编程那些事儿一书的完整版本,跟作者跟新同步,整理打包整合完成.

    java编程那些事儿

    主要是用通俗的语言,解释清楚以下几个内容: 1、 程序设计是什么? 2、 Java语言相关基础语法及应用 3、 如何建立基础的程序逻辑以及其它编程和Java语言的相关问题

    Java编程那些事儿.pdf

    java类书箱,作者:陈跃峰,编写一本书,总要有个名字吧,姑且把书名叫做《Java 编程那些事儿》 吧,主要是用通俗的语言,解释清楚以下几个内容: 1、 程序设计是什么? 2、 Java 语言相关基础语法及应用 3、 如何...

    Java编程那些事儿系列文章.pdf(全)

    东西不错,和大家共享!原作者为陈跃峰,这里仅供学习交流用。

    陈跃峰《Java编程那些事儿》

    陈跃峰《Java编程那些事儿》,来自他的个人博客,不错的Java教程

    java编程那些事儿-陈跃峰71-102

    java编程那些事儿-陈跃峰 不经意发现陈前辈的这本书,在网上没有找到归档的,于是,我自作多情地整理了一下,这样同志们在线下也能看这本书了。共分了三部分,这是第三部分,还有两部分,定要注意

    java编程那些事儿-陈跃峰31-70

    java编程那些事儿-陈跃峰 不经意发现陈前辈的这本书,在网上没有找到归档的,于是,我自作多情地整理了一下,这样同志们在线下也能看这本书了。共分了三部分,这是第二部分,还有两部分,希望看这些文章的同志

Global site tag (gtag.js) - Google Analytics