core java v1 笔记

  • 类名 camel case
  • 方法名 小写开头,camelCase
  • 入口是main public static void main([]string args)
  • 访问控制修饰符
  • default,public,protected,private
  • 非访问控制修饰符
  • final,abstract,static,synchronized
  • 变量
  • 局部变量
  • 类变量(静态变量)
  • 成员变量(非静态变量)
  • 枚举
  • 限制变量中的值只能是预先设定好的值,可以减少bug
  • 局部变量
  • 函数内部,运行完就销毁了
  • 成员变量
  • 类中的变量,构造对象的时候被创建
  • 类变量
  • 类中,方法体之外,必须声明为static类型
  • 一个源文件只能有一个public类
  • 一个源文件可以有多个public类
  • 源文件的名称应该和public类的类名保持一致
  • 类定义在某个包中,package 应该在源文件首行
  • 源文件有import,则放在package和类定义之间,否则import在源文件最前面
  • 访问控制修饰符号
  • default (即默认,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。
  • private : 在同一类内可见。使用对象:变量、方法。 注意:不能修饰类(外部类)
  • public : 对所有类可见。使用对象:类、接口、变量、方法
  • protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类)
  • synchronized 关键字声明的方法同一时间只能被一个线程访问。synchronized 修饰符可以应用于四个访问修饰符。
  • volatile 修饰的成员变量在每次被线程访问时,都强制从共享内存中重新读取该成员变量的值。而且,当成员变量发生变化时,会强制线程将变化值回写到共享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。
    一个 volatile 对象引用可能是 null。
  • 无论是否发生异常,finally 代码块中的代码总会被执行。

继承的特性

  • 子类拥有父类非 private 的属性、方法。
  • 子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。
  • 子类可以用自己的方式实现父类的方法。
  • Java 的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如 A 类继承 B 类,B 类继承 C 类,所以按照关系就是 C 类是 B 类的父类,B 类是 A 类的父类,这是 Java 继承区别于 C++ 继承的一个特性。
  • 提高了类之间的耦合性(继承的缺点,耦合度高就会造成代码之间的联系越紧密,代码独立性越差)。