Java自学随笔 - 关于方法(函数)的相关知识点泛记
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java自学随笔 - 关于方法(函数)的相关知识点泛记,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2771字,纯文字阅读大概需要4分钟。
内容图文
![Java自学随笔 - 关于方法(函数)的相关知识点泛记](/upload/InfoBanner/zyjiaocheng/641/63168f6270614f998e95e096ee26eaa7.jpg)
概述:方法(函数)是一能够完成独立功能的代码块,我们只需要写一次方法就可以被多次使用,从而提高了代码的复用性。
1.方法如何被调用?
方法名(参数值1,参数值2);
例:
/*方法名写的意义明确,即可见名知意
如下面这个方法就能基本知道,这是一个
数字比较的方法,同时传入a,b两个参数
*/
NumCompare(a,b);
2.调用一个方法需要注意什么?
当调用某一个方法时,需要查看方法是否有void这样的关键字,如果含有
void,那么我们不需要添加return变量值;如果没有void关键字,在方法体的
的结尾处加上return变量值,防止报错。
//当方法是有返回值时
class S1{
public static void main(String []args){
int a = 10;
int b = 19;
int Result = NumCompare(a,b);
System.out.println(Result + “大”)
}
public static NumCompare(int a , int b);
int c = 0;
if(a > b){
c = a;
}else{
c = b;
}
return c;
}
//当方法是没有返回值时
class S1{
public static void main(String []args){
int a = 10;
int b = 19;
NumCompare(a,b);
}
public static void NumCompare(int a , int b);
int c = 0;
if(a > b){
System.out.println(a + “大”)
}else{
System.out.println(b + “大”)
}
}
PS:当方法没有返回值时,其实也可以使用return,但不是
使用return变量
例如:
class S1{
public static void main(String []args){
int a = -1;
int b = 19;
NumCompare(a,b);
}
public static void NumCompare(int a , int b);
int c = 0;
if(a < 0 || b < 0){
System.out.println(a + “大”)
//通过条件比较,发现结果为false,运行到return时,程序停止执行
return;
//不在执行后续逻辑
}else{
System.out.println(b + “大”)
}
}
3.方法中参数传递,形参,实参,有参,无参
有参:指的是参数不在被调用的方法内声明类型和赋值,而是在方法外部声明
赋值。在参数传递的过程中,被调用的方法的可支持的参数类型,需要在方法内
声明。例如:
int a = 10; int b =10; //定义两个参数
NumCompare(a , b); //调用NumCompare方法
public static void NumCompare(int a , int b){} //规定传来的参数的数据类型
无参:指的是参数在被条用的方法内声明并赋值,在方法被调用时不需要
写入参数,同时方法也不需要规定传来的参数的数据类型。
例如:
NumCompare(); //调用NumCompare方法
public static void NumCompare(){} //规定传来的参数的数据类型
int a = 10; int b =10; //定义两个参数
形参:指的是在方法之类的参数
public static void NumCompare(int a , int b){}
实参:指的是在调用端使用的参数
NumCompare(a , b);
参数传递过程:
当.class文件加载到数据共享区,解析到主方法和NumCompare方法。进栈开始执行程序主方法内开出两个int类型的内存空间a,b并赋值。由于在主方法内调用NumCompare,刚刚两个int类型变量置于栈底。随后将栈底的a,b两个变量传递到NumCompare(int a,int b)。
思考:如果在被调用的方法内重新定义a的值,会对结果有影响么?
不会。因为主方法中,ab两个变量所属的内存空间与NumCompare(int a , int b)中这两个形参所开辟的内存空间是有区分的。而且在被调方法中,重新定义a的值,改变的不是主方法内a的值,而是改变了被调方法中a的值,而在打印的也是主方法中a的值,所以值不变.
内容总结
以上是互联网集市为您收集整理的Java自学随笔 - 关于方法(函数)的相关知识点泛记全部内容,希望文章能够帮你解决Java自学随笔 - 关于方法(函数)的相关知识点泛记所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。