Java学习笔记-Java概述和环境配置
基础常识
软件:一系列按照特定顺序组织的计算机数据 和指令的集合
常见的软件:
- 系统软件:如:DOS,windows,Linux等
- 应用软件:如:扫雷,迅雷,QQ等
软件的出现实现了人与计算机之间的更好的交互
交互方式:
- 图形化界面:这种方式简单直观,使用者易于 接受,容易上手操作
- 命令行方式:需要有一个控制台,输入特定的 指令,让计算机完成一些操作。较为麻烦,需 要记录住一些命令
dos命令行常见的命令
dir: 列出当前目录下的文件以及文件夹md: 创建目录rd: 删除目录cd: 进入指定目录cd..: 退回到上一级目录cd/: 退回到根目录del: 删除文件exit: 退出dos命令行
Java语言概述
是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言
是一种面向Internet的编程语言
随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言
是简单易学,完全面向对象,安全可靠,与平台无关的编程语言
Java语言的三种技术架构
J2EE(Java 2 Platform Enterprise Edition)企业版
是为开发企业环境下的应用程序提供的一套解决方案。 该技术体系中包含的技术如Servlet Jsp等,主要针对于Web应用程序开发J2SE(Java 2 Platform Standard Edition)标准版
是为开发普通桌面和商务应用程序提供的解决方案。 该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。 比如Java版的扫雷J2ME(Java 2 Platform Micro Edition)小型版
是为开发电子消费产品和嵌入式设备提供的解决方案。 该技术体系主要应用于小型电子消费类产品,如手机中的应用程序等
Java5.0版本后,更名为JAVAEE JAVASE JAVAME
Java语言的特点:跨平台性
通过Java语言编写的应用程序在不同的系统平台上都可以运行
原理:
只要在需要运行java应用程序的操作系统上,先安装一个Java虚拟机(JVM Java Virtual Machine)即可
由JVM来负责Java程序在该系统中的运行

因为有了JVM,所以同一个Java程序在三个不同的操作系统中都可以执行。这样就实现了Java程序的跨平台性。也称为Java具有良好的可移植性
Java语言的环境搭建
JDK和JRE
JRE(Java Runtime Environment Java运行环境)
包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可JDK(Java Development Kit Java开发工具包)
JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。其中的开发工具:编译工具(javac.exe),打包工具(jar.exe)等
简单而言:使用JDK开发完成的java程序,交给JRE去运行
JDK安装
JDK 可从oracle下载,也可从sun下载。
建议:安装路径不要有中文或者特殊符号,如空格等
当提示安装 JRE 时,可以选择不安装
JDK目录结构
安装完java以后,产生的相应文件夹,其目录结构解释如下:
bin:存放JDK的各种命令工具,例如javac,java等
db:安装Java DB的路径
include:一些平台特定的头文件
jre:运行java程序所需的JRE环境
lib:存放JDK工具命令的实际执行程序
javafx-src.zip:Java FX所有核心类库源代码
src.zip:Java所有核心类库源代码
README和LICENSE等说明性文档
配置环境变量path
当完成JDK的安装时,java还不可以使用
需要配置环境变量,才可以在任意开启的cmd命令窗口使用
环境变量主要配置的是path
我的电脑–属性–高级–环境变量
变量名输入:
JAVA_HOME
变量值指的是实际的安装路径(比如我的路径为:E:\Java\jdk1.8.0_171)
最后点击确定更改
path
变量名不变,变量值增加为
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
最后点击确定变量名输入:
CLASSPATH
在JDK1.5以后不用配置CLASSPATH
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
最后点击确定检测是否配置成功
任意位置打开cmd
输入:java -version
如果输出版本号,那么代表配置成功

