【学习笔记】final关键字&static关键字

一、final关键字
  final关键字可以用来标识 类  方法  成员变量
(1)成员变量: final标识的变量是常量,常量的值不允许改变。常量名的每个字母都大写。final写在数据类型的前面。

如:final int NUM=10;
(2)类:被final标识的类不允许被继承。final写在class的前面。

如:public final class Father{    }
(3)方法: 被final标识的方法不能被重写。final写在返回值的前面。

如:public final void eat(){ }


二、static关键字: 静态的或类的
1、static标识成员变量叫做类变量或静态变量;开辟空间比普通成员变量要早;

(1)静态变量可以通过类名.变量名直接调用,也可以通过对象名.变量名调用,不推荐。

public class Test {
    public static void main(String[] args) {
        System.out.println(Father.num);
    }
}

//father.java文件

public class Father {
    static int num=10;
}

(2)假如类中所有对象的属性都一样,那么可以定义为静态的,比如某班级全是男生,那么可定义静态的性别属性为“男”,在创建每个学生对象时就不用一个个赋值;

(3)普通方法可以直接使用静态变量;

public class Father {
    static int num=10;
    public void setNum() {
        System.out.println(num);
    }
}

(4)因为main方法是静态方法,所以很多变量为方便使用,定义为静态变量;
2、static标识方法叫做类方法或静态方法
(1)static放在方法返回值的前面。方法可直接通过类名.方法名使用,不需要创建对象。

public class Test {
    public static void main(String[] args) {
        System.out.println(Father.getSex());
    }
}

//Father.java文件

public class Father {
    static String sex="男";
    public static String getSex() {
        return sex;
    }
}

(2)在静态方法可以直接调用静态变量。在静态方法中不可以直接使用实例变量,如果想使用,需要创建类的对象,通过对象来调用。

public class Test {
    public static void main(String[] args) {
        System.out.println(Student.sex);
        Student s1=new Student();    
        System.out.println(s1.age);        
    }
}

public class Student {
    int age=20;
    static String sex="男";    
}
(3)在实例方法中可以直接使用静态成员和静态方法。

(4)如果想在main方法中调用某方法,那么此方法可定义成静态方法,然后调用;

    public static void main(String[] args) {
        borrowCar();      

    }
    public static void borrowCar() {
        
    }

3、static标识类叫静态类
  在定义一个类时用static标识,当前类就是静态类
4、static标识一段代码叫做静态语句块。
  完成对静态变量的赋值,在类被加载时自动执行静态语句,块中的内容,并且只会被执行一次。功能是完成对静态变量的赋值操作。

5、静态导入包

用import static 包来导入,可直接使用方法,不需要类名.方法名来调用;

如:

import static java.lang.Math.abs;

public class Test {
    public static void main(String[] args) {
        System.out.println(abs(-7));
    }    
}

输出结果:7

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值