1.常见的dos命令

盘符: 进入指定的盘符下。

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

md : 创建目录

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

cd : 进入指定目录

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

cd \ : 退回到根目录

echo "hello java">a.txt  写入文本到指定文件 

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

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

exit : 推出dos命令行

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

*:  是通配符。

tab  命令补全。

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

2. 跨平台

即不依赖于操作系统,也不信赖硬件环境。一个操作系统下开发的应用,放到另一个操作系统下依然可以运行。Java的跨平台是通过Java虚拟机(JVM)来实现的。

3. Java虚拟机(JVM:Java Virtual Machine)

jvm在整个jdk中处于最底层,负责于操作系统的交互,用来屏蔽操作系统环境,提供一个完整的java运行环境,因此也就虚拟计算机。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解释器程序的平台下运行。

4.JDK目录介绍

  1. bin目录:存放Java的编译器、解释器等工具(可执行文件)。
  2. db目录:JDK7附带的一个轻量级的数据库,名字叫做Derby。
  3. include目录:存放的调用系统资源的接口文件。
  4. jre目录:存放Java运行环境文件。
  5. lib目录:存放Java的类库文件。
  6. src.zip文件:JDK提供的类的源代码。

安装JDK需要注意的事项:1、安装路径中不要包含中文。2、安装路径中不要包含空格。

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

JRE = JVM + 核心类库

JDK = JRE + java开发工具(Java编译器等)

5.配置path环境变量

编译的过程中面临的问题:每次编译的时候都需要写上java源文件的完整路径()。 烦!

解决方案: 如果可以在任意的路径下都可以找到java的开发工具,则该问题就解决了。

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

5.1.在dos窗口敲上javac

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

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

5.2.解决方法:

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

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

5.3 为什么要配置path环境变量: 在任意的路径下都可以找到java的开发工具

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

6 .classpath环境变量: 设置了class文件的路径信息。

6.1. classpath的引入:

编译好的Hello.class文件在F盘,当前路径在E盘,直接输入命令

Java Hello运行class文件时,报错,找不到类。。。。

6.2解决:

既然class文件(字节码文件)是java的运行文件,可不可以实现,在任意目录下都可以执行某一目录下的class文件呢?根据path环境变量的原理,可以定义一个名为classpath环境变量,将要运行的class文件所在目录定义在该变量中。例如set classpath=F:\ 但是这设置的是临时变量。如何能一劳永逸呢?设置classpath环境变量

要使用已经编写好的类,前提当然是能够找到它们了。(1)当没有设置classpath环境变量的时候,启动jvm(java虚拟机)的时候,那么java虚拟机就会在当前路径下寻找对应的class文件。(2)设置了classpath环境变量的时候,jvm就会根据classpath环境变量所保存路径信息下去寻找对应的class文件。

设置classpath环境变量信息的有分号与没有分号 的区别:分号相当于当前路径。1. 如果配置classpath环境变量信息没有加上分号,那么JVM仅会在classpath所保存的路径下去搜索对应的class文件,不会在当前路径下去搜索了。2. 如果配置classpath环境变量信息加上分号,那么JVM除了会在classpath所保存的路径下去搜索对应 的class文件之外,如果能找到对应的class文件.那么就马上指定对应的class文件,否则还会去 当前路径下去搜索。

7.Java是编译型语言还是解释型语言?

编译型语言:源程序经过编译之后,生成系统可直接运行的二进制文件的语言.

解释型语言:把做好的源程序翻译一句,然后执行一句,直至结束!

个人认为,java是解释型的语言,因为虽然java也需要编译,编译成.class文件,

但是并不是机器可以识别的语言,而是字节码,最终还是需要 jvm的解释,才能在各个平台执行,这同时也是java跨平台的原因。所以可是说java即是编译型的,也是解释型.

8.JVM是以什么形式存在的,是包含在jdk中吗?他的文件叫什么名字?

在jdk里面,是javaw.exe,因为每次eclipse启动,都有javaw.exe这个进程.Jvm是java程序运行的环境,但是他同时一个操作系统的一个应用程序一个进程,因此他也有自己的运行的生命周期,也有自己的代码和数据空间.操作系统装入jvm是通过jdk中java.exe来完成,通过下面4步来完成jvm环境. 1.创建jvm装载环境和配置 ;  2.装载jvm.dll ;  3.初始化jvm.dll并挂界到JNIENV(JNI调用接口)实例;  4.调用JNIEnv实例装载并处理class类。

01 java开发前小知识的更多相关文章

  1. java开发必学知识:动态代理

    目录 1. 引言 2. 代理模式及静态代理 2.1 代理模式说明 2.2 静态代理 2.3 静态代理局限性 3. 动态代理 3.1 JAVA反射机制 3.2 JDK动态代理 3.2.1 JDK动态代理 ...

  2. iOS APP开发的小知识(分享)

          亿合科技小编发现从2007年第一款智能手机横空出世,由此开启了人们的移动智能时代.我们从一开始对APP的陌生,到现在的爱不释手,可见APP开发的出现对我们的生活改变有多巨大.而iOS AP ...

  3. 01.Java 开发简单的计算器

    难度为一般,适合具有 Java 基础和 Swing 组件编程知识的用户学习一. 实验介绍1.1 实验内容本次实验利用Java开发一个可以进行简单的四则运算的图形化计算器,会使用到 Java Swing ...

  4. <Win10开发>一些小知识。

    这篇文章分享一下UWP开发的一些零散的小知识. 1.设置应用的最小尺寸 主要用在PC上,UWA在PC可以被鼠标随意摆弄,可大可小,界面的响应式设计是一大特点.不过有些时候还是要考虑,我们的App界面元 ...

  5. java开发-前后端分离

    众所周知,做java开发是后端的开发,我们时常与前端打交道,但更加注重后端代码的实现,前台的页面都是由前端开发人员做的,那么,是怎么做到前后端分离的呢? 首先,是后端的开发, 在mapper层:Stu ...

  6. java开发前的配置

    JAVA语言是1995年由Sun公司退出的一门高级编程语言,在2009年4月20被ORACLE公司收购 看看java体系图

  7. 关于java的一些小知识(课程作业01)

    1,在java源代码中加空格注释不会影响程序的编译速度. 2,一个java类文件中真的只能有一个公有类吗? 如果只在第一个public类里面定义实体,或者两个都不定义并没有报错且程序可以运行.每个编译 ...

  8. Java开发培训基础知识解析之反射机制

    Java是老牌编程语言,是当前应用最广泛的编程语言之一.想要学习Java你就一定要掌握Java基础知识,而反射对于初学Java的人来说绝对是非常重要的知识点.什么是反射?如何理解反射机制?如何使用反射 ...

  9. ArcGIS Engine开发前基础知识(1)

    ArcGIS二次开发是当前gis领域的一项重要必不可少的技能.下面介绍它的基本功能 一.ArcGIS Engine功能 在使用之前首先安装和部署arcgis sdk,(在这里不在赘述相关知识)可以实现 ...

随机推荐

  1. 最新版CentOS6.5上安装部署ASP.NET MVC4和WebApi

    最新版CentOS6.5上安装部署ASP.NET MVC4和WebApi 使用Jexus5.8.1独立版 http://www.linuxdot.net/ ps:该“独立版”支持64位的CentOS ...

  2. 一个简单的Linq to TreeNode

    最近两天写单元测试,碰到需要验证一个树是否是期望的,但是树这个结构要验证起来还真是有点烦... 我的树大概是这样的: class TreeNode<T> { ]; public TreeN ...

  3. 【Beta版本】七天冲刺——日志集合贴

    No Bug 031402401鲍亮 031402402曹鑫杰 031402403常松 031402412林淋 031402418汪培侨 031402426许秋鑫 Day1 Day2 Day3 Day ...

  4. spring的AOP

    最近公司项目中需要添加一个日志记录功能,就是可以清楚的看到谁在什么时间做了什么事情,因为项目已经运行很长时间,这个最初没有开来进来,所以就用spring的面向切面编程来实现这个功能.在做的时候对spr ...

  5. springMVC Aspect AOP 接口耗时统计

    在接口开发中,我们通常需要统计接口耗时,为后续接口性能做统计.在springMVC中可以用它的aop来记录日志. 1.在spring配置文件中开启AOP <!--*************** ...

  6. 软媒魔方 v6.2.1.0 绿色纯净版及经典版

    软媒魔方,最好用的 Windows 系统增强软件!从最早的优化大师发展为一款系统超级增强套装,自动化.智能化解决各种电脑问题.软媒魔方,全新一代Windows系统增强辅助工具,智能+专业双操控模式,系 ...

  7. 在canvas中使用html元素

    让div悬浮于canvas之上   使用z-index控制层及顺序 慕课网canvas demo <div id="canvas-wrapper"> <canva ...

  8. Bzoj1597 [Usaco2008 Mar]土地购买

    Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 4005  Solved: 1460 Description 农夫John准备扩大他的农场,他正在考虑N ...

  9. React Native 开发之 (01) 配置开发环境

    一 React Native React Native 是由Facebook发布的开源框架,着力于提高多平台开发的开发效率 —— 仅需学习一次,编写任何平台.(Learn once, write an ...

  10. Day4-python基础之函数

    本次学习内容: 字典查询快的原因 字符编码 函数定义 局部变量.全局变量 返回值 嵌套函数 递归(二分查找) 三元运算 map lamba 函数式编程 高阶函数 内置函数 字典查询快的原因: 字典占用 ...