您的位置:首页 > 职场人生

黑马程序员__初识Java

2015-02-11 15:30 162 查看
 
-------android培训java培训、期待与您交流!
----------
1.Java语言概述

 是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言,是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。

2.Java程序的运行机制

       由Java语言编写的程序需要经过编译步骤,但这个步骤并不会生成特定平台的机器码,而是生成一种与平台无关的字节码,也就是*.class文件。当然,这种字节码不是可执行性的,必须使用Java解释器来解释执行。

3.JVM

       JVM(JavaVirtual Machine),是Java语言里负责解释执行字节码文件的Java虚拟机。JVM是可运行Java字节码文件的虚拟计算机。

当使用Java编译器编译Java程序时,生成的是与平台无关的字节码,这些字节码不面向任何具体平台,只面向JVM。不同平台上的JVM 都是不同的,但它们都提供了相同的接口。JVM是Java程序跨平台的关键部分,只要为不同平台实现了相应的虚拟机,编译后的Java字节码就可以在该平台上运行。这也正是Java语言跨平台的原理。

4.Java程序的基本规则

       Java程序是一种纯粹的面向对象的程序设计语言,因此Java程序必须以类(class)的形式存在,类是Java程序的最小程序单位。Java程序不允许可执行性语句、方法等成分独立存在,所有的程序部分都必须放在类定义里。

       以下是一个最简单的Java程序:

 

 

classDemo

{

}


 

这个类没有任何的类成分,是一个空类,但是这个程序是正确的,是可以通过编译的。但是在运行时会有如下的错误提示:

 



这是因为Java解释器规定:如果某个类能被解释器直接解释执行,则这个类里必须包含main方法,而且main方法必须使用public static void来修饰,且main 方法的形参必须是字符串数组类型即String[] args的形式。也就是说,Java解释器就从这个main方法开始解释执行,因此,main方法是Java程序的入口。

将以上程序修改之后:

class Demo

{

public static void Main(String[]args){

}

}


 

 

在运行时会有如下的错误提示:



这是因为在Java 语言中是严格区分大小写的,Java解释器只会选择从main方法开始执行;对于Main方法,Java解释器会把该方法当成一个普通方法,而不是程序的入口。

5.垃圾回收机制

       Java语言不需要程序员直接控制内存回收,Java程序的内存分配与回收都是由JRE(Java Runtime Enviroment)在后台自动进行的。JRE会负责回收不再使用的内存,这种机制被称为垃圾回收(GargageCollection),即GC。

       在Java中,当没有对象引用指向原先分配给某个对象的内存时,该内存便成为垃圾。当一个对象不再被引用时,内存回收它占领的空间,以便空间被后来的新对象使用。

       垃圾回收能自动释放内存空间,减轻编程的负担。这使Java虚拟机具有两个显著的优点:

(1)      垃圾回收机制可以很好地提高编程效率。因为在没有垃圾回收机制时,可能要花许多时间来解决内存的问题。

(2)      垃圾回收机制保护程序的完整性,是Java语言安全性策略的一个重要部分。

当编写Java程序时,一个基本原则是:对于不再需要的对象,不要引用它们。如果保持对这些对象的引用,垃圾回收机制暂时不会回收该对象,则会导致系统可用内存越来越少;当系统可用内存越来越少时,垃圾回收执行的频率就越来越高,从而导致系统的性能下降。

总结:

<1>Java程序的执行过程必须经过先编译,后解释两个步骤。并且可以“一次编译,到处运行”。

<2>如果需要运行一个Java类时,这个Java类必须包含main方法,这个main方法必须使用public和static来修饰,必须使用void来声明该方法的返回值,而且该方法的参数类型只能是一个字符串数组,即固定格式为:

       public static void main(String[] args)

<3>垃圾回收机制回收被无用对象占用的内存空间,使该空间可被程序再次使用。

-------android培训、java培训、期待与您交流!
----------
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息