Java 学习总结(一)
1. 概述
1.1 dos命令行--常见的命令
l dir : 列出当前目录下的文件以及文件夹
l md : 创建目录
l rd : 删除目录
l cd : 进入指定目录
l cd.. : 退回到上一级目录
l cd/ : 退回到根目录
l del : 删除文件
l exit : 推出dos命令行
l echo XXX> filename.txt 将内容输出到当前目录下的一个文件内
l del:删除文件
l C: 切换到制定的盘符(例如D:切换到d盘)
1.2 Java语言的三中技术架构
1.2.1 J2SE(Java 2 Platform Standard Edition)标准版
是为开发普通桌面和商务应用程序提供的解决方案。
该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。
1.2.2 J2EE(Java 2 Platform Enterprise Edition)企业版
是为开发企业环境下的应用程序提供的一套解决方案。
该技术体系中包含的技术如Servlet Jsp等,主要针对于Web应用程序开发。
1.2.3 J2ME(Java 2 Platform Micro Edition)小型版
是为开发电子消费产品和嵌入式设备提供的解决方案。
该技术体系主要应用于小型电子消费类产品,如手机中的应用程序等。
1.3 Java 语言环境搭建
1.3.1 什么是JRE,JDK?
l JRE(Java Runtime Environment Java运行环境)
包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类 库等,如果想要运行一个开发好的 Java程序,计算机中只需要安装JRE 即可。
l JDK(Java Development Kit Java开发工具包)
JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包 括了 JRE。所以安装了JDK,就不用在单独安装JRE了。 其中的开发工具:编译工具(javac.exe) 打包工具(jar.exe)等
1.3.2 配置环境变量
当前执行的程序在当前目录下如果不存在,windows系统 会在系统中已有的一个名为path的环境变量指定的目录中查找。如果 还没有找到,就出现“不是可运行的应用程序或批处理问卷”的错误提示。
根据windows系统在查找可执行程序的原理, 可以将 java工具所在路径定义到path环境变量 中,让系统帮我们去找运行执行的程序。
具体步骤如下:
我的电脑--属性--高级--环境变量
编辑path环境变量,在变量值开始处加上java工具所在目录(例:C:\Program Files (x86)\Java\jre6\bin),后面用 “ ; ”和其他值分隔开即可。
临时配置方式:通过dos命令中set命令完成
• set :用于查看本机的所有环境变量的信息。
• set 变量名:查看具体一个环境变量的值。
• set 变量名=:清空一个环境变量的值。
• set 变量名=具体值:给指定变量定义具体值。
想要在原有环境变量值基础上添加新值呢?
• 首先,通过%变量名%操作符获取到原有环境变量的值。
• 然后加上新值后在定义给该变量名即可
• 举例:给path环境变量加入新值
• set path=新值;%path%
注意:这种配置方式只在当前dos窗口有效。窗口关闭,配置消失。
为了不因为jdk的目录或者目录名称的改变,而不断更改path的 值,而导致对 path变量值的误操作,可以通过以下技巧完成。
• 新创建一个环境变量JAVA_HOME 记录住jdk的目录。
• 在path中通过%%动态的获取JAVA_HOME的值即可。
• JAVA_HOME=F:\jdk1.6.0_01
• path=%JAVA_HOME%\bin;%path%
• %path%:动态获取path环境变量的值。
• %JAVA_HOME%:动态获取名称为JAVA_HOME环境变量的值
既然class文件(字节码文件)是java的运行文件,可不可以实现, 在任意目录下都可以执行某一目录下的 class文件呢?
根据path环境变量的原理,可以定义一个名为classpath环境变 量,将要运行的 class文件所在目录定义在该变量中。
例:set classpath=c:\
classpath变量值是java类文件的目录
path变量是windows程序文件的目录
JVM查找类文件的顺序:
• 如果没有配置classpath环境变量,JVM只在当前目录下查找要运 行的类文件。
• 如果配置了classpath环境,JVM会先在classpath环境变量值的 目录中查找要运行的类文件。
• 值的结尾处如果加上分号,那么JVM在classpath目录下没有 找到要指定的类文件,会在当前目录下在查找一次。
• 值的结尾出如果没有分号,那么JVM在classpath目录下没有 找到要指定的类文件,不会在当前目录下查找,即使当前目 录下有,也不会运行。
• 建议:配置classpath环境变量时,值的结尾处不要加分 号,如果需要访问当前目录可以用 “.”表示。
完整的路径设置如下:
set JAVA_HOME=C:\jdk1.5.0_06
set PATH=%JAVA_HOME%\bin;%PATH%
set CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
1.3.3 Java编程体验
1. 将Java代码编写到扩展名为.java的文件中。
2. 通过javac命令对该java文件进行编译。
3. 通过java命令对生成的class文件进行运行。
流程图如下:
示例代码:
/**
Author:HXF
Created
Date: 2015-05-31
Description:
Hello world!
*/
class
HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello
World!");
}
}
Java 学习总结(一)的更多相关文章
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- 分享篇——我的Java学习路线
虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- Java学习心得之 HttpClient的GET和POST请求
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 HttpClient的GET和POST请求 1. 前言2. GET请求3 ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
- 0025 Java学习笔记-面向对象-final修饰符、不可变类
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
随机推荐
- JDK注解替代Hibernate的Entity映射
1.在entity(实体类)模块中使用注解 1_1.注解的位置出现在 [类定义的前面] 和 [属性的get方法前面] [属性的get方法前面] Java代码: package app.entity; ...
- div水平居中与垂直居中的方法【摘自美浩工作室官方博客 】
大家往往在写页面中会遇到不固定宽和高的div如果水平和垂直都居中呢?在写css的时候经常遇到的一个问题,当div没有固定的宽度或者高度的时候,如何才能让div水平或者垂直居中显示.如果div有固定宽度 ...
- Svn与Git的一些区别(转载)
把第一条理解到位思想到位了做起来才会有的放矢,其他几条都是用的时候才能体会到 1) 最核心的区别Git是分布式的,而Svn不是分布的.能理解这点,上手会很容易,声明一点Git并不是目前唯一的分布式版本 ...
- easyui-textbox 和 easyui-validatebox 设置值和获取值
表单作如下定义:该input使用easyui的"easyui-textbox" <input id="addSnumber" style="wi ...
- ORM原型概念
ORM[Object-Relation-Mapping]对象关系映射. 这个名词已经出来好几年了.已经不陌生. 以前在项目中针对相对复杂业务逻辑时一般采用领域模型驱动方式进行业务概述,分析和建模. ...
- 对比Linux系统和Windows系统哪个更好
最近半年来,我一直在读一本叫做<Linux就该这么学>的Linux教材,确实让我进步的很快,也慢慢的让Linux系统走入了我的知识认知中,那么学习前我们来对比下Windows和Linux的 ...
- BestCoder Round #40
T1:Tom and pape (hdu 5224) 题目大意: 给出一个矩形面积N,求周长的最小值.(长&&宽&&面积都是正整数) N<=109 题解: 没啥好 ...
- excel列递增方法技巧
最近处理世界买家网100多万的数据,需要用到excel来对数据进行处理,其中有一项是对数据做一个排序,以方便数据导入时来对应唯一的id编号,之前都是 几万,最多也是30来万的数据,所以列递增就直接用鼠 ...
- JavaScript基础--内部类(九)
js的内部类javascript 中本身提供一些,可以直接使用的类,这种类就是内部类,主要有:ObjectArrayMathBooleanStringRegExpDateNumber 1.内部类分类从 ...
- C语言修炼-第2天
从昨天被打击到下定决心以来,还是觉得学习代码是能让自己真正觉得充实的事情.其实潜意识里一直是这样的不是吗?从开始选择工科就没有后悔过,更不应该现在就放弃,其实自己的缺点本来就是不够扎实,给自己150天 ...