java修饰符

来源:互联网 发布:网站数据库泄露 2017 编辑:程序博客网 时间:2024/06/03 20:03

java的修饰符有:

权限(访问)修饰符:public、protected、default、private

修饰符:abstract、static、final

   public       :类、接口、变量、方法
   protected  
:变量、方法注意:不能修饰类(外部类)
   default      
:类、接口、变量、方法。(即缺省,什么也不写)
   private      
:变量、方法注意:不能修饰类(外部类)


   abstract:类、接口、方法
   static 
:类、变量、方法、初始化函数(注意:修饰类时只能修饰内部类 )
   final  
:类、变量、方法

 

native:用该修饰符定义的方法在类中没有实现,而大多数情况下该方法的实现是用C、C++编写的。
synchronized:修饰方法,多线程的支持

 

外部类的修饰符有:
default(缺省,不写):类定义时前面未加任何修饰符,表示同一个包中可见。
public
:修饰类时表示该类能被项目中所有类可见
abstract:表示是抽象类
final:表示类不可以被继承
scrictpf:(java关键字) 当对一个类或接口使用strictfp 关键字时,该类中的所有代码,包括嵌套类型中的初始设定值和代码,都将严格地进行计算。严格约束意味着所有表达式的结果都必须是 IEEE 754 算法对操作数预期的结果,以单精度和双精度格式表示

 

成员内部类修饰符有:
public

protected

private:private不能修饰外部类,
abstract:
final:
static:可以当做普通类使用,而不用先实例化一个外部类。(用他修饰后,就成了静态内部类了)
strictfp
:(java关键字) 即 strictfloat point (精确浮点)。(可修饰类、接口、方法)

 

局部内部类:

不能用public或private访问说明符进行声明,他的作用域被限定在这个方法中。

 

接口修饰符:
 public:所有包可见
 default
:(缺省)同一个包中可见
 strictfp:(java关键字) 即strict float point (精确浮点)。

 

局部变量:

局部变量前不能放置任何访问修饰符 (private,public,和protected)。final可以用来修饰局部变量,
(final
如同abstract和strictfp,都是非访问修饰符,strictfp只能修饰class和method而非variable)。

publicclass Something {
void doSomething () {
private String s = ""; //非法的访问修饰符
int l = s.length();
}
}

abstractmethods不能以private修饰。abstract methods就是让子类implement(实现)具体细节的,怎么可以用private把abstract
method封锁起来呢? (同理,abstractmethod前不能加final)。

abstract class Something {
private abstract String doSomething ();
}

原创粉丝点击