临时配置方式:通过dos命令中set命令完成
set:用于查看本机的所有环境变量的信息
set 变量名:查看具体一个环境变量的值
set 变量名=:清空一个环境变量的值
set 变量名=具体值:给指定变量定义具体值
在原有环境变量值基础上添加新值
- 首先,通过%变量名%操作符获取到原有环境变量的值
- 然后加上新值后在定义给该变量名即可
举例:给path环境变量加入新值
set path=新值;%path%
注意:这种配置方式只在当前dos窗口有效。窗口关闭,配置消失
注释
单行注释://注释
多行注释:/*注释*/
文档注释:/**文档注释*/
文档注释可以调用javadoc生成API文档
javadoc -d apidoc -windowtitle test -doctitle study -header myclass *.java
-d 指定生成的API存放路径
-windowtitle 设置API文档浏览器标题
-doctitle 指定概述页面标题
-header 包含每页的页眉
Javadoc标记:
@auther @version @deprecated @param @return @see @exception @throws
标识符和关键字
分隔符:( ; {} [] () 空格 . )
java语句结束的标志是";",一个语句直到";"才算结束。
{}用于包含java代码的语句块
[]主要用于访问数组元素
()声明,传参,提高优先级,强制转换等
空格用于代码缩进,方便阅读
.一般用于调用成员变量、方法和内部类
标识符:不可使用关键字,数字字母下划线和美元符,不可以数字开头,一般也不用美元符开头
Java程序开发体验
将Java代码编写到扩展名为.java的文件中
通过javac命令对该java文件进行编译
通过java命令对生成的class文件进行运行


