HeadFirst 读书笔记(二)

静态static

  • 静态的方法不能调用非静态的变量java

  • 静态的方法不能调用非静态的方法多线程

  • 静态的变量被同类的全部实例共享 spa

  • 静态变量会在该类的任何对象建立以前完成初始化线程

  • 静态变量会在该类的任何静态方法执行以前完成初始化3d

  • 静态的final变量是常量code

    public static final double PI = 3.1415926;
    复制代码
    • public: 供各方读取
    • static: 你不须要Math实例
    • final: 圆周率是不变的

autoboxing 自动装箱

有时你会想要把primitive原始数据类型当作对象来处理,例如在5.0以前的java版本上,你没法直接将primitive原始数据类型放入到ArrayList或hashMap中cdn

autoboxing:没必要把primitive主数据类型与对象分的那么清楚

处处都用获得的autoboxing

java异常

异常体系

处理异常的两种方法

  • 向上抛
  • 当前方法捕获

受检异常vs非受检异常

try/catch/finally

处理多重异常

异常也是多态的

多个catch块时要从小到大排

不要把大篮子放到小篮子上面对象

多线程

java有多个线程但只有一个Thread类

每一个线程有本身独立的调用栈blog

有多个以上执行空间表明什么?

多线程看起来像同时执行,实际上是cpu调度,并随机给线程分配时间片断(拿到时间片断的才能执行), 线程之间快速切换交替执行继承

线程看起来就像一个工人, 你须要指派给工人任务

建立线程的方法
  • 继承Thread类, 重写run方法
  • 实现Runnable接口, 实现run方法(推荐)

线程状态

相关文章
相关标签/搜索