Java笔记(1):基本介绍

基本介绍:

Java

       Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。Java是一门面向对象编程语言,具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。

       2009年Sun 公司被 Oracle (甲骨文)公司收购,Java 也随之成为 Oracle 公司的产品。

分类(体系):

JavaSE:

       Java SE(Java Standard Edition,Java 标准版)是Java技术的核心和基础,是Java ME和Java EE编程的基础。用于开发和部署桌面、服务器以及嵌入设备和实时环境中的Java应用程序,包括用于开发Java Web服务的类库。

JavaEE:

       Java EE(Java Platform,Enterprise Edition,Java 企业版)是sun公司推出的企业级应用程序版本,这个版本以前称为 J2EE。能够帮助我们开发和部署可移植、健壮、可伸缩且安全的服务器端 Java应用程序。Java EE 是在 Java SE 的基础上构建的,它提供Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 3.0应用程序。

JavaME:

       Java ME 又称为J2ME(Java Platform,Micro Edition,Java 微型版),是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API。

主要特性:

简单性:

       Java 语言的语法与 C 语言和 C++ 语言很接近,使得大多数程序员很容易学习和使用。另一方面,Java 丢弃了 C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java 语言不使用指针而是引用。并提供了自动分配和回收内存空间,使得程序员不必为内存管理而担忧。

面向对象:

       Java 语言提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承不支持类的多继承),但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为 implements)。Java 语言全面支持动态绑定,而 C++语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。

分布性:

       Java 语言支持 Internet 应用的开发,在基本的 Java 应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括 URL、URLConnection、Socket、ServerSocket 等。Java 的 RMI(远程方法激活)机制也是开发分布式应用的重要手段。

健壮性:

       Java 的强类型机制、异常处理、垃圾的自动收集等是 Java 程序健壮性的重要保证。对指针的丢弃是 Java 的明智选择。Java 的安全检查机制使得 Java 更具健壮性。

安全性:

       Java通常被用在网络环境中,为此,Java 提供了一个安全机制以防恶意代码的攻击。除了Java 语言具有的许多安全特性以外,Java 对通过网络下载的类具有一个安全防范机制(类 ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类 SecurityManager)让 Java 应用设置安全哨兵。

体系结构中立:

       Java 程序(后缀为 java 的文件)在 Java 平台上被编译为体系结构中立的字节码格式(后缀为 class 的文件),然后可以在实现这个 Java 平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。

可移植性:

       这种可移植性来源于体系结构中立性,另外,Java 还严格规定了各个基本数据类型的长度。Java 系统本身也具有很强的可移植性,Java 编译器是用 Java 实现的,Java 的运行环境是用 ANSI C 实现的。

解释性:

       Java 程序在 Java 平台上被编译为字节码格式,然后可以在实现这个 Java 平台的任何系统中运行。在运行时,Java 平台中的 Java 解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。

高性能:

       与那些解释型的高级脚本语言相比,Java 的确是高性能的。事实上,Java 的运行速度随着 JIT(Just-In-Time)编译器技术的发展越来越接近于 C++。

多线程:

       在 Java 语言中,线程是一种特殊的对象,它必须由 Thread 类或其子(孙)类来创建。通常有两种方法来创建线程:

  1. 使用型构为 Thread(Runnable) 的构造子类将一个实现了 Runnable 接口的对象包装成一个线程;
  2. 从 Thread 类派生出子类并重写 run 方法,使用该子类创建的对象即为线程。

       值得注意的是 Thread 类已经实现了 Runnable 接口,因此,任何一个线程均有它的 run 方法,而 run 方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。Java 语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为 synchronized)。

动态性:

       Java 语言的设计目标之一是适应于动态变化的环境。Java 程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java 中的类有一个运行时刻的表示,能进行运行时刻的类型检查。

工作原理:

Java工作原理

       源文件 .java文件经 javac 命令编译后,生成一种二进制中间码,存储在 class 文件中,生成 .class 文件,再用 java 命令使 JVM(Java虚拟机)解释 .class 文件并翻译成目标平台的指令来使程序运行。

       JVM:java虚拟机,解释执行 .class文件,把字节码解释成具体平台上的机器指令执行。

       JRE:Java运行环境,运行Java程序所必需的环境的集合,包括Java虚拟机 JVM、Java核心类等。

Java程序结构:

  • 由一个或多个独立的类组成
  • 最多一个公有类,源代码文件必须与公有类的名字相同。
  • 类由一个或多个方法组成,其中公有类的main方法用作程序的运行的入口。main方法标准写法:
public static void main(String[] args){
}

Java开发工具:

  • 文本编辑工具:记事本、Nodepad++、UltraEdit、Editplus
  • Java IDE:IntelliJ IDEA、Eclipse、NetBeans

参考链接:

百度百科:https://baike.baidu.com/item/Java/85979?fr=aladdin#3

菜鸟教程:https://www.runoob.com/java/java-intro.html

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值