7.11.3 Java简介
101Java简介
101Java简介及开发环境搭建
Java简介
编程语言简介
- 机器语言:纯粹的机器代码
- 机器语言是有0,1,0,1的二进制代码组成,可以有计算机直接执行。效率最高,但是通用性不强,对于不同的硬件需要不同的程序。说白了,不适合人来编程。
- 汇编语言:8086汇编、Win32汇编、.NET的汇编
- 汇编语言:效率稍微低于机器语言,通过简单的助记符来替代繁琐而枯燥的0,1代码。同样的通用性不强,对于不同的硬件需要设计不同语言。学习曲线比较大,需要硬件知识很多。介于其特殊的性质,在某些行业中得到广泛的应用。
- 高级语言:
- 高级语言:通过人类可以识别的自然语言(主要是英语)来进行编程,效率再次降低,但是程序编制难度和可读性大幅提高。可移植性好,实用性较好。比较适合大规模开发,是现在大多数人选择的语言。而且Java语言和.NET平台的出现在一定程度上解决了由于平台的不同所导致的移植困难的情况。 Basic、Pascal、Object Pascal、C、C++、Objective-C、Swift、C#、Java、ASP、ASP.NET、Perl、PHP、SQL、FoRTRAN 等等 Visual Basic、Visual Basic.NET、Delphi、Visual C++、C++ Builder、C# Builder、Visual Foxpro 等等
编程语言分类:
- 编译型(源代码编译成可执行文件后再执行) 如:C++ Objective-C 等
- 解释型(解释一行运行一行) 如:Python 等
Java 既是编译型又是解释型
Java源代码 -(javac)> 字节码 - (java)-> 解释执行
机器语言和汇编语言
高级语言
class Demo1
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
1 Java语言起源
Java是SUN(Stanford University Network 斯坦福大学网络公司)1995年推出的一门高级编程语言。 Java名称的来源Java最初被命名为Oak,目标在于家用电器等小型系统的编程语言,随着市场的变化,SUN着眼于网络应用的开发。Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。
历史:
- 1995年5月23日,JAVA语言诞生雏形
- 1996年,1997分别推出JDK1.0,JDK1.1版
- 1999年,JAVA被分成J2SE,J2EE,J2ME
- 2000年,JDK1.4发布
- 2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0
- 2005年,JAVA版本正式更名为JAVAEE,JAVASE, JAVAME
- 2006年12月,SUN公司发布JRE6.0
- 2009年04月20日,Oracle以74亿美元收购Sun。取得java的版权。
- 2010年9月,JDK7.0已经发布,增加了简单闭包功能。
- 2011年7月,甲骨文公司发布java7的正式版。
2 java语言重要特性之跨平台
1. 跨平台
什么是跨平台(计算机系统),跨平台概念是软件开发中一个重要的概念,即不依赖于操作系统,也不信赖硬件环境。一个操作系统下开发的应用,放到另一个操作系统下依然可以运行。
2. Java的跨平台
“write once run anywhere” Java的跨平台是相对于其他编程语言而言的,通过Java语言编写的应用程序在不同的系统平台上都可以运行。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。在windows编译的c语言程序,在linux下是不能运行的。当然在linux下编译的c语言程序在windows下也是不能运行的。而Java语言在不同平台上运行时不需要重新编译。 Java跨平台的原理:Java的跨平台是通过Java虚拟机(JVM)来实现的。
3 Java的三大平台
- JavaSE (Java Platform,Standard Edition)
- Java SE 以前称为J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的Java 应用程序。
- Java SE 包含了支持Java Web 服务开发的类,并为Java Platform,Enterprise Edition(Java EE)提供基础。 例子:类似QQ、扫雷、飞秋、凌波这样子的桌面应用。
- Java EE(Java Platform,Enterprise Edition)
- 这个版本以前称为J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在Java SE 的基础上构建的,Ja它提供Web 服务、组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和Web 2.0 应用程序。
- Java ME(Java Platform,Micro Edition)
- 这个版本以前称为J2ME,也叫K-JAVA。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。
4 环境的搭建
1. Java虚拟机(JVM)(即可运行.class文件)
- Java Virtual Machine 一个软件模拟的计算机。
- Java源程序想象成我们的C源程序,Java源程序编译后生成的字节码(.class)就相当于C源程序编译后的二进制可执行文件。
- JVM虚拟机相当于计算机系统(操作系统+硬件环境),Java解释器相当于CPU。
- .exe文件直接在windows操作系统下运行,在CPU上运行的是机器码(.exe文件)
- .class字节码文件是运行在JVM虚拟机下的,在Java解释器上运行的是Java字节码。
- Java解释器相当于运行Java字节码的“CPU”,但该“CPU”不是通过硬件实现的,而是用软件实现的。* Java解释器实际上就是特定的平台下的一 个应用程序。只要实现了特定平台下的解释器程序,Java字节码就能通过解释器程序在该平台下运行,这是Java跨平台的根本。
- 当前,并不是在所有的平台 下都有相应Java解释器程序,这也是Java并不能在所有的平台下都能运行的原因,它只能在已实现了Java解释器程序的平台下运行。
2. Java运行环境(JRE)(即可运行.java文件)
JRE Java Runtime Environment Java运行环境。包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
3. Java开发环境(JDK)(可开发java文件)
JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK 是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。JDK是学好Java的第一步。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。
JDK的安装
- JDK目录介绍
- bin目录:存放Java的编译器、解释器等工具(可执行文件)。java javac
- db目录:JDK7附带的一个轻量级的数据库,名字叫做Derby。
- include目录:存放的调用系统资源的接口文件。
- jre目录:存放Java运行环境文件。
- lib目录:存放Java的类库文件。
- src.zip文件:JDK提供的类的源代码。
- 安装JDK需要注意的事项:
- 安装路径中不要包含中文。
- 安装路径中不要包含空格。
7.11.3 Java简介的更多相关文章
- 第一回 java~简介
Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式 ...
- Java从零开始学零(Java简介)
一.Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年 ...
- Java-Runoob:Java 简介
ylbtech-Java-Runoob:Java 简介 1.返回顶部 1. Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java ...
- (二)Java 简介
Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式 ...
- 11大Java开源中文分词器的使用方法和分词效果对比,当前几个主要的Lucene中文分词器的比较
本文的目标有两个: 1.学会使用11大Java开源中文分词器 2.对比分析11大Java开源中文分词器的分词效果 本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那 ...
- Java入门 - 语言基础 - 01.Java简介
原文地址:http://www.work100.net/training/java-intro.html 更多教程:光束云 - 免费课程 Java简介 序号 文内章节 视频 1 概述 2 主要特性 3 ...
- 11大Java开源中文分词器的使用方法和分词效果对比
本文的目标有两个: 1.学会使用11大Java开源中文分词器 2.对比分析11大Java开源中文分词器的分词效果 本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那 ...
- Java基础:Java简介及安装配置(1)
Java简介 Java是Sun公司于1995年推出的高级编程语言,具有跨平台特性,编译后的程序能够运行在多种类型的操作系统平台上. 1.1 Java应用程序版本 Java的3个独立用于开发不同类型应用 ...
- 1.Java简介
第一章 Java简介 开始上传一些自己画的思维导图 画的基本上是根据菜鸟教程Java的对应的图 会有一系列的图陆续放出来,不过博客上只有截图,具体的带注释的具体的图后续会放在git上,更新会加上git ...
随机推荐
- tag上、push上和pull 取Docker 映像
在此之前需要拥有一个docker Hub账户,注册地址:https://hub.docker.com/. Tag.Push Docker映像 使用docker images 获取当前拥有的映像列表,其 ...
- FZU 2256 迷宫
https://vjudge.net/problem/FZU-2256 题意:略 思路: 在比赛的时候想到了一次dfs,一次bfs但是样例都过不了...赛后才知道,距离的更新必须同步,不能先把时光机的 ...
- 【转载】接触Matlab10年后的一个总结,随时使用Matlab要掌握的一些要点
来源: http://www.cnblogs.com/asxinyu/p/Basic_Matlab_Experience.html 接触Matlab10年后的一个总结,随时使用Matlab要掌握的一些 ...
- Sping之Ioc
Ioc,控制反转,依赖注入! 作用:降低代码之间的耦合性 代码永远是最好的示例: 1.新建test类 package demo; public class test { String string_v ...
- LeetCode-Palindrome Partitioning II[dp]
Palindrome Partitioning II Given a string s, partition s such that every substring of the partition ...
- C++引用形参,函数返回多个值
之前编代码有遇到过想让一个函数返回多个值的情况,low low的我不知道有什么办法,直接使用的全局变量将函数里的值传出去. 今天看书,<C++primer>第五版中文版第189页:使用引用 ...
- mysql导出指定字段或指定数据到文件中
使用mysqldump把mysql数据库的数据导出到文件中还是挺方便的:比如说要导出baijunyao数据库: // mysqldump -u用户名 -p 数据库名 [表名]> 导出的文件名 m ...
- 实例甜点 Unreal Engine 4迷你教程(1)之如何用C++将纹理绘制在UserWidget的Image小部件上
完成本迷你教程之前,请前往完成以下迷你教程: 无前置教程待完成. 本教程适合的人群: 初学者,具有开发经验两周: 本示例的目的:为了在代码中实现UMG中的这个功能: 说明:这是一些列迷你教程的首篇,所 ...
- iOS-联系人应用(一)
环境:xcode6,iphone 4s simulator with iOS8.0 一.功能界面介绍 1.1 应用启动进入联系人列表页面,数据为模拟数据,来源与一个plist文件: 1.2 点击右上角 ...
- 终结 finalize()和垃圾回收(garbage collection)
1.为什么要有finalize()方法? 假定你的对象(并非使用new)获得了一块"特殊"的内存区域,由于垃圾回收器只知道释放那些经由new分配的内存,所以他不知道该如何释放该对象 ...