黑马程序员 java 随笔

来源:互联网 发布:linux的mysql启动失败 编辑:程序博客网 时间:2024/04/28 23:54
 

(1)、多线程

程序的运行就是一个进程,而线程则是进程里的工作单元,比如jvm虚拟机就是多线程,一个线程忙着执行代码、如在内存中创建对象,一个线程

就忙着处理垃圾回收。迅雷下载和操作系统都是多线程处理。

sleep(Long long) 参数为毫秒的时间,表示使线程休眠,但时间一到就会恢复。

wait()表示使线程休眠,得使用notifyAll()唤醒,否则则一直休眠

synchronized(对象){ ...  } 多线程中的同步, 在同一时刻只能有一个线程可以进入同步代码块内运行,只有当该线程离开同步代码块后,

其它线程才能进入同步代码块内运行

(2)、内部类

每个内部类都能独立地继承自一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响,可实现多继

内部类可以访问外部类的所有方法与属性,但static的内部类只能访问外部类的静态属性与方法,内部类可以声明public、protected、private

等访问限制,可以声明为abstract的供其他内部类或外部类继承与扩展。

A:成员内部类

        作为外部类的一个成员存在,与外部类的属性、方法并列。
B:局部内部类
  在方法中定义的内部类称为局部内部类。与局部变量类似,局部内部类不能有访问说明符,因为它不是外围类的一部分,但是它可以访问当

前代码块内的常量,和此外围类所有的成员。

C:静态内部类(嵌套类):(注意:前两种内部类与变量类似,所以可以对照参考变量)

  如果你不需要内部类对象与其外围类对象之间有联系,那你可以将内部类声明为static。这通常称为嵌套类(nested class)。想要理解

static应用于内部类时的含义,你就必须记住,普通的内部类对象隐含地保存了一个引用,指向创建它的外围类对象。然而,当内部类是static

的时,就不是这样了。嵌套类意味着:
  1. 要创建嵌套类的对象,并不需要其外围类的对象。
  2. 不能从嵌套类的对象中访问非静态的外围类对象。
D:匿名内部类

(3)、反射

我的理解:反射就是在运行时动态的获取类的所有方法和属性,并且可以调用。

(4)、集合

List 关注事物的索引列表

Set 关注事物的唯一性

Queue 关注事物被处理时的顺序

Map 关注事物的映射和键值的唯一性

原创粉丝点击