【Java关键字总结】(二)用于定义类、函数、变量修饰符的函数

abstract

修饰类:用abstract修饰的类表示抽象类,抽象类不能被实例化,但可以有构造方法,构造方法可以被子类构造函数调用,需要子类继承并覆盖其中的抽象方法,一个子类只能继承一个抽象类。
修饰方法:用abstract修饰的方法表示抽象方法,抽象方法没有方法体,只声明,不实现。子类继承抽象类的话,必须覆写抽象类的所有抽象方法,否则他还是抽象类。抽象关键字不能private,static,final并列修饰同一方法。

final

修饰变量:包括成员变量和局部变量,对于基本数据类型变量时,变量中的数值不可以改变,对于引用类型来说,变量中的地址不可以改变。对于成员变量来讲因为成员表变量有默认值,使用final修饰后不再有默认值,所以我们必须在声明时或者构造方法中对它赋值;
修饰方法:表示该方法无法被重写;
修饰类:表示该类无法被继承。

static

修饰变量:称为静态变量,静态变量是随着类加载时被完成初始化的,且初始化时间要早于非静态变量,它在内存中仅有一个,且JVM也只会为它分配一次内存,同时类所有的实例都共享静态变量,可以直接通过类名来访问它。但是实例变量则不同,它是伴随着实例的,每创建一个实例就会产生一个实例变量,它与该实例同生共死。
修饰方法:称之为静态方法,可以通过类名对其进行直接调用(class.method),不依附于任何对像,所以在静态方法内不能访问非静态东西,但在非静态成员方法内可以访问静态成员方法/变量。
修饰代码块:被static修饰的代码块,我们称之为静态代码块,可以在程序中随意放,在类初次被加载时依次执行。静态块可以优化程序性能。

synchronized

synchronized 关键字,代表这个方法加锁,相当于不管哪一个线程运行到这个方法时,都要检查有没有其它线程正在用这个方法,有的话要等正在使用synchronized方法运行完这个方法后再运行此线程没有的话,锁定调用者,然后直接运行

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值