1、今日任务
- JAVA SE-韩顺平视频教程–30p以上(今天得50p以上因为是基础)
- 计算机基础八股记忆总结
- 刷题(两题)可以先用python
1、SSM
ssm->Spring(轻量级的文本开发框架)/SpringMVC(分层的web开发框架)/MyBatis(持久化框架)
2、什么是程序
程序:计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合
3、java之父gosling
4、1995年java第一个版本发布
5、java技术体系平台
- Java SE标准版(支持面向桌面级应用的Java平台,提供了完整的Java核心API)
- Java EE企业版(是为开发企业环境下的应用程序提供的一套解决方案,主要针对于Web应用程序开发)
- Java Me小型版(支持Java程序运行在移动终端上的平台,对Java API 有所精简,并加入了针对移动终端的支持)
6、Java重要特点
- Java语言是面向对象的(oop)
- Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证
- Java语言是跨平台性的。(即一个编译好的.class文件可以在多个系统下运行)
- Java语言是解释型的
解释性语言:Javascript,PHP,java 编译性语言:c/c++
区别是:解释型语言,编译后的代码,不能直接被机器执行,需要解释器来执行,编译性语言,编译后的代码,可以直接被机器执行,c/c++
7、Java运行机制及运行过程
- Java核心机制-Java虚拟机[JVM java virtual machine]
- JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器、包含在JDK中
- 对于不同的平台,有不同的虚拟机
- Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
8、什么是JDK,JRE
- JDK基本介绍
- JDK的全称(Java Development Kit Java开发工具包)JDK = JRE + java的开发工具[java,javac,javadoc,javap等]
- JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用单独安装JRE了
- JRE基本介绍
- JRE(Java Runtime Environment Java 运行环境)JRE = JVM + Java的核心类库[类]
- 包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机只需要安装JRE即可
- JDK、JRE和JVM的包含关系
- JDK = JRE + 开发工具集 (例如Javac,Java编译工具等)
- JRE = JVM + Java SE 标准类库(Java核心类库)
- 如果只想运行开发好的.class文件 只需要JRE
9、配置环境变量path
- 配置环境变量path的步骤
- 我的电脑–属性–高级系统设置–环境变量
- 增加JAVA_HOME环境变量,指向jdk的安装目录
- 编辑path环境变量,增加%JAVA_HOME%\bin
- 打开DOS命令行,任意目录下敲入javac/java,如果出现javac的参数信息,配置成功
- 用户变量和系统变量差不多只不过前者只适用于当前用户,后者适用于全部用户
10、Java快速入门
//这是java快速入门,演示java的开发步骤
//对代码的相关说明
//1、public class Hello 表示Hello是一个类,是一个public的类(公有)
//2、Hello{}表示一个类的开始和结束
//3、public static void main(String[] args) 表示一个主方法,即我们程序的入口
//4、main(){}表示方法的开始和结束
//5、System.out.println("hello,world~");表示输出"hello,world"到屏幕上
//6、; 表示语句结束
public class Hello {
//编写一个main方法
public static void main(String[] args) {
System.out.println("亦向枫 is studying java!");
}
}
文件有中文时,如何处理
在文件->设置文件编码->GBK 需要重新保存即可
运行就是将对应的.class文件(字节码文件)装载到对应的虚拟机上运行(.java文件就是源文件)
什么是编译:
1、有了java文件,通过编译器将其编译成JVM可以识别的字节码文件
2、在该源文件目录下,通过javac编译工具对Hello.java文件进行编译。本质就是将.class装载到JVM机执行
3、如果程序没有错误,没有任何提示,但在当前目录下会出现一个Hello.class文件,该文件称为字节码文件,也是可以执行的java的程序
11、Java开发注意事项和细节说明
- java源文件以.java为拓展名。源文件的基本组成部分是类(class),如本类中的Hello类
- Java应用程序的执行入口是main()方法。它有固定的书写格式:public static void mian (String[] args) {…}
- java语言严格区分大小写。
- Java方法由一条条语句构成,每个语句以";"结束
- 大括号都是成对出现的,缺一不可。[习惯,先写{}再写代码]
- 一个源文件中最多只能有一个public类,其他类的个数不限。(编译后,每一个类,都对应一个.class)
- 如果源文件中包含一个public类,则文件名必须按该类名命名
- 一个源文件中最多只能有一个public类。其他类的个数不限,也可以将main方法写在非public类中,然后指定运行非public类,这样入口方法就是非public的main方法
12、Java转义字符
- \t:一个制表位,实现对齐的功能
- \n:换行符
- \ \ :一个\
- \ ":一个“
- \ ‘ :一个’
- \ r :一个回车 System.out.println(“亦向枫\r加油”);
//演示转义字符的使用
public class ChangeChar {
//编写一个main方法
public static void main(String[] args) {
System.out.println("亦向枫\t刘妍汐");
System.out.println("亦向枫\n刘妍汐");
System.out.println("亦向枫\\刘妍汐");
System.out.println("亦向枫\"刘妍汐\"");
System.out.println("亦向枫\'刘妍汐\'");
System.out.println("亦向枫加油\r刘妍汐");
//解读
//1、输出:亦向枫
//2、\r表示回车
//光标回到最前面并开始打印,结果为:刘妍汐加油
System.out.println("亦向枫加油\r\n刘妍汐加油");
}
}
结果为:
亦向枫 刘妍汐
亦向枫
刘妍汐
亦向枫\刘妍汐
亦向枫"刘妍汐"
亦向枫'刘妍汐'
刘妍汐加油
亦向枫加油
刘妍汐加油
练习:
要求:请使用一句输出语句,达到输入如下图像的效果
public class ChangeChar {
//编写一个main方法
public static void main(String[] args) {
System.out.println("书名\t作者\t价格\t销量\n三国\t罗贯中\t120\t1000");
}
}
13、初学Java易犯错误
- 找不到文件(解决方法:源文件名不存在或者写错,或者当前路径错误)
- 主类名和文件名不一致(解决办法:声明为public的主类应与文件名一致,否则编译失败)
- 缺少分号(解决方法:编译失败,注意错误出现的行数,再到源代码中指定位置改错)
14、Java中的注释类型
- 单行注释(//注释文字)
- 多行注释(/* 注释文字 */)
- 文档注释
使用细节:
- 被注释的文字不会被JVM(Java虚拟机)解释执行
- 多行注释里面不允许有多行注释嵌套
文档注释:注释内容可以被JDK提供的工具javadoc工具所解析,生成一套以网页形式体现的该程序的说明文档的文档注释
Javadoc -d 文件夹名 -xx -yy 源文件名
javadoc 标签
javadoc 工具软件识别以下标签:
标签 | 描述 | 示例 |
---|---|---|
@author | 标识一个类的作者 | @author description |
@deprecated | 指名一个过期的类或成员 | @deprecated description |
{@docRoot} | 指明当前文档根目录的路径 | Directory Path |
@exception | 标志一个类抛出的异常 | @exception exception-name explanatio |
{@inheritDoc} | 从直接父类继承的注释 | Inherits a comment from the immediate surperclass. |
{@link} | 插入一个到另一个主题的链接 | {@link name text} |
{@linkplain} | 插入一个到另一个主题的链接,但是该链接显示纯文本字体 | Inserts an in-line link to another topic. |
@param | 说明一个方法的参数 | @param parameter-name explanation |
@return | 说明返回值类型 | @return explanation |
@see | 指定一个到另一个主题的链接 | @see anchor |
@serial | 说明一个序列化属性 | @serial description |
@serialData | 说明通过writeObject( ) 和 writeExternal( )方法写的数据 | @serialData description |
@serialField | 说明一个ObjectStreamField组件 | @serialField name type description |
@since | 标记当引入一个特定的变化时 | @since release |
@throws | 和 @exception标签一样. | The @throws tag has the same meaning as the @exception tag. |
{@value} | 显示常量的值,该常量必须是static属性。 | Displays the value of a constant, which must be a static field. |
@version | 指定类的版本 | @version info |
15、Java代码规范
- 类、方法的注释,要以javadoc的方式来写。
- 非Java Doc的注释,往往是给代码的维护者看的,着重告诉读者为什么这样写,如何修改,注意什么问题等
- 使用tab操作,实现缩进,默认整体向右边移动,用shift+tab整体向左移
- 运算符和 = 两边习惯性各加一个空格。比如:2 + 5 * 4 + 345 - 89
- 源文件使用utf-8编码
- 行宽度不要超过80个字符
- 代码编写次行风格和行尾风格
2、今日总结
- 任务总结
- 刷题一道但是等于没刷都没有总结也没有多看看
- Java基础学习看视频做笔记学习到不到30p进度太慢了
- 面试题晚上才准备看
- 明日规划
- Java基础学习看视频做笔记—30p及以上
- 刷题至少一道并做好总结
- 面试题至少一道或者是一篇面试题博客(做好笔记)