目录:  1 .  GC是什么,为什么要有GC?  

 

 

1. GC是什么,为什么要有GC?

  GC是垃圾回收的意思,内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。Java程序员不必担心内存管理,因为垃圾回收器会自动进行管理。要请求垃圾收集,可以调用下面方法: 

          System.gc()  ;   或者    Runtime.getRuntime().gc()  ;

  但是JVM可以屏蔽掉显示的垃圾回收调用。

  补充 :  因为jvm会对代码进行优化,所以在作用域上很可能出现问题。

2 . Synchronized 关键字的用法 

       synchronized关键字可以将对象或者方法标记为同步,以实现对对象和方法的互斥访问,可以用synchronized(对象){....}定义同步代码块,或者在声明方法时将synchronized作为方法的修饰符。