Java入土---方法
Posted 喝茶谢谢
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java入土---方法相关的知识,希望对你有一定的参考价值。
方法
什么是方法
Java方法是语句的集合,他们一起执行一个功能。
- 方法是解决一类问题的的步骤的有序组合
- 包含于类或对象中
- 在程序中被创建,在其他地方被引用
通过定义,实现一个功能
一个方法只实现一个功能(原则性问题)
定义及调用
Java的方法类似于其他语言的函数。
方法包含一个方法头和一个方法体,方法还包含:
- 修饰符,例如public,static,
- 返回值类型,void,int,String,char等
- 方法名(遵循命名规则)
- 参数类型(可以不含任何参数),包括实参跟形参,形参调用后会销毁
- 方法体,是定义方法功能的部分。
- return,如果有返回值,一定要将返回值返回,类型跟方法的类型相同
public class Demo1
public static void main(String[] args)
fly();
public static void fly()
System.out.println("这是一个方法");
在方法中的return,之后的代码不再执行
Java是值传递,基本类型作为参数传递时,是传递值的拷贝,无论你怎么改变这个拷贝,原值是不会改变的
对象作为参数传递时,是把对象在内存中的地址拷贝了一份传给了参数。
方法重载
重载就是在同一个类中,有相同的函数名称,根据参数的不同,调用不同的方法。
方法重载规则
- 方法名必须相同
- 参数类型必须不同,以作区分
- 方法的返回类型可以相同,可以不同
- 仅仅返回类型的不同不足以重载
静态方法
static 修饰的方法,当执行程序时,直接为静态方法创建一块空间,可以直接通过类名.方法名调用
有过代码中大量堆积静态方法,会浪费大量的资源。
静态方法不能被重写!!!
命令行参数
实际上,在main方法中也是可以传递参数的。
例如
//package A
public class Demo1
public static void main(String [] args)
System.out.println(args);
运用命令行,可以将参数传入main方法中。只不过,需要在src目录下,路径要输入包名
javac Demo1.java
java A/Demo1.class + 参数
之后,会将你输入的参数传入main()当中。
可变参数
也叫不定项参数,在指定参数类型后加一个省略号
一个方法中只能指定一个可变参数,必须是方法的最后一个参数
递归
递归就是本身调用,自己调用自己,递归包含两部分,递归头,递归体
递归头就是标志什么时候结束递归调用,递归体就是具体的代码实现
public static f(int n)
if(n = 1)
return 1;//递归头(边界)
else
return n*f(n-1);
//该行代码从而使实现一个n的阶乘。
递归一种算法思想,具体可以去力扣做练习。
以上是关于Java入土---方法的主要内容,如果未能解决你的问题,请参考以下文章