static final public synchronized abstract

1.static final public synchronized 可以混用 而且顺序不限

2.abstract 只能与public或protected连用,不能用default或private 也不能与static final  synchronized中的任意一个连用

原因:

abstract要继承(多态)

但static的是编译期绑定,拒绝多态

synchronized没有继承性,父类加锁 子类默认不加锁 ,所以加了synchtonizd也没用

final本身就是阻止重写的

时间: 2024-10-03 23:17:26

static final public synchronized abstract的相关文章

关于Abstract,static,final的理解

Abstract,static,final理解 一 . Abstract 抽象 1> 修饰类 一个类被Abstract修饰之后,就不能new对象了,修饰父类 被Abstract修饰的说明是一个不是一个具体的类型,是一个类别,是一个父类,不应该被具体化 说明这个类不完整,不够具体,抽象类无法独立存在 为子类输出共性 作用: 1> 可以被子类继承,提供共性属性和方法 2> 可声明为引用,强制使用多态 3> 抽象父类可以是子类的组成部分,依附于子类对象的存在 4> 由父类共性+子类

浅析java修饰符之public default protected private static final abstract

浅析java修饰符之public default protected private static final abstract 一   修饰符的作用:用来定义类.方法或者变量,通常放在语句的最前端 二   分类(大致分两类) 1.访问修饰符,包括:public default protected private 2.非访问修饰符,包括:static final abstract 三 访问修饰符--Java中,可以使用访问控制符来保护对类.变量.方法和构造方法的访问.Java支持4种不同的访问权

为什么构造器不能是abstract, static, final, native or synchronized的?

Unlike methods, a constructor cannot be abstract, static, final, native  or synchronized. 1. A constructor is not inherited, so there is no need to declare it final 2. As the same reason above, an abstract constructor could never be implemented. 3. A

为什么接口要规定成员变量必须是public static final的呢?(转)

在interface里面的变量默认都是public static final 的.所以可以直接省略修饰符: String param="ssm"://变量需要初始化 为什么接口要规定成员变量必须是public static final的呢? 答: 首先接口是一种高度抽象的"模版",,而接口中的属性也就是’模版’的成员,就应当是所有实现"模版"的实现类的共有特性,所以它是public static的 ,是所有实现类共有的 .假如可以是非static

【Java关键字-Interface】为什么Interface中的变量只能是 public static final

三个关键字在接口中的存在原因:public:接口可以被其他接口继承,也可以被类实现,类与接口.接口与接口可能会形成多层级关系,采用public可以满足变量的访问范围: static:如果变量不是static的,那么接口必须实例化才可以访问自己的变量,接口不能被实例化,故非static的变量是无效的: final:如果变量不是final的,而方法是abstract的,因此接口中的方法又不可以修改变量值,虽然可以直接修改静态成员变量,但所有实现类对应的值都被修改了,此做法等同于抽象类,故需要fina

在JAVA中利用public static final的组合方式对常量进行标识

在JAVA中利用public static final的组合方式对常量进行标识(固定格式). 对于在构造方法中利用final进行赋值的时候,此时在构造之前系统设置的默认值相对于构造方法失效. 常量(这里的常量指的是实例常量:即成员变量)赋值: ①在初始化的时候通过显式声明赋值.Final int x=3: ②在构造的时候赋值. 局部变量可以随时赋值. 1 package TomText; 2 //利用if语句,判断某一年是否是闰年. 3 public class TomText_28 { 4 p

JAVA之旅(七)——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展

JAVA之旅(七)--final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展 OK,我们继续学习JAVA,美滋滋的 一.final 我们来聊聊final这个关键字 final可以修饰类,方法和变量 final修饰的类不可以被继承 final修饰的方法不可以被覆盖 final修饰的变量是一个常量,只能被赋值一次 内部类只能访问被final修饰的局部变量 final,故名思意,就是最终的意思,由以上的五种特性,不过final的出现,也是有

Java static,final 基本概念

(转载自http://blog.kenyang.net/2011/03/java-staticfinal.html) 從很久以前我就了解到, 不僅僅要知道know how, 還要知道know why, 舉個例子,當我派工作給底下的人做時, 例如要他做出一個發送mail的功能出來, 恩,拜Google大神所賜,通常很快都可以找到發送mail的code. 但是當我細下去問每一行code的用途時, 大多是...."恩...不知道". 我覺得此風不可長. 甚至有些學弟們搞不清楚何時要用stat

Java中static final 关键字释惑

static static表示"全局"或者"静态"的意思 1. 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量:另一种是没有被static修饰的变量,叫实例变量.两者的区别是: 对于静态变量在内存中只有一个拷贝(节省内存),JVM只为静态分配一次内存,在加载类的过程中完成静态变量的内存分配,可用类名直接访问(方便),当然也可以通过对象来访问(但是这是不推荐的). 对于实例变量,每创建一个实例,就会为实例变量分配一次内存