JAVA 的 基础与程序运行

简介:

在最初是为家用电器设计的,因为其特性刚好适合于Internet,于是通过在Internet上的应用得以迅速流行,成为一种计算机语言,一个平台,一个网络计算的架构。

JAVA语言是一种面向对象编程语言,类是java程序的基本构造单元,JAVA中的所有语句都出现在一个 类中。面向对象包括了两个基本概念:对象和类。

JAVA是一种简单的,面向对象的,分布式的,解释的,安全的,可移植的,性能优秀的语言。它一其强安全性,平台无关性,硬件结构无关性,语言简洁,面向对象的特点,在网络编程语言中占据了无可比拟的优势吗,成为了实现电子商务系统、企业管理平台、移动设备应用开发等的首选语言。

第一;了解JAVA的诞生过程与版本:

JAVA诞生与SUN公司,java之父是James Gosling,正式诞生在1952年5月23日,JAVA的历代版本和特性:

Java SE 8中的新特性

  • Lambda表达式
  • Pipelines和Streams
  • Date和Time API
  • Default方法
  • Type注解
  • Nashhorn JavaScript引擎
  • 并发计数器
  • Parallel操作
  • 移除PermGen Error
  • TLS SNI

Java Version SE 7

开发代号是Dolphin(海豚),于2011-07-28发行。

引入的新特性包括:

  • switch语句块中允许以字符串作为分支条件;
  • 在创建泛型对象时应用类型推断;
  • 在一个语句块中捕获多种异常;
  • 支持动态语言;
  • 支持try-with-resources;
  • 引入Java NIO.2开发包;
  • 数值类型可以用2进制字符串表示,并且可以在字符串表示中添加下划线;
  • 钻石型语法;
  • null值的自动处理。

Java Version SE 6

开发代号为Mustang(野马),于2006-12-11发行。

引入的新特性包括:

  • 支持脚本语言;
  • 引入JDBC 4.0 API;
  • 引入Java Compiler API;
  • 可插拔注解;
  • 增加对Native PKI(Public Key Infrastructure)、Java GSS(Generic Security Service)、Kerberos和LDAP(Lightweight Directory Access Protocol)的支持;
  • 继承Web Services;
  • 做了很多优化。

Java Version SE 5.0

开发代号为Tiger(老虎),于2004-09-30发行。

引入的新特性包括:

  • 引入泛型;
  • 增强循环,可以使用迭代方式;
  • 自动装箱与自动拆箱;
  • 类型安全的枚举;
  • 可变参数;
  • 静态引入;
  • 元数据(注解);
  • 引入Instrumentation。

J2SE Version 1.4

开发代号为Merlin(隼),于2004-02-06发行(首次在JCP下发行)。

引入的新特性包括:

  • XML处理;
  • Java打印服务;
  • 引入Logging API;
  • 引入Java Web Start;
  • 引入JDBC 3.0 API;
  • 引入断言;
  • 引入Preferences API;
  • 引入链式异常处理;
  • 支持IPv6;
  • 支持正则表达式;
  • 引入Image I/O slot machine API。

J2SE Version 1.3

开发代号为Kestrel(红隼),于2000-05-08发行。

引入的新特性包括:

  • 引入Java Sound API;
  • jar文件索引;
  • 对Java的各个方面都做了大量优化和增强。

J2SE Version 1.2

开发代号为Playground(操场),于1998-12-08发行。

引入的新特性包括:

  • 引入集合(Collection)框架;
  • 对字符串常量做内存映射;
  • 引入JIT(Just In Time)编译器;
  • 引入对打包的Java文件进行数字签名;
  • 引入控制授权访问系统资源的策略工具;
  • 引入JFC(Java Foundation Classes),包括Swing 1.0、拖放和Java 2D类库;
  • 引入Java 插件;
  • 在JDBC中引入可滚动结果集、BLOB、CLOB、批量更新和用户自定义类型;
  • 在Applet中添加声音支持。

JDK Version 1.1

于1997-02-19发行。

引入的新特性包括:

  • 引入JDBC(Java Database Connectivity);
  • 支持内部类;
  • 引入Java Bean;
  • 引入RMI(Remote Method Invocation);
  • 引入反射(仅用于内省)。

JDK Version 1.0

开发代号为Oak(橡树),于1996-01-23发行。

现在我们所学的和所用的是JAVA8.

在JAVA中有两个重要的概念JDK和JRE:java的核心是JDK,

简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。
JDK就是Java Development Kit
JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。
如果安装了JDK,会发同你的电脑有两套JRE

JAVA语言的特点是:

1,简单性;

2,面向对象性,

3,平台无关性(一次开发,到处运行);

4,健全性和安全性;

5,多线程性(同时运行多项任务)

通用的JAVA分为三个类别:分别是JAVASE,JAVAEE,JAVAME

1. Java SE(Java Platform,Standard Edition)。Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。

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

3. Java ME(Java Platform,Micro Edition)。这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。

说得更简单点

Java SE 是做电脑上运行的软件。

Java EE 是用来做网站的-(我们常见的JSP技术)

Java ME 是做手机软件的。

JAVA程序的运行过程是:

这个过程中有一个重要的概念JAVA虚拟机:

什么叫做java虚拟机呢?下面是对其的描述:

