方法的声明
方法声明时不会自动执行编译,只有调用方法后才会编译;
如果想要得到方法中的返回值,需要在main中定义一个相同类型的变量接受
方法中可以调用其他方法
跨类调用方法
格式:类名(.java或者.class前的名字).方法名
Java编译器自动编译流程:在当前.java相同路径下找是否有与被调用方法类名相同的.java文件,如果有则编译;如果没有则找是否有与被调用方法类名相同.class文件,如果有编译,如果无报错
参数的值传递
基本数据类型
基本数据类型作为参数传递给方法时,方法运行后原值不变
例如这里,i j作为参数传递给add方法执行后,i和j的值没有发生改变
栈与堆
栈:用于存储局部变量和对象的调用时使用;
栈的作用相当于cpu,定义的各类方法按照先后顺序依次入栈,依次运行类似于进程依次被cpu调用,区别是进程等待的过程是在队列中实现的
堆:用于对象,即用.new创建的变量;
堆的作用是为引用数据类型开辟空间
具体可以参照这篇文章基本数据类型和引用数据类型作为参数的区别
重载方法
目的:为了进行某类计算时,可以使用相同的方法名进行计算
定义:在同一个class类下
①方法名相同
②参数列表必须不同(参数的个数,参数的类型)
③返回的类型可以相同,可以不同
例如常见的System.out.println()即为一个重载方法,参数可以为int double boolean string char等多种类型
注意:如果参数列表相同但是返回类型不同,不为重载方法