java教程系列一:什么是Java语言?
海上生明月,天涯共此时。
java
是一种通用的计算机编程语言,它具有卓越的通用性、高效性、平台移植性和安全性。它旨在让应用程序开发人员“write once, run anywhere”
(wora
),这意味着编译的java
代码可以在支持java
的所有平台上运行,而无需重新编译。
例如,你可以在unix
上编写和编译java
程序,并在microsoft windows
,macintosh
或unix
计算机上运行它,而无需对源代码进行任何修改。wora
是通过将java
程序编译成称为字节码的中间语言来实现的。字节码的格式与平台无关。称为java
虚拟机(jvm
)的虚拟机用于在每个平台上运行字节码。
java的历史
java
最初是由sun microsystems
的james gosling
开发的(后来被oracle corporation
收购),并于1995年作为sun microsystems
java
平台的核心组件发布。该语言的大部分语法来自c
和c ++
,但它比它们任何一种都简单易学。
在2010年1月27日收购sun microsystems
之后,oracle corporation
成为java se
平台官方实施的当前所有者。此实现基于sun
最初的java
实现。oracle
实施适用于microsoft windows
,mac os x
,linux
和solaris
。
oracle
实现打包成两个不同的发行版:
-
java
运行时环境(jre
),包含运行java
程序所需的java se
平台部分,面相大多数用户。 -
java development kit(jdk
),面向软件开发人员,包括java
编译器,javadoc
,jar
和调试器等开发工具。
垃圾回收
java
使用自动垃圾收集器来管理对象在内存中的生命周期 。程序员只需要确定何时创建对象,并且java
运行时负责在对象不再使用时恢复内存。一旦没有对对象的引用,无法访问的内存就有资格被垃圾收集器自动释放。
如果程序员的代码保存对不再需要的对象的引用,则通常会发生类似于内存泄漏的事情,通常是当不再需要的对象存储在仍在使用的容器中时。如果调用不存在的对象的方法,则抛出“nullpointerexception”
。
垃圾收集可能随时发生。理想情况下,它会在程序空闲时发生。如果堆上的可用内存不足以分配新对象,则可以保证触发;这可能导致程序暂时失速。java
中不可能进行显式内存管理。
java hello world
传统的“hello,world!”
程序可以用java编写:
public class helloworldapplication { public static void main(string[] args) { system.out.println("hello world!"); // prints hello world! to the console. } }
java类文件
-
java
源文件必须以它们包含的公共类命名,并附加后缀.java
,例如helloworldapplication.java
。 - 必须首先使用
java
编译器将其编译为字节码,从而生成名为helloworldapplication.class
的文件。只有这样才能执行或“启动”。 - java源文件可能只包含一个公共类,但它可以包含多个不具有公共访问权限的类和任意数量的公共内部类。
- 当源文件包含多个类时,请将一个类设置为
“public”
,并使用该公共类名称命名源文件。
推荐阅读
-
java教程系列一:什么是Java语言?
-
yii2 - 请问顺丰速运这样的物流网站是用什么语言写的?是php还是java?
-
为什么在美国的cs编程入门课大多有java和python。而在国内首先学习的语言是c/c++?
-
一不小心就让Java开发踩坑的fail-fast是个什么鬼?(推荐)
-
深入理解java虚拟机系列初篇(一):为什么要学习JVM?
-
java教程系列二:Java JDK,JRE和JVM分别是什么?
-
java为什么是半编译半解释型语言
-
什么是递归?用Java写一个简单的递归程序
-
【Java语言】剑指office系列之数组、哈希表---数组中只出现一次的数字
-
深入理解java虚拟机系列初篇(一):为什么要学习JVM?