1.Java语言概述
1.1常用DOS命令
-
d: 切换盘符(切换到d盘,注意:为因为英文状态)
-
dir:列出当前目录下的文件及文件夹
-
md:创建目录
-
rd:删除目录(必须是空目录)
-
cd:进入指定目录
-
cd..:返回上一级目录
-
cd\:退回到根目录
-
del :删除文件
-
exit:退出dos命令行
-
补充:echo javase>1.doc 在当前目录下创建1.doc文件(md命令只能创建目录),内容为javase
-
1.2常用快捷键
-
← →:移动光标
-
↑ ↓:调阅历史操作命令
-
Delete和Backspace:删除字符
1.3Java语言特点
-
面向对象
-
两个基本概念:类、对象
-
三大特性:封装、继承、多态
-
-
健壮性
-
吸收了C/IC++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制(垃圾回收机制)
-
-
跨平台性
-
跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Writeonce , Run Anywhere”
-
原理:只要在需要运行java应用程序的操作系统上,先安装一个Java虚拟机(JVM JavaVirtual Machine)即可。由JVM来负责Java程序在该系统中的运行。不同操作系统的JVM不同
-
1.4Java语言运行机制及运行过程
1.4.1两种核心机制
-
java虚拟机
-
垃圾收集机制
-
在C/C++等语言中,由程序员负责回收无用内存。 Java语言消除了程序员回收无用内存空间的责任:它提供一种系统级线程跟踪存储空间的分配情况。并在JVM空闲时,检查并释放那些可被释放的存储空间。垃圾回收在Java程序运行过程中自动进行,程序员无法精确控制和干预。
-
Java程序还会出现内存泄漏和内存溢出问题吗? Yes!
有时因为代码问题,垃圾处理器不能识别,自动回收内存。
-
1.5java环境搭建
1.5.1JDK、JRE、JVM关系
官方结构关系图
1.5.2JDK、JRE的 安装
-
安装过程略
-
注意:按理说安装了JDK,无需再装JRE,但是在有些电脑上使用elipse是需要一个单独的JRE的
1.5.3JDK目录介绍
-
bin-存放java的开发工具,常用工具如下:
-
java.exe运行时候的工具
-
javac.exe编译时候的工具
-
javadoc.exe生成以网页形式存在的文档时候的工具
-
-
db-java的数据库
-
include-用c语言编译的头文件
-
jre-java运行环境
-
lib-java的库文件(jar包)
-
src.zip-存放java的一些开源代码,常见的类库
1.5.4配置环境变量
-
目的:
如果直接在cmd窗口输入java.exe会报错,因为cmd窗口默认路径与java.exe所在路径不同。
可以先切换到java.exe所在路径,在输入java.exe,即可运行成功。
也可以将其配置到环境变量中的Path变量中去,这样就可以在任意路径运行它了。
Path环境变量:windows系统执行命令时要搜寻的路径。
cmd窗口运行原理:现在当前路径下找有没有该路径,再去Path环境变量中的路径下找有没有该命令。
-
方法1步骤
①此电脑→属性
②高级系统设置→高级→环境变量→Path(两者都可,配置到用户环境变量有时候不好使,建议配置到系统环境变量。这里选择系统环境变量下的Path)
③编辑→新建→将bin目录路径粘贴过来(顺序无所谓,cmd从上往下找)
④测试是否配置成功:在cmd窗口中输入java -version
效果如图,则成功!(注意,测试时要先重启cmd!)
-
方法2步骤
建议使用方法2。因为Tomcat服务器找环境变量时,找的就是JAVA_HOME
①此电脑→属性
②高级系统设置→高级→环境变量(以系统环境变量为例)→新建
效果如图
③新建Path环境变量。与方法1中步骤②和③相同
注意路径改为下图所示:
若步骤②中最终效果JAVA_HOME变量值最后有\
则这里bin前面就不用加\
④测试。同方法一步骤④
1.6开发体验-HelloWorld
1.7注释
1.7.1三种注释方式
-
单行注释
-
编译以后生成的.class结尾的字节码文件中不包含注释掉的信息
-
//注释内容
-
多行注释
-
编译以后生成的.class结尾的字节码文件中不包含注释掉的信息
-
不可以嵌套使用,会报错
-
/* 多行注释 内容 */
-
文档注释(java特有的)
-
文档注释内容可以被JDK提供的工具 javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档。
-
cmd核心代码
javadoc -d mydoc -author -version HelloWorld.java mydoc为自定义的生成的文件夹的名称 HelloWorld.java要生成文档的java文件
java部分
-
/** 文档注释 @author zhy @version v1.0 这是我的第一个java程序 */ public class HelloWorld{ /** 如下方法是main方法,是程序的入口 */ public static void main(String[] args){ System.out.println("Hellow World"); } }
cmd部分
Microsoft Windows [版本 10.0.19044.2130] (c) Microsoft Corporation。保留所有权利。 D:\尚硅谷JavaEE\1Java基础\学习笔记>javac helloworld.java D:\尚硅谷JavaEE\1Java基础\学习笔记>java HelloWorld Hellow World D:\尚硅谷JavaEE\1Java基础\学习笔记>javadoc -d mydoc -author -version HelloWorld.java 正在加载源文件HelloWorld.java... 正在构造 Javadoc 信息... javadoc: 错误 - 找不到可以文档化的公共或受保护的类。 1 个错误
该错误是因为,要生成文档的类必须被public修饰。修改.java文件后,重新构建
D:\尚硅谷JavaEE\1Java基础\学习笔记>javac helloworld.java D:\尚硅谷JavaEE\1Java基础\学习笔记>javadoc -d mydoc -author -version HelloWorld.java 正在加载源文件HelloWorld.java... 正在构造 Javadoc 信息... 标准 Doclet 版本 1.8.0_321 正在构建所有程序包和类的树... 正在生成mydoc\HelloWorld.html... HelloWorld.java:11: 警告: args没有 @param public static void main(String[] args){ ^ 正在生成mydoc\package-frame.html... 正在生成mydoc\package-summary.html... 正在生成mydoc\package-tree.html... 正在生成mydoc\constant-values.html... 正在构建所有程序包和类的索引... 正在生成mydoc\overview-tree.html... 正在生成mydoc\index-all.html... 正在生成mydoc\deprecated-list.html... 正在构建所有类的索引... 正在生成mydoc\allclasses-frame.html... 正在生成mydoc\allclasses-noframe.html... 正在生成mydoc\index.html... 正在生成mydoc\help-doc.html... 1 个警告
在打开HelloWorld.java文件所在目录下会生成mydoc文件夹,打开该文件夹下的idex.html,即为说明文档,效果如图所示:
1.8java的API(类库)文档
1.9第一个java程序总结
1.9.1java程序编写-编译-运行
-
编写:我们将编写的java代码保存在以".java"结尾的源文件中
-
编译:使用javac.exe命令编译我们的java源文件。格式: javac 源文件名.java
-
运行:使用java.exe命解释运行我们的字节码文件。格式:java 类名
1.9.2public类
-
在一个java源文件中可以声明多个class。但是,只能最多有一个类声明为public的
-
而且要求声明为public的类的类名必须与源文件名相同。
1.9.3main方法
程序的入口是main()方法。格式是固定的。
1.9.4输出语句
System.out.println();//先输出后换行 System.out.print();//不换行
1.9.5编译过程
编译以后,会生成一个或多个字节码文件。字节码文件的文件名与java源文件中的类名相同。
运行只能运行包含main方法的.class文件
1.10每日一考
1.JDK,JRE,JVM三者之间的关系,以及JDK、JRE包含的主要结构有哪些
2.为什么要配置path 环境变量?如何配置?
3.常用的几个命令行操作都有哪些?(至少4个)
4.创建一个类,是的运行输出以下效果
5.编译和运行上述代码的指令