引言

  • 包的命名规范

    • 英文字母小写
    • 域名的倒序+模块+功能
  • 类的命名规范:首字母大写

  • 在一个方法里定义的局部变量不会有初始值,但是在一个类中的属性值一旦被定义就有初始值(可以通过打印的方式来进行检查,打印一个方法中的局部变量会编译时错误,而打印一个类中属性值不会报错并会有初始化值)其中字符串String类型默认初始值为null,int类型默认初始值为0,double类型默认初始值为0.0

  • 单一职责原则:一个类,应该有且只有一个引起变化的原因。

  • 在Java中,面向对象程序中,被static关键字限定的变量,由该类的所有对象共用同一块空间。既可以通过变量名访问,也可以通过类名访问。static不能修饰一个类。

  • 静态方法不能直接访问非静态成员,只能直接访问静态成员,静态方法中也不能使用this关键字.

  • 静态代码块中不能直接调用非静态成员,如必须在静态代码块中调用一个类非静态成员,必须新建一个该类的实例化对象.

  • 一个Java程序中只能有一个package语句,且必须在原文件第一行.

  • 代码块的执行顺序:先执行静态代码块,再执行构造代码块,最后执行普通代码块(对于一个类的多个对象,静态代码块只执行一次).

  • 在Java中一个构造函数可以通过this关键字调用另一个构造函数,这在C++ 中是不被允许的。下面是一个实例

    1
    2
    3
    4
    5
    public Employee(double s){
    // calls Employee(String,double)
    this("Employee #"+nextID,s);
    nextID++;
    }