java方法的加深与回顾!
方法
方法的定义
修饰符
返回值类型
break和return的区别:break跳出循环,return代表方法结束,返回一个结果!
方法名:注意规范,见名知意
参数列表:参数类型,参数名...
异常抛出
方法的调用:递归
被static修饰的方法和类一起被夹在
- 静态方法: 修饰符static
- 非静态方法
- 形参和实参
- 值传递和引用传递
首先看一下静态方法与非静态方法:
先定义一个学生类:类中放一个静态方法一个非静态方法
//学生类
public class Student {
//静态方法
public static void dance(){
System.out.println("学生在跳舞");
}
//非静态方法
public void say(){
System.out.println("学生说话了");
}
}
public class Demo01 {
public static void main(String[] args) {
//静态方法的调用
Student.dance();
// 非静态方法的调用
//先实例化这个对象
//对象类型 对象名=对象值
Student student=new Student();
student.say();
}
}
输出:
学生在跳舞
学生说话了
这就是静态与非静态方法的调用与定义,然后看一下形参与实参
public class Demo02 {
public static void main(String[] args) {
//形式参数和事实际参数要一一对应
//这里可以理解为,这里的参数就是实参,形参是int类型的,传入的实参也是int类型
int add=Demo03.add(3,5);
System.out.println(add);
}
//定义一个有参的静态方法,传入参数,这里的参数就是形参
public static int add(int a,int b){
return a+b;
}
}
下面是关于值传递与引用传递:
值传递是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
引用传递是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。
我们来写代码看一下值传递:
public class Demo04 {
public static void main(String[] args) {
int a=1;
System.out.println(a);//1
Demo04.change(a);
//我们只是把a=1这个值传给了方法
System.out.println(a);
}
//值传递
//返回值为空
public static void change(int a){
a=18;
}
}
输出:
1
1
再看一下引用传递:
public class Demo05 {
//引用传递,本质还是值传递
public static void main(String[] args) {
Person person=new Person();
System.out.println(person.name);
Demo05.change(person);
System.out.println(person.name);
}
public static void change(Person person){
//person是一个对象:指向的--->Person perosn=new Person();这是一个具体的人,可以改变属性
person.name="lingstar";
}
}
//定义了一个person类,有一个属性name
class Person{
String name;//默认值为null
}
我们需要知道,在Java中其实还是值传递的,只不过对于对象参数,值的内容是对象的引用(不懂没关系,作为了解,以后会做具体讲解,感兴趣的也可以去看看其他大佬的关于值传递与引用传递的讲解)
本文来自博客园,作者:星余明,转载请注明原文链接:https://www.cnblogs.com/lingstar/p/16466823.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具