java方法
方法
-
使用方法可以让程序更加整洁
-
1、为什么使用方法? 减少重复代码,提供代码复用性 使用方法将功能提炼出来 写在类内 2、声明格式 [修饰符] 返回值类型 方法名([形式参数列表]){ 程序代码; [return 返回值;] } 注意:1、方法是给外界提供内容的位置,形式参数是外界提供的 2、方法调用的时候写的是实际参数 3、实际参数的类型、顺序和形参要对应上 4、支持自动转换类型,不支持强制类型转换 -
1、数据类型划分: 基本类型变量:数据的值 引用类型变量:数据的地址 2、声明的位置划分: 局部变量 全局变量 区别: 1、默认值 局部没有默认值,使用前必须初始化。 全局有默认值,默认为0,不必须初始化。 2、声明位置 局部在方法内。 全局在方法外类内。 3、作用位置 局部只能在自己声明的方法里。 全局在整个类中
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dW7MjIoh-1613297084048)(image-20201223220546613.png)]
return 是返回值
没有 return的情况下 void是关键字,可以直接调用如上图


方法调用
静态方法调用非静态
无论是否在同一类内,均需要通过对象调用
package test;
//Test类
public class Test {
public void IsSon1(){//非静态方法
System.out.println("成功调用非静态方法里的儿子1");
}
public static void main(String[] args) {
Test son1=new Test();
son1.IsSon1();//静态方法通过对象调用此类中的非静态方法
Son son=new Son();//静态方法通过对象调用Son类中的非静态方法
son.IsSon();
}
}
1234567891011121314
package test;
//Son类
public class Son {
public void IsSon(){
System.out.println("成功调用另一个类里的儿子");
}//Son类里的非静态方法
}
静态方法调用静态方法
同一类内直接调用,不同类内直接通过类名.方法名(参数表)调用
package test;
//Test类
public class Test {
public static void IsSon2(){//静态方法
System.out.println("成功调用静态方法里的儿子2");
}
public static void main(String[] args) {
IsSon2();//静态方法直接调用类内的静态方法
Son.IsSon3();//静态方法通过类名直接调用Son类中的静态方法
}
}
123456789101112
package test;
//Son类
public class Son {
public static void IsSon3(){
System.out.println("成功调用另一个类里的静态儿子3");
}//Son类里的静态方法
}
1234567
非静态方法在同一类内调用其他方法
在同一类内,非静态方法可以直接调用静态方法和非静态方法
package test;
//Test类
public class Test {
public void Son1(){//非静态方法
System.out.println("成功调用非静态方法里的儿子1");
}
public static void Son2(){//静态方法
System.out.println("成功调用静态方法里的儿子2");
}
public void alloutput(){
Son1();//非静态方法直接调用类内的非静态方法△
Son2();//非静态方法直接调用类内的静态方法△
}
public static void main(String[] args) {
Test test = new Test();
test.alloutput();//前边已学静态方法通过对象调用非静态方法
}
}
非静态方法在不同类之间调用其他方法
在不同类之间,非静态方法需要通过对象才能调用非静态方法。
非静态方法既可以通过对象调用静态方法又可以通过类名直接调用(由于对象的调用方式属于非静态调用方式,所以建议使用类名直接调用静态方法)
package test;
//Test类
public class Test {
public void output(){
Son.IsSon1();//通过类名直接调用Son类中的静态方法,不建议使用对象调用静态方法
Son son = new Son();
son.IsSon2();//通过对象调用Son类中的非静态方法
}
public static void main(String[] args) {
//同一类中的静态方法调用非静态方法output,前边已经涉及到
Test test = new Test();
test.output();
}
}
123456789101112131415
package test;
//Son类
public class Son {
public static void IsSon1(){//Son类里的静态方法
System.out.println("成功调用另一个类里的静态儿子1");
}
public void IsSon2(){//Son类里的非静态方法
System.out.println("成功调用另一个类里的非静态儿子2");
}
}
12345678910
方法的重载


可变参数
又叫不定项参数
类型:例如int…a


ps:
只能放在最后一个且
一个方法里面只能有一个
特殊输出句
System.err.print输出为红色
(具体不理解)
1.形式参数:就是调用的方法中需要输入的参数。
public static void add(int x,int y){
}(这里的x,y就是)
2.实际参数:方法调用时属于的参数。
public static void main(String[] args){
int a=5;
int b=6;
add(a,b);
(a,b就是)

浙公网安备 33010602011771号