java静态变量和静态方法会在程序初始化运行时候就加载到内存。
优点:不需要在进行实例化。静态变量的值,直接赋新值即可,不需要参数传递,之后可以直接进行参数引用即可;静态方法可以直接通过"类名.方法"的形式进行方法调用。通常方法被多次调用,并且方法中没有动态方法引用的时候使用比较方便。
缺点:初始化加载到内存,如果后续没被引用,加大了内存负担和程序运行负担,影响程序运行效率(一般很小),并且静态变量如果多处被引用赋值,很可能导致参数值混乱(如果是不变的值,最后加上final修饰,强制不能修改)。
备注:上面的都是理论知识,实际开发中,根据实际项目需求进行灵活调整即可。
java 里的静态可以说就是全局变量,它是属于类的,类存在它就已经存在了,方法也是一样,静态方法里面使用到的外部变量只能是静态变量,想想就知道了.
但是不要随便定义成静态方法, 因为静态方法内部只能使用静态变量,而静态变量是属于类的, 如果都是静态方法那么这个类就没有实力化的必要.所以一般的工具类才使用较多的静态方法
如果参数或者方法是固定的才用,比如你要写一个程序计算圆的面积
那么你可以设置一个静态变量p(就是派),他固定等于3.14当然你也可以更加精确一点,但是他是固定的所以是静态
计算圆的方法也是固定的 肯定是。。。。圆的面积计算方法是什么来着。。。总之是固定的,所以可以使用静态方法(视情况也可以不选择用静态方法)
但是半径不是固定的,因为半径是用户输入的,所以半径的输入不能是静态的,要动态的获取用户的输入