Java零基础精通方法篇(Java编程从入门到精通)

网友投稿 303 2022-07-30


目录一、前言二、定义与调用1.概述2.格式3.调用4.注意三、范例1. 例题 12. 例题 23. 例题 3四、方法调用的内存图五、重载1.概述2.例题3.总结

一、前言

学习概述:学习四种不同类型的方法应用、方法被调用时的内存图、重载学习目标:熟练掌握方法的应用以及重载

二、定义与调用

1.概述

定义:方法是一种语法结构,把一段代码封装成一个功能,方便重复调用分类:一般分为参数(带/不带)、返回值(有/无)好处:提高代码复用性、逻辑更加清晰

2.格式

修饰符 返回值类型 方法名( 形参列表 ){    //方法体    return 返回值; }

范例:

3.调用

方法必须通过程序调用 才能运行,调用格式如下:

方法名(…);

范例:

int sum = add(10, 20);

System.out.println(sum);

4.注意

修饰符:目前暂时使用public static 修饰形参:可以没有,但有多个需要逗号分隔,调用时需要传入对应类型的变量值返回值:如果方法定义了返回类型,方法内部的代码段一定要体现。如果方法不需要返回结果,返回值类型必须申明成void(无返回值)

三、范例

1. 例题 1

设计一个方法(无参、无返回值)用于打印两个数字的大小关系

编码实现:

public static void main(String[] args)

{

getRelation();//调用方法

}

public static void getRelation()

{

int a=10;

int b=20;

if(a>b)

{

System.out.println("a大于b");

}

else if(a

{

System.out.println("a小于b");

}

else

{

System.out.println("a等于b");

}

}

输出结果:

a小于b

2. 例题 2

设计一个方法(有参、无返回值)用于打印两个数字的最大值

编码实现:

public static void main(String[] args)

{

getMax(10,20);//调用方法

}

public static void getMax(int a,int b)//带参无返回值

{

if(a>b)

{

System.out.println(a);

}

else

{

System.out.println(b);

}

}

输出结果:

20

3. 例题 3

设计一个方法(有参、有返回值 int 型)用于打印两个数字的最大值

编码实现:

public static void main(String[] args)

{

http://System.out.println(getMax(10,20));//调用方法

}

public static int getMax(int a,int b)//带参无返回值

{

if(a>b)

{

return a;

}

else

{

return b;

}

}

输出结果:

20

四、方法调用的内存图

方法未被调用,在方法区中的字节码文件中存放方法调用,进入到栈内存中运行java程序编译生成class字节码文件,方法区存入main方法、eat、study、eat方法。进入主函数调用,在栈内存运行输出结果。

五、重载

1.概述

定义:同一个类中,出现多个方法名称相同,但是形参列表不同(类型不同或数量不同),与返回值无关

例如下面几个例子,判断是否为方法重载?

第一个不是,与返回值无关第二个是,形参数量不同第三个是,形参定义类型不同第四个不是,不在同一个类中

2.例题

构造三个重载的方法,分别实现两个int型整数相加的和、两个double类型数据相加的和、三个int类型数据相加的和

编码实现:

public static void main(String[] args)

{

int result=sum(10,20);

System.out.println(result);

double result1=sum(10.0, 20.0);

System.out.println(result1);

int result2=sum(10, 20,30);

System.out.println(result2);

}

public static int sum(int a,int b)

{

return a+b;

}

public static double sum (double a,double b)

{

return a+b;

}

public static int sum(int a,int b,int c)

{

return a+b+c;

}

输出结果:

3030.060

3.总结

重载可读性好,方法名称相同是同一类型的功能,但通过形参不同实现功能差异化的选择形参列表不同:形参的个数、类型、顺序不同,不关心形参的名称


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:java高级用法之JNA中的回调问题(jni回调java)
下一篇:Java基本数据类型之间的相互转换详解(java中基本数据类型的转换)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~