java基础教程:介绍和环境(1)
来源:互联网 发布:剑三怎么走淘宝链接 编辑:程序博客网 时间:2024/06/04 21:10
本系列适合没有基础的初学者,也适合复习基础的读者。
编写本系列的目的有二:
一、自己梳理下基础,提升自己的总结能力,进而提升授课能力。
二、目前没有一套完整的从开始到一个初级开发者的完整教程,都内容较少,并且内容较旧。为了很多和我一样,当初为了学习而寻找资料视频的童鞋~~
本文是本系列的第一章,希望以后能抽空写完。哈哈。不用NG。
本文分为如下三个章节:
一、介绍
二、环境安装
三、编译与执行
第一部分:介绍
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等 。
记得前面有个"."
3.修改变量path,在最后面加:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
确认填写无误后,点击确定关闭配置界面。接下来让我们测试下安装是否成功可用。步骤为:
windows菜单-》运行-》输入“cmd”-》回车,打开了DOS窗口,在窗口中填写如下命令:
java
如果不提示无效的命令,显示一大堆信息,则说明成功。再输入命令:
javac
如果也不提示无效的命令,那么,我们的环境就安装成功啦。
当然,本节的内容网上的相关文章很多,以大家的聪明才智,肯定都能解决。那么我们就继续下一站~~
第三部分:编译运行
这部分呢,会给大家讲述下一个java的程序是如何运行的。深入的东西很多,大家能了解一些基础就可以啦。
java程序的执行的过程大致是这样的:
java代码-》编译-》执行
那么,编译和执行都做了什么呢?
Java编译的过程是将 .java文件编译成 .class文件的过程。Java编译过程是对java文件的语法和内容校验和指令处理的过程,
处理完成后,java文件变成了JVM识别的字节码文件.class,JVM可以使用类加载器对编译的.class文件进行加载和运行。
java执行过程是将.class文件加载到jvm,然后转换为cpu指令执行的过程。
具体每个步骤做的事情很多,我们看看几张图:
编译图:
运行图:
以上的图是从别的博客和百度拿过来的,,在此说明下。
然后呢,我们说说我们前面提到的Java的平台可移植性。为什么java一处编译,随处可运行?是因为java有一个代码 执行的虚拟机JVM。那么什么是JVM,它如何做到平台无关的呢?
Java virtual machine,java虚拟机,java程序运行的虚拟机器。
一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。
Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。
自己画了个图:
讲了这么多,那么我们自己怎么编译和执行代码呢?有两个命令可以帮助我们。
javac -cp .;com.china.test.class;xyz.jar ev\lily\yiwei.java
那么,让我们试试编译运行我们的第一个程序吧!
public class Test {
public static void main(String[]args){
System.out.println("helloworld!");
}
}
一、介绍
二、环境安装
三、编译与执行
- java基础教程:介绍和环境(1)
- J2EE基础教程(1):简介和windows下环境配置
- Java日记(1)—运行环境和语言介绍
- java基础教程之Class类和反射API介绍
- Java基础教程2-安装和配置Eclipse IDE环境
- Python 3基础教程1-环境安装和运行环境
- 【Git零基础教程】(1)介绍/创建
- 数据库基础教程(1):windows下环境配置和初步操作
- MySQL基础教程1-环境安装和连接数据库
- 【Python基础教程笔记(一)】环境,列表,元祖和字符串
- java特点和开发环境介绍
- java的环境搭建和简单介绍
- 第一章 Java介绍 和 环境配置
- 复习:java中值传递和引用传递(java基础教程)
- Rational Software Architect 的介绍和基础教程
- #Java基础语法#(1)Java介绍及环境搭建
- Scala 开发环境搭建和基础教程
- java基础教程-包和接口
- 谷歌即将面临欧盟近100亿美元天价罚单
- jQuery与Struts2综合应用[stream/json]异步请求
- 计算机网络原理知识点(第二章:物理层)
- 02Jenkins安装
- linux下线程原理及实现
- java基础教程:介绍和环境(1)
- matlab和vs混合调用问题
- |UVA 11292|贪心|Dragon of Loowater
- Data Binding
- 哈夫模型-arcgis
- wifi 简单实习
- 解决 Source Insight中的parse too complex问题
- ES6焦点图(已实现)
- JDBCUtils 的通用代码