Java虚拟机(Java Virtual Machine 简称JVM)是运行所有Java程序的抽象计算机,是Java语言的运行环境,它是Java 最具吸引力的特性之一。其本质上是一个软件,该软件被放在某个操作系统上,例如Unix,Linux,Windows.等,从而为相应操作系统上的JAVA程序的运行提供一个独立运行的标准环境。之所以被称为虚拟机,就是让我们把这个软件当做一个虚拟的机器。我们编写的JAVA程序运行在这个虚拟的机器上,隔离具体的操作系统和硬件平台,从而实现了java程序的平台无关性:在一个操作系统上开发的程序可以在任何操作系统上运行。这就是JAVA的“一次编写,到处运行”。不同的虚拟机负责将相同的字节码转换成本地适用 的机器代码。

时间: 2024-08-30 01:57:05

JAVA 的 基础与程序运行的相关文章

java实例化对象时程序运行顺序

当java实例化对象时,首先先进行类加载,类加载的整个过程是将类字节码引入内存,并未类中的static变量赋值.上篇文章已经大概分析了类的加载机制,下面讲一下类的实例化过程. 首先引入示例代码 父类 package test; public class Fu { public int j = 9; public static int i = 10; static{ i = 9; System.out.println("Fu静态代码块"); } { j = 10; System.out.

黑马程序员——java——获取一个应用程序运行的次数,如果超过5次,给出使用次数已到请注册的提示,并不要再运行程序

获取一个应用程序运行的次数,如果超过5次,给出使用次数已到请注册的提示,并不要再运行程序 import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.Properties; public class Test5 { public static void main(String[] args) th

java入门(1) 程序运行机制及运行过程

首先我们来看一下java程序在底层是怎么工作的: JAVA有两种核心机制: Java虚拟机(Java Virtual Machine): 1.java虚拟机可以理解成一个以字节码为机器指令的CPU. 2.对于不同的平台,有不同的虚拟机. 3.java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”. 垃圾收集机制(Garbage collection) 1.不再使用的内存空间应回收——垃圾收集 2.Java语言相对于C/C++而言消除了程序员回收无用内存空间的责任:提供了一种系统

java--学习java从这里开始:Java语言基础(1)《基础知识篇》--黑马程序员

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- Java语言基础(1) 从这篇日记开始说一些关于java的语言基础知识, 1  Java语言概述 java的创始人——詹姆斯·高斯林(James Gosling) 1977年获得了加拿大卡尔加里大学计算机科学学士学位,1983年获得了美国卡内基梅隆大学计算机科学博士学位,毕业后到IBM工作,设计IBM第7一代工作站NeWS系统,但不受重视.后来转至Sun公司,1990年,与Patrick,Na

黑马程序员——Java集合基础知识之Collection

集合基础知识--Collection Java中集合框架由常用的Collection接口和Map接口组成,而Collection接口又有两个子接口,是List接口和Set接口,常用的集合框架由这三个类组成. List接口的功能方法 List的使用最为简单,创建集合,通过add方法添加元素,get方法获取元素,通过迭代器获取元素.List接口存放的数据无序的,添加速度快,但是查询速度慢,因为查询的时候必须遍历,每次都重头开始,效率较低.常用实现类有ArrayList,LinkedList. Lis

Java 零基础跑起第一个程序

Java 零基础跑起第一个程序 一 概述 1  java代码编译 编译后才能在计算机中运行,编译就是把人能看懂的代码转换成机器能看懂的形式 2 java的优点 一次编译,到处运行.因为java代码是在虚拟机中运行,虚拟机消除了不同操作系统间的差异.Java Virtual Machine---简称JVM 3  java的版本 SUN公司发布Java1.2以后,叫把Java叫做java2了,所以现在都叫J2XX. 功能上分为三个版本: J2SE 标准版----现在大部分开发都用它 J2EE 企业版

黑马程序员——java多线程基础知识1

多线程 进程是一个正在执行的程序. cpu在同时执行这些程序,其实是跳跃式的,做快速的切换,时间很短.一个进程可能存在多条路径.迅雷的多路径.每一个进行执行都有一个执行顺序,该顺序是一个执行路径,或这叫一个控制单元.每一个进程至少有一个线程,线程就是进程中的一个独立的控制单元,线程控制进程的执行.jvm启动的时候会有一个进程就叫做java,exe,该进程中至少有一个线程在控制Java程序的执行 ,而且该线程的执行代码在 主函数中.该线程称为主线程.虚拟机至少也有两个线程,一个主线程执行,另一个负

java程序运行原理

一.JRE.JDK.JVM 要了解java程序运行原理,首先需要了解知道jre.jdk.jvm这三者是什么,他们之间又有什么联系. JRE(JavaRuntimeEnvironment,Java运行环境),也就是Java平台.所有的Java 程序都要在JRE下才能运行. JDK(Java Development Kit,java开发工具包)是程序开发者用来来编译.调试java程序用的开发工具包.JDK的工具也是Java程序,也需要JRE才能运行.为了保持JDK的独立性和完整性,在JDK的安装过程

[视频讲解]Java(JDK的下载安装及第一个程序运行)

(JDK的下载安装及第一个程序运行) 内容:Java JDK 的安装以及HelloWorld 程序的运行 欢迎童鞋们前往围观 http://v.youku.com/v_show/id_XODA3MzkzNzMy.html 更多内容分享请关注 我的博客 http://www.xiaozhangwx.com 本视频由 小张网校 提供