本篇作为基础的开篇文章,想了许久犹豫从哪儿讲起?最终决定既然作为基础的开篇,就从零IT开始:
1 计算机基础
1.1 计算机
电子计算机,也就是我们俗称的电脑,是一种能够按照指定的程序运行,自动、高速处理数据信息的智能电子设备。由硬件和软件组成,硬件相当于躯干,装上软件相当于给计算机赋予了生命。
1.2 硬件
cpu:是一台计算机的运算核心和控制核心。它主要由运算器、寄存器、高速缓存以及实现它们之间联系的数据、控制、状态的总线构成。是整个系统的核心,其功能主要是解释计算机指令以及处理计算机软件中的数据。常听到CPU主频,主频即CPU内核工作的时钟频率(CPU Clock Speed)。该时钟速度越快,时间段内执行的指令越多,1G是10000Mhz,2MHz(200万次/秒)。
内存:是数据与CPU进行互通的桥梁。计算机中的程序的允许你都在内存中进行。内存也叫内存储器,主要作用于暂时存放CPU中运算数据,以及与硬盘等外部存储设备交换的数据。
存储设备:主要有:磁盘驱动器,光盘驱动器,U盘;内存不能长久保存数据,存储设备可以。
1.3 软件
描述:按照一定顺序组织的计算机数据和指令的集合;对初学者看到这句话是不是有点懵圈,什么鬼?莫慌,先按你理解的来就行。下面罗列的每个人应该都很明白:
系统软件:如:Windows xp、7、8、10 Linux Unix。
应用软件:如:qq、微软office、Photoshop。
软件提高了人与计算机交流的效率,方便了人与机器的交互。
1.4 人机交互的方式
图形化界面:傻瓜式交互,直观简单、易操作、用户体验好。
dos 命令交互:在控制台,输入指定指令。麻烦、需要记忆一些命令,控制台在Windows中直接在左下输入cmd即可。这种命令式的交互模式对于一个成熟的开发者也是必不可少的技能之一,后面会接触到Linux系统,环境的安装及程序的部署运行离不开交互指令。
2 java简介
起源:java是SUN(斯坦福大学网络公司)1995年推出的一门高级编程语言。java名字是印度尼西亚爪哇岛的英文名称,因盛产咖啡闻名,现在看到的java图标名称因此而来。想了解更多背景知识,可私下了解。java的版本也一直在不断更新,现在已到java11版本。目前用java7和8版本的居多。更多最新版本的新特性,这里不做概述。
2.1java语言特性-跨平台
跨平台:这里也就是说的跨计算机系统,跨平台是软件开发中的一个重要概念,即不依赖操作系统,也不依赖硬件环境。一个操作系统下开发的应用程序,放到另一个操作系统下依然可以运行。
java跨平台:java的跨平台是相对于其他编程语言而言的,通过java语言编写的应用程序在不同的系统上都可以运行。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。如在Windows上编译的c语言程序在Linux下是不能运行的,反之同理。而java语言再不同的平台上运行时不需要重新编译。
其实java跨平台的原理是通过java虚拟机(jvm)实现的。
2.2 java虚拟机(JVM)
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.3 java的三大平台
JavaSE
Java SE(Java Platform,Standard Edition)。Java SE 以前称为J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的Java 应用程序。Java SE 包含了支持Java Web 服务开发的类,并为Java Platform,Enterprise Edition(Java EE)提供基础。
例子:类似QQ、扫雷、飞秋、凌波这样子的桌面应用。
JavaEE
Java EE(JavaPlatform,Enterprise Edition)。这个版本以前称为J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java 应用程序。Java EE 是在JavaSE 的基础上构建的,它提供Web 服务、组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构(service-orientedarchitecture,SOA)和Web2.0 应用程序。
JavaME(本模块不作为学习重点)
Java ME(Java Platform,Micro Edition)。这个版本以前称为J2ME,也叫K-JAVA。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。
3 java环境搭建
前面谈到了那么多,终于等到了最关心的部分了,我们主要介绍一下java环境的搭建过程及运行过程。
3.1 JDK介绍
JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK(软件开发包(缩写:SDK、外语全称:Software Development Kit))。JDK 是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。JDK是学好Java的第一步。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。
3.2 JDK的安装
下载地址:官网下载相应的版本即可;或直接在公众号留下联系方式或邮箱,小编将及时发送过去;下图所示是下载好的java7和8版的Windows64位
安装过程:这里略过;Windows下按提示安装即可。
3.3 JDK目录简介
1. bin目录:存放Java的编译器、解释器等工具(可执行文件)。
2. db目录:JDK7附带的一个轻量级的数据库,名字叫做Derby。
3. include目录:存放的调用系统资源的接口文件。
4. jre目录:存放Java运行环境文件。
5. lib目录:存放Java的类库文件。
6. src.zip文件:JDK提供的类的源代码。
如下图:
3.4 JRE简介
JRE Java Runtime Environment Java运行环境。包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
3.5 环境变量配置
问题:目前在控制台窗口下只能在jdk安装目录的bin目录下才能使用jdk的开发工具在控,如果想制台窗口下想要在任意目录下都可以使用javac与java或者jdk其他的开发工具那应该怎么做呢?
配置path环境变量
右击我的电脑----属性----高级-----环境变量-------找到path 将bin的路径放到path的最前面,别忘加分号。(注:bin的路径用%JAVA_HOME%\bin表示了,%JAVA_HOME%这个表示了jdk的安装目录,下面我们将马上讲到。)
以 Windows10 为例如图:
JAVA_HOME环境的配置
为什么要引出这个java_home呢?有时候我们可能会更换jdk的目录,经常修改path的bin路径可能会改错,并且麻烦。所以就有了配置这个环境变量的方法:
1、 创建一个JAVA_HOME的变量。
2、 JAVA_HOME的值为JDK的安装目录。
3、 配置path路径:%JAVA_HOME%/bin。
以后需要更换JDK的目录时,只需要更换JAVA_HOME的目录即可。
3. classpath 环境变量配置
1. classpath的作用: 作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,一旦配置了classpath路径信息的时候,jvm与java编译器都会根据classpath指定的路径去寻找class文件。
2. 如何设置当前目录(.)
set classpath=.;设置路径与 set classpath=设置路径;.有什么区别?
“.”在前面的时候,java虚拟机会先从当前路径去寻找class文件,然后再到指定的路径去需找。如果”.”在后面,java虚拟机则会先寻找指定好的路径,然后再在当前的路径去寻找。
设置classpath的时候要加上 ; 就会在当前目录下查找。
4.java入门程序
HelloWorld程序
先简单写一个java程序并运行
(注:本代码是输出 HelloWorld!这句话;
class 为java关键字 定义一个类,先记下即可;
{ } 花括号表示范围;
main: 是主函数,程序的入口):
1、打开记事本编写上述代码并保存为HelloWorld.java 源文件;
2、编译源文件:
3、编译后目录下生成一个HelloWorld.class 文件
4、执行编译后的class文件
5、程序输出HelloWorld!这句话!
以上就是一个简单的java执行程序,自己可以动手感受一下,不理解里面的内容不要紧,我们将在后面陆续揭开它们的面纱!
老铁们,感受一波,欢迎评判指正!如有问题请留言!