类方法基本介绍

类方法也叫静态方法

形式如下:
访问修饰符 static 数据返回类型 方法名(){  }  【推荐

static访问修饰符 数据返回类型 方法名(){    }

类方法的调用:

使用方式:类名.类方法名 或者 对象名.类方法名 【前提是 满足访问修饰符的访问权限和范围】

类方法应用案例

看一个静态方式小案例

package com.heima.Hello.StaticProject;

// 该类文件演示一个利用类方法的案例

public class Static_Method {
    public static void main(String[] args) {
        Stu tom = new Stu("tom");
        tom.payFee(100);

        Stu mary = new Stu("mary");
        mary.payFee(150);

        // 输出当前收到的总学费
        Stu.showFee();   // 通过类名调用类方法
    }
}

class Stu{
    private String name;  // 普通成员

    // 定义一个静态变量,来累计学生的学费
    public static double fee_total = 0;

    // 写一个构造器
    public Stu(String name){
        this.name = name;
    }

    public static void payFee(double fee){
        Stu.fee_total += fee;  // 累积到静态变量
    }

    public static void showFee(){
        System.out.println("总共有" + Stu.fee_total);
    }
}

类方法的经典使用场景

当方法中不涉及到任何和对象相关的成员,则可以将方法设计成静态方法,提高开发效率。

比如:工具类中的方法 utils

Math类Arrays类collections类 集合类看下源码:

package com.heima.Hello.StaticProject;

// 该类文件演示一个利用类方法的案例

public class Static_Method {
    public static void main(String[] args) {
        Stu tom = new Stu("tom");
        tom.payFee(100);

        Stu mary = new Stu("mary");
        mary.payFee(150);

        // 输出当前收到的总学费
        Stu.showFee();   // 通过类名调用类方法

        //调用Math类里的类方法
        System.out.println("64开方=" + Math.sqrt(64.0));

        // 调用自己写的工具里的类方法
        System.out.println("2 + 3.2 = " + myTools.calSum(2, 3.2));
    }
}

// 开发自己的工具类时,可以将方法做成静态的,方便调用
class myTools{
    public static double calSum(double a, double b){
        return a+b;
    }
}

class Stu{
    private String name;  // 普通成员

    // 定义一个静态变量,来累计学生的学费
    public static double fee_total = 0;

    // 写一个构造器
    public Stu(String name){
        this.name = name;
    }

    public static void payFee(double fee){
        Stu.fee_total += fee;  // 累积到静态变量
    }

    public static void showFee(){
        System.out.println("总共有" + Stu.fee_total);
    }
}

运行结果

使用类方法时的注意事项

1.类方法不允许使用和对象有关的关键字,比如super , this。普通方法(成员方法)可以

2.类方法(静态方法)中 只能访问 静态变量 或 静态方法。

3普通成员方法,既可以访问 普通变量(方法),也可以访问静态变量(方法)

        小结:静态方法,只能访问静态的成员(包括变量和方法),非静态的方法,可以访问静态成员和非静态成员(必须遵守访问权限)

小结

在程序员实际开发,往往会将一些通用的方法,设计成静态方法,这样我们不需要创建对象就可以使用了,比如打印一维数组,冒泡排序,完成某个计算任务 等...

更多推荐