Java(一)——认识Java语言

1、Java语言简介

  Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言,具有卓越的通用性、高效性、平台移植性和安全性。Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程动态的语言。

2、Java平台三大体系

  Java分为三个体系,分别为Java SE(J2SE,Java2 Platform Standard Edition,标准版);JavaEE(J2EE,Java 2 Platform, Enterprise Edition,企业版),用于构建大型企业级应用或网站;Java ME(J2ME,Java 2 Platform Micro Edition,微型版),用于移动终端。

3、Java发展历程

  1995年5月23日,(诞生) Sun公司推出,最初称为Oak,是1991年为嵌入式芯片设计的,后更名为Java;

  1996年1月, 第一个JDK——JDK1.0诞生;

  1997年2月18日,JDK1.1发布;

  1999年6月,SUN公司发布Java的三个版本:标准版、企业版和微型版;

  2000年5月8日,JDK1.3发布;5月29日,JDK1.4发布;

  2009年04月20日,Oracle收购Sun,取得Java的版权;

  2011年7月28日,甲骨文发布Java 7.0的正式版;

  2014年3月19日,甲骨文公司发布Java 8.0的正式版。11月,甲骨文公司发布了Java 9.0的新特性

4、核心概念:JVM、JDK、JRE

  JVM:Java Virtual Machine(Java虚拟机)

  JDK:Java Development Kit(Java开发工具包)

  JRE:Java Runtime Environment(Java运行环境)

  

  三者的关系:JDK包含JRE,JRE包含JVM

  

  JVM详细:

  Java的源代码是.java文件,是不可执行的,需要通过编译器编译成与平台无关的.class字节码文件,再通过解释器解释才可以执行,而JVM包括了编译器和解释器。即Java程序需要JVM才可以运行。

  JRE详细:

  JRE(Java Runtime Environment,Java运行环境),是运行Java程序必须的环境集合,包含JVM标准实现及Java核心类库,仅能完成Java的运行,不能对Java进行编译、调试等。

  JRE有独立的版本,如果只需要运行Java程序,安装JRE就可以了。

  

  JDK详细:

  JDK(Java Development Kit,Java开发工具包)是Java语言的软件开发工具包(SDK),是面向Java开发者发布的Java套件。

  JDK包含的基本组件有:编译器、Jar打包工具、Javadoc文档生成器、Debug调试器、头文件生成器、反汇编器、监控工具等。

  JDK包含了完整的JRE,如果安装了JDK,就不用安装JRE了,因为JRE已经集成在JDK里面了

    

 

时间: 2024-10-06 20:46:41

Java(一)——认识Java语言的相关文章

java安全沙箱(三)之内置于Java虚拟机(及语言)的安全特性

java是一种类型安全的语言,它有四类称为安全沙箱机制的安全机制来保证语言的安全性,这四类安全沙箱分别是: 类加载体系 .class文件检验器 内置于Java虚拟机(及语言)的安全特性 安全管理器及Java API 本篇博客主要介绍下"内置于Java虚拟机(及语言)的安全特性":其它几类安全机制会在后续博客中陆续介绍. 简介 jvm装载一个类,并且对字节码进行了四趟扫描,这些字节码就能安全地被执行了.然而去了这些安全校验,jvm在执行字节码时还进行了一些内置的安全机制校验.这些安全机制

Java 8 动态类型语言Lambda表达式实现原理分析

Java 8支持动态语言,看到了很酷的Lambda表达式,对一直以静态类型语言自居的Java,让人看到了Java虚拟机可以支持动态语言的目标. import java.util.function.Consumer; public class Lambda { public static void main(String[] args) { Consumer<String> c = s -> System.out.println(s); c.accept("hello lambd

[Java入门笔记] Java语言简介

前言 学习Java有一段时间了,但是一直缺少一个系统的思想,现在重新通过书籍中.网上的文章,视频等资料,整理与回顾Java的知识点. 言归正传,让我们先从了解Java语言开始. Java语言的由来 Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式推出.Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的.1995年更名为Java,并

activiti designer源码的研究(三) 之servicetask调用除Java之后的其他语言发布的webservice

按照上一篇文章的配置,ServiceTask已经可以调用带有@webParam和@webResult发布的webservice了,但是怎么调用这些不带这些参数的发布的webservice了,因为其他语言并没有@webParam这些参数,请看下面的例子: Counter.java <span style="font-size:14px;">@WebService public interface Counter { /** * Increase the counter in

深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)

最近看了一下java 8的一些新特性,其中最重要的莫过于Lambda表达式了,通过一阵子的学习,原本准备自己写一篇博客的,后来阅读了一位学长翻译过来的博客(原文是Brain Goetz的State of Lambda,下面会给出原文链接),觉得写的十分完美,把我想要写的和我没想到的都罗列了出来,就把这个分享给大家了. 注:原译文见  http://lucida.me/blog/java-8-lambdas-insideout-language-features/ 英语原版见:http://cr.

Java的native关键字---JAVA下调用其他语言的关键词

今天研究Java基础类库,Object类的时候,发现了一个关键字:native 咦?这是个什么东东?它认识我,我可不认识它! 嘿嘿,没关系,baidu一下. java native关键字 一. 什么是Native Method   简单地讲,一个Native Method就是一个java调用非java代码的接口.一个Native Method是这样一个java的方法:该方法的实现由非java语言实现,比如C.这个特征并非java所特有,很多其它的编程语言都有这一机制,比如 在C++中,你可以用e

Java编写的C语言词法分析器

这是java编写的C语言词法分析器,我也是参考很多代码,然后核心代码整理起来,放在QQ空间和博客上,目的是互相学习借鉴,希望可以得到高手改进.这个词法分析器实现的功能有打开文件.保存文件.打开帮助文档.文本域内容的剪切和复制和黏贴.进行词法分析 程序的项目结构如图,Word类和Unidentifiable类是两个JavaBean类,存放的参数有两个row(整型).word(String),row用于获取行数,word用于获取标识符,LexerFrame是词法分析器的界面类,Analyze封装了进

[转]深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)

以下内容转自: 作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-language-features 本文谢绝转载,如需转载需征得作者本人同意,谢谢. -------------------------------------内容分割线--------------------------------------------------------- 关于 本文是深入

Java和c#开发语言的不同点

Java语言和C#语言非常相似,虽然内部会有很多区别,提供的API也不一样,但开发一个具体功能点的思路常用的都差不多,由于对比较新的技术和特性开发过程中接触不多,我所遇到的不同点包括: 1.Java包的名字是和物理文件位置一一对应的, C#里命名空间可以随便写,并且编译出来的程序集也可以随便更改,可以不和命名空间保持一致,程序集和JAVA里单独打出来的jar包是差不多的意思. 2.JAVA的一个文件只能有一个公共类,而C#可以多个公共类在一个文件里. 3.如果找到一个JAR包,Java查看新ja

linux下java程序与C语言程序通过SOCKET通信的简单例子

linux下java程序与C语言程序通过SOCKET通信的简单例子 今天上午实验了java程序与c语言程序通过socket进行通信.由于没学过java,因此只是编写了C语言端的代码,java端的代码是从网上别的文章中找的,经过少量修改后与C语言端程序通信成功. 本例中C语言端作为服务器,java端作为客户端 代码如下: /****************** server program *****************/ #include <stdio.h> #include <sy