JAVA中的识别错误的机制非常的强大(永远执行不到的就会报错)
比如你有一个while True循环那么在循环的外面有代码的话,他就会直接报错,就是remove的错误
方法在类建立
public static void name(int a ) { }
如果生成的方式为pubilc static void fun(注意这里是静态的)
在A 类中生成一个pubilc static Void fun ()的方法,那么在该类的内部可以直接引用
在同一个文件中 如果想在A类中生成的在B类中使用就可以直接 A.fun()不需要生成实例
JAVA代码执行的内存分配:
1.方法区(运行程序的时候类加载器加载.class文件,将代码片段放在方法区中,)
2.栈内存(方法在调用的瞬间会给该方法分配到栈内存中,发生压栈动作,方法结束后,内存空间会全部释放此时发生弹栈动作)
局部变量方法体中声明在栈中存储
3.堆内存 (new出来的对象存在堆内存中)
方法重载(overload):
方法功能相似时,就可以使用方法重载,目的为了减少方法名字的数量
功能不相似时,就别重载了,因为那样会产生混乱
重载的区分方式不再是依靠方法名了,而是依靠方法的参数类型
package day_one; public class overload { public static void main(String[] args) { add(0, 0); add(1.0f, 0); add(2.0, 0); } public static int add(int a, int b) { System.out.println(" int a int b"); return a+b; } public static int add(float a, int b) { System.out.println("float a int b"); return b; } public static int add(double a, int b) { System.out.println("double a int b"); return b; } }
方法重载构成的条件(重载满足什么条件)
1.在同一个类中
2.方法名相同
3.参数列表不同
3.1数量不同
3.2参数类型不同
3.3顺序不同
JAVA引用别的类例如A.java想引用B.java下 fun 方法只需要把B.java编译成B.class文件然后和A.java放到同一个文件夹下就可以直接B.fun()(因为static的变量属于类,而不是属于对象,如果没有static的声明那么其他的对变量属性属于对象,不能通过类去直接访问:注意该处的类和对象以及静态方法也同样遵循这种规则)
但是要求是fun的方法是 public static 函数 (这和多个class放在同一个文件中编写一样的效果)
大多工具类里面的方法就是静态方法,因为不要实例化就可以使用