OCJP(310-065)精选笔记之-声明类(Declare Class)

来源:互联网 发布:软件开发平均工资 编辑:程序博客网 时间:2024/05/21 18:34

先来看看在一个代码源文件里各类声明规范

类声明规范:

  • 一个文件只能有一个public class
  • 一个文件可以没有public class,但可以有多个nonpublic class
  • 文件名必须和唯一的public class名字相同
  • 如果没有public class文件名可以另外取
  • Import package必须在第一行
  • 如果有import class,必须在import packageclass declaration之间

 

下面具体讲类声明(Class declaration)规则

类声明访问修饰符(Access Modifier):

  • 类声明只能用public或者缺省(default);
  • Default access: package level,只有同一package的class可见
  • Public access:其他package都可见

小提示:Access是指可见性(visibility)
访问控制(Access control)包括:public, protected,private,default
访问修饰符(Access modifiers)包括:public,protected,private

 

类声明非访问修饰符(Nonaccess Modifier):

You can modify a class declaration using the keyword final, abstract, or strictfp.

  • 声明类还可以用关键字final,abstract,或者strictfp
  • 不能同时用abstract和final,可以同时用strictfp和final;
  • strictp意味着该类中的任何方法都遵循IEEE 754的浮点数规范
Final
    1. 表明这个class不能被继承(subclassed);
    2. 当只有完全确定类里的所有method都不允许被覆盖,才应该用final
    3. 一些Java核心库是final的,比如String类,一般情况下,除非有特殊要求,不写final class
Abstract
    1. 表明这个类不能被实例化(instantiated)(因为它是抽象的),只能用于继承
    2. 只要有一个method是abstract的,整个class必须是abstract的
    3. 但是nonabstract method可以在abstract class里
0 0