Wiesler

导航

day 1 计算机基础, DOS命令, Java的安装,环境配置,常识问题javac java JVM JRE JDK path classpath JAVA_HOME

简介:

day 1 计算机基础, DOS命令,  Java的安装,环境配置,常识问题javac java JVM JRE JDK path classpath JAVA_HOME

计算机基础:

计算机 = 硬件 + 软件

硬件:

CPU:CPU是计算机中的运算核心和控制核心。负责解析计算机的指令,与计算机运算的执行

 

内存:数据与CPU交互的桥梁。CPU并不直接从硬盘中读取数据,速度太慢。程序所需要的数据都会先加载到内存中,CPU是直接读取内存中的数据。

特点是:存取速度快。缺点:断电或程序退出时,内存中的数据都会丢失


硬盘(机械硬盘,固态硬盘):永久性地保存数据,缺点:存取速度慢。

机械硬盘:磁头来寻址,内部的磁片在旋转

固态硬盘:读取速度非常快


软件:

按照一定顺序组织起来的计算机指令和数据的集合

软件 = 指令 + 数据 + 文档(软件使用说明)

分类:

系统软件:Windows,Linux,IOS,Android

应用软件:QQ,Office。应用软件必须要在系统软件的基础上才能使用

新的一些手机厂商,来改Android的UI来搞自己的系统,如小米

软件的本质:解决了人类与计算机的交互效率,比如将之前枯燥的DOS界面变成了GUI图形界面

交互方式:1图形化界面的交互方式

      2 DOS命令的交互方式


打开控制台DOS命令方式:

1 附件>命令提示符

2 直接在本机搜索cmd

常见的DOS命令:

盘符: 进入指定的盘符下。进入盘的时候要用E: 或 F:

dir : 列出当前目录下的文件以及文件夹

md : 创建目录  md a.txt并不是创建txt文件,而是创建了名为a.txt的文件夹

rd : 删除目录  注意:rd不能删除非空的文件夹,而且只能用于删除文件夹。删除文件用del

cd : 进入指定目录

cd.. : 退回到上一级目录

cd \ : 退回到根目录

echo "hello java">a.txt  写入文本到指定文件 如果文件不存在也可以创建a.txt

type a.txt 显示文件内容命令

del : 删除文件 注意:不能删除文件夹,只能删除文件。

1 del a 如果a是文件夹名,会把文件夹里的所有文件都删除,再用rd a 删除这个目录即可

2 可以先进入这个文件夹,用del *.txt  通配符,将这个文件夹内部的所有.txt文件都删除

exit : 推出dos命令行

cls  : 清屏,通知计算机将当前的命令清空

*:  是通配符。

tab  命令补全。

方向键上下是找回上次你写过的命令。

 

如果要进入不同的盘,要先切换盘符再进入别的目录,E:

 

灵活运用通配符:

1 若文件名很长,如aaaaaa...,可以cd a* 可以方便打开。但是如果有很多a开头的文件夹的话,这样只能进入第一个复合条件的文件夹,也就是dir列表里第一个a开头的文件


2 如果知道文件以a开头,可以cd a然后用tab键来筛选文件名, cmd就会补足这个命令。


计算机语言:

机器语言:010101

汇编语言:add 1 1

高级计算机语言:C/C++  Java  PHP Python

Java的历史:

1995年5月23日,JAVA语言诞生    雏形

2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。改名J2SE5.0

2009年04月20日,Oracle以74亿美元收购Sun。取得java的版权。

2011年7月,甲骨文公司发布java7的正式版。

 

Java 证书,SUN 公司,或者oracle证书

Sun Certified Java Programmer (SCJP)

Sun Certified Java Developer (SCJD)

Sun Certified Web Component Developer for Java 2 Plat..

Sun Certified Enterprise Architect for J2EE Technology 架构师,Sun保证年薪,很有价值

Java 重要特性:

跨平台(操作系统)

一次编译,到处运行

C语言写一个.exe文件,只能是Windows的可执行文件,别的操作系统不行.

 

Java写的代码.java字节码文件, 通过javac 编译产生.class文件,再通过虚拟机执行.class文件,变成当前系统可执行的文件,这样一次编译之后,通过虚拟机就可以到处运行了。


虚拟机是不跨平台的。不同的操作系统有不同的虚拟机. 所需相同的资源,在不同的操作系统上所需要的指令是不一样的。


java虚拟机的作用:解释class文件并通知系统要执行哪些操作。


http://www.jianshu.com/p/60d9d7be7d25

使用Intellij IDEA  来编写Java,按照上述配置jdk,创建项目后,运行代码会生成一个out文件夹,里面有经过javac编译后产生的.class文件,所以intelliJ自动把你写的.java文件先编译为.class文件,再运行,显示结果



Java的环境搭建

JRE(Java Runtime Environment) 运行环境, 包括(JVM和核心类库 library)

JDK(Java Development Kit) 开发工具包(包括开发工具和JRE)


JRE = JVM + Java Library

JDK = JRE + Tool  只安装JDK就可以了

JDK简介:

JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK 是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。JDK是学好Java的第一步。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。

JDK的安装

网址:http://www.oracle.com/index.html 、http://www.java.sun.com

 

JDK目录介绍

1.   bin目录:存放Java的开发工具。Java的编译器javac.exe、解释器等工具(可执行文件)java.exe。

javac.exe 启动Java编译器对指定的Java源文件进行编译(将.java文件编译成.class文件)

java.exe 启动Java虚拟机解释并执行.class文件

 

2.   db目录:JDK7附带的一个轻量级的数据库,名字叫做Derby。使用很少

3.   include目录:存放的调用系统资源的接口文件。

4.   jre目录:存放Java运行环境文件。

5.   lib目录:存放Java的类库文件。

6.   src.zip文件:JDK提供的类的源代码。java的源代码公开

安装JDK需要注意的事项:

1.   安装路径中不要包含中文。

2.   安装路径中不要包含空格。

JRE简述

JRE  Java Runtime Environment Java运行环境。包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。        

配置path环境变量

 问题:目前在控制台窗口下只能在jdk安装目录的bin目录下才能使用jdk的开发工具在控,如果想制台窗口下想要在任意目录下都可以使用javac与java或者jdk其他的开发工具那应该怎么做呢?

1.在dos窗口敲上javac

 

我们在随意的一个目录敲javac或者java命令时候,发现dos窗口显示这个不是内部命令,然后我们在上面敲上notepad命令时,打开了一个记事本的程序,但是在当前目录下页没有存在notepad.exe的可执行文件,那么为什么能启动呢?

错误原因:原来在dos窗口上写上一个命令时候,如果在当前目录下找不到指定的可执行文件,那么它会根据path环境变量保存的路径去搜索是否存在这个可执行文件,如果存在则启动该程序,否则就没有这个命令

 

控制台执行文件的原理

在控制台写一个可执行文件的文件名,那么系统首先会在控制台当前路径下去搜索手否存在该文件,如果能找到就执行;如果找不到,那么系统会根据path环境变量保存的路径里去搜索指定的文件,如果能找到就执行

2.解决方法:

1、 进入jdk的安装目录的bin目录。

2、 在dos命令上敲javac。(如果出现了以上的图信息则配置成功)

3.为什么要配置path环境变量

配置path环境变量目的:控制台在任意路径下都能找到java开发工具

因为在jdk下bin文件夹中有很多我们在开发中要使用的工具,如java.exe,javac.exe,jar.ex等,那么我们在使用时,想要在电脑的任意位置下使用这些java开发工具,那么我们就需有把这些工具所在的路径配置到系统的环境变量中,当我们使用时,系统可以帮且我们找到这些命令。

4.如何配置path环境变量

我们将jdk下bin的路径进行复制

在我们电脑-----属性-----高级-----环境变量---------path这项

将bin的路径放置到path的最前边,别忘记加分号. win10的系统中对于管理环境变量界面已经做了优化,似乎不需要;号了

5.JAVA_HOME环境的配置

有时候可能需要更换Jdk的目录(测试java程序对不同版本jdk的兼容性),但是经常修改path的值可能会不小心修改其他的路径,解决方法:

1、 创建一个JAVA_HOME的变量。

2、 JAVA_HOME的值为JDK的安装目录。也就是bin的父目录,这部分是经常变化的目录

3、 配置path路径:%JAVA_HOME%/bin。

以后需要更换JDK的目录时,只需要更换JAVA_HOME的目录即可。

设置临时变量:方便于用早先的Java版本测试一下程序的兼容性

set  变量名=:清空一个环境变量的值。

set  变量名=具体值 :给指定变量定义具体值。

想要在原有环境变量值基础上添加新值呢?

首先,通过%变量名%操作符获取到原有环境变量的值。

然后加上新值后在定义给该变量名即可

举例:给path环境变量加入新值

set  path=新值;%path%

注意:这种配置方式只在当前dos窗口有效。窗口关闭,配置消失。 

 

第一个Java程序

1 新建一个txt文件,把后缀拓展名改成.java

2 java 代码全部都是写在类上面的

使用关键字class 类名{}来定义类

class Demo {
   /*类的范围*/
}

现在写好的是Java的源文件,.java文件。需要用javac编译器来编译这个文件

一个Hello World

class Hello {
   public static void main(String[] args) {
       System.out.print("Hello World");
   }
}

主方法的写法是固定的public static void main(String[] args) {} 程序的入口处

JAVA程序入门

Hello Word程序入门

1.       打开一个记事本在记事本里面写上class  类名{}

2.       一个类缺少主函数不能独立运行。

3.       可以独立运行了,但是没有效果。输出语句。

HelloWord 例子剖析:

                class java关键字,用于什么一个类、

            {} : 花括号表示范围。

                main : 是主函数的如果(固定写法)。

helloworld的小细节

1.  缺少main方法

出现提示:缺少一个名称为main的方法。

2.  源文件中的大小写要注意。初学者请牢记,第一个hello例子中

只有String和System中两个字符是大写的,其他的都小写。

 

3.   配置path和classpath时,里面的路径是所有查找的目标的父目录,                  

而不是目标自己。也就是说配置到某个路径,在其下能看到目标文件即可。不要直接把路径写死到目标文件上

4.  A.java.txt

            文本文件默认是txt结尾的,注意要把隐藏已知文件类型扩展名去掉。

5.  Java的代码是严格区分大小写

只有类名Demo,String和System中三个个首字母是大写的。

6.  path

看path环境变量配置 ,里面的路径是所有查找的目标的父目录,而不是目标自己。

也就是说这个路径里要能找得到javac.exe和java.exe,所以路径要包括bin目录

7.  写错类名, 源文件名不存在或者写错,或者当前路径错误。

类文件名写错,或者类文件不在当前路径下,或者不在classpath指定  路径下。

8.  javac 生成的.class 文件的名称取决于类名跟.java名没有关系。

比如我们的文件为demo1.java 里面定义了class Demo {} 那么编译javac demo1.java之后生成的是Demo.class而不是demo1.class, 这时候再去执行java demo1是找不到这个.class文件的。 

classpath环境变量

如果class文件再F盘,但现在cmd控制台在E盘也想运行F盘的class文件,解决办法:设置classpath环境变量信息。启动Java虚拟机时,Java虚拟机就会根据classpath环境变量所保存的路径信息下去寻找对应的class文件. 用set设置,也是一个临时环境变量

1.  classpath的作用: 作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,一旦配置了classpath路径信息的时候,jvm与java编译器都会根据classpath指定的路径去寻找class文件。

设置分号和无分号的区别:

2分号可以理解为当前路径

  1. 无分号:JVM仅会在classpath所保存的路径下搜索对应的class文件,而不会在cmd控制台当前路径下搜索
  2. 有分号:JVM会在classpath路径下和cmd当前路径下找class文件
  •     set classpath = F:\;  分号可以在环境变量中想象为当前路径。先在classpath中找也就是F盘,找不到再去cmd当前路径找
  •     set classpath = ;F:\  现在cmd当前路径下找,找到就运行,否则再去classpath设置的路径中去找
  •     set classpath =        什么都不写就表示清空

不建议在环境变量中配置成永久的classpath。从JDK5.0开始,SUN也不建议配置classpath

如果一旦配置了classpath,而class文件却不在对应的classpath路径中,就会找不到

set classpath = F:\  在F里找不到就会报错

如果set classpath = F:\;  也会有问题,如果F:\和当前目录都有同名的.class文件,那么就会先执行F:\里的.class文件,也会造成很大的困扰。

JDK5.0之前,JVM是因为找不到核心类库所以配置classpath,但5.0后,JVM能自动找到

 

配置path的作用:方便让控制台在任何路径下都能找到java 的开发工具

配置JAVA_HOME:为了不经常修改path,存放可以变动的部分的路径

配置classpath的作用:设置了class文件的路径信息


javac.exe Java的编译工具. javac 启动Java编译器,对指定的Java源文件进行编译

java.exe   Java的虚拟机     java 启动Java虚拟机,解释并执行对应的.class文件

main 方法是程序的主入口,代码是从这里开始的。

特点是:在类中使用,写法固定。如果一个类需要独立运行的时候,就需要这个main方法

 

...................................

posted on 2016-08-06 02:47  Wiesler  阅读(118)  评论(0)    收藏  举报