编写源代码(保存为Demo.java)
class Demo//定义一个类
{
//主函数
public static void main(String[] args)
{
//输出语句
System.out.println("hello haha");
}
}
- 编译源代码
有了java源文件,将其编译成JVM可以识别的文件
javac Demo.java
- 运行程序
编译源代码以后生成Demo.class字节码文件
使用java.exe运行字节码文件
运行字节码文件不需要添加文件后缀
java Demo
既然class文件(字节码文件)是java的运行文件,可不可以实现, 在任意目录下都可以执行某一目录下的 class文件呢?
- 根据path环境变量的原理,可以定义一个名为classpath环境变 量,将要运行的 class文件所在目录定义在该变量中
例:set classpath=c:\ - classpath变量值是java类文件的目录,先按照配置目录查找
- path变量是windows程序文件的目录。先查找当前目录
JVM查找类文件的顺序:
- 如果没有配置classpath环境变量,JVM只在当前目录下查找要运行的类文件
- 如果配置了classpath环境,JVM会先在classpath环境变量值的目录中查找要运行的类文件
- 值的结尾处如果加上分号,那么JVM在classpath目录下没有找到要指定的类文件,会在当前目录下在查找一次
- 值的结尾出如果没有分号,那么JVM在classpath目录下没有找到要指定的类文件,不会在当前目录下查找,即使当前目 录下有,也不会运行
- 建议:配置classpath环境变量时,值的结尾处不要加分号,如果需要访问当前目录可以用 “.”表示
常见编译错误:
- 源文件名不存在或者写错,或者当前路径错误。
- 类文件名写错,或者类文件不在当前路径下,或者不再classpath指定路径下
Java学习笔记-Java概述和环境配置的更多相关文章
- Java学习笔记【一、环境搭建】
今天把java的学习重新拾起来,一方面是因为公司的项目需要用到大数据方面的东西,需要用java做语言 另一方面是原先使用的C#公司也在慢慢替换为java,为了以后路宽一些吧,技多不压身 此次的学习目标 ...
- [java学习笔记]java语言核心----面向对象之this关键字
一.this关键字 体现:当成员变量和函数的局部变量重名时,可以使用this关键字来区别:在构造函数中调用其它构造函数 原理: 代表的是当前对象. this就是所在函数 ...
- [java学习笔记]java语言核心----面向对象之构造函数
1.构造函数概念 特点: 函数名与类名相同 不用定义返回值类型 没有具体的返回值 作用: 给对象进行初始化 注意: 默认构造函数 多个构造函数是以重载出现的 一个类中如果 ...
- google protobuf学习笔记:windows下环境配置
欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/45371743 protobuf的使用和原理,请查看:http:/ ...
- java学习笔记----java入门
java基础 一.java语言跨平台原理 1.什么是跨平台? 跨平台就是一个软件可以在不同的操作系统中运行,但是不需要对其修改.换句话说,java语言编写的软件在不做修改的情况下就能在不同的系统平台上 ...
- Java学习笔记 -- Java定时调度工具Timer类
1 关于 (时间宝贵的小姐姐请跳过) 本教程是基于Java定时任务调度工具详解之Timer篇的学习笔记. 什么是定时任务调度 基于给定的时间点,给定的时间间隔或者给定的执行次数自动执行的任务. 在Ja ...
- [Java学习笔记] Java异常机制(也许是全网最独特视角)
Java 异常机制(也许是全网最独特视角) 一.Java中的"异常"指什么 什么是异常 一句话简单理解:异常是程序运行中的一些异常或者错误. (纯字面意思) Error类 和 Ex ...
- 我的Java学习笔记-Java面向对象
今天来学习Java的面向对象特性,由于与C#的面向对象类似,不需详细学习 一.Java继承 继承可以使用 extends 和 implements 这两个关键字来实现继承. extends:类的继承是 ...
- Java学习笔记-Java中的常用类
Java中有很多类是很常用的,此处列举System,Runtime,Date,Calendar,Math System System:类中的方法和属性都是静态的 字段摘要 static PrintSt ...
随机推荐
- c语言学习、工作相关必备的常用网站
1.https://zh.cppreference.com/,c.c++参考手册, 2.http://www.cplusplus.com/,在线查看c.c++函数的定义及用法 3.http://c-f ...
- python3爬虫系列19之反爬随机 User-Agent 和 ip代理池的使用
站长资讯平台:python3爬虫系列19之随机User-Agent 和ip代理池的使用我们前面几篇讲了爬虫增速多进程,进程池的用法之类的,爬虫速度加快呢,也会带来一些坏事. 1. 前言比如随着我们爬虫 ...
- 解决selenium和FireFox版本不兼容问题
相信很多同学刚接触selenium时,在Eclipse中打开fireFox浏览器时会报错:org.openqa.selenium.firefox.NotConnectedException: Unab ...
- [Python自学] day-22 (1) (Session、CSRF、中间件)
一.响应函数补充 三种返回响应的方式: return HttpResponse() return render() return redirect() HttpResponse: 除了能够返回字符串, ...
- 长脖子鹿放置【洛谷P5030】二分图最大独立集变形题
题目背景 众周所知,在西洋棋中,我们有城堡.骑士.皇后.主教和长脖子鹿. 题目描述 如图所示,西洋棋的“长脖子鹿”,类似于中国象棋的马,但按照“目”字攻击,且没有中国象棋“别马腿”的规则.(因为长脖子 ...
- focusout([data],fn) 当元素失去焦点时触发 focusout 事件。
focusout([data],fn) 概述 当元素失去焦点时触发 focusout 事件. focusout事件跟blur事件区别在于,他可以在父元素上检测子元素失去焦点的情况.大理石平台怎么样 参 ...
- 002_STM32程序移植之_DHT11
1. 测试环境:STM32C8T6 2. 测试模块:DHT11温湿度模块 3. 测试接口: 1. DHT11温湿度模块接口: DS1302引脚 ---------单片机引脚 VCC---------- ...
- Java BIO、NIO、AIO 原理
先来个例子理解一下概念,以银行取款为例: 同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写). 异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Ja ...
- MySQL数据分析-(5)数据库设计之ER模型
大家好,我是jacky,很高兴跟大家分享本课时的内容,从本节课开始,就开始了我们第二章的学习,第一章我们抛出了若干问题,从第二章开始往后,都是解决问题的一个过程: 第一章的案例中,我们拿手机销售公司举 ...
- Windows系统配置Redis密码
1.首先停止Redis服务,直接关掉Redis或者打开任务管理器查看有没有redis-server进程,有的话选中并结束任务. 2.打开配置文件redis.windows.conf和redis.win ...