day01
1.1程序员最重要的是什么
- 身体【重要】
- 程序员从业角度
- Java程序员
- 服务端处理数据
- 后端程序员
- 数据结构与算法
- 逻辑思维
- 数据库
- crud(增、删、改、查)
- 分类
- 关系型数据库
- mysql
- oracle
- sql server
- 非关系型数据库
- mongoDB
- redis
- 关系型数据库
- 前端程序员
- 页面设计(H5+C3)
- 主流技术
- VUE
- bootStrap【界面框架】
- element-UI【vue框架】
- Java程序员
1.2目前大部分软件公司
- 面向业务的开发
- 角色
- 甲方:花钱
- 乙方:提供服务
- 功能做好(业务)
1.3jdk 安装
安装步骤:
-
下载JDK 免安装
-
解压JDK
-
配置环境
-
JAVA_HOME
# JDK的安装目录
-
CLASSPATH
.;%Java_Home%\bin;%Java_Home%\lib\dt.jar;%Java_Home%\lib\tools.jar
-
path
%JAVA_HOME%\bin
-
解释:
-
jdk (Java Development Kit) java 开发工具包
-
提供给Java开发人员使用,包含了Java的开发工具,包括了jre。无需在独立安装jre
-
开发工具:
- 编译工具 Javac
- 运行工具 java
- 打包工具 jar
-
JRE(Java Runtime Environment) Java运行环境
如果要运行开发好的Java程序,必须要有jre环境
-
JVM(Java Virtual Machine) Java虚拟机
-
Java程序所需的核心库
-
包含关系
Jdk>jre>jvm
-
Java语言的机制和特点
-
Java语言特点
-
面向对象
基本概念:
-
类(人)
-
对象(张三)
对象是类的具体实现
三大特性:封装、继承、多态
-
-
健壮性
- 移除c++的指针、内存申请、释放等部分,由jdk统一封装起来。
- 在核心库中,有大量的Exception类,用于表示不同的异常情况
-
跨平台性
一次编写,在不同系统平台上均可运行(如:开发代码在win上编写,部署环境则在Linux中)
原因:在不同的操作系统中,安装不同版本的jvm
-
Java核心机制
-
Java虚拟机
JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器
不同的平台有不同的虚拟机
Java虚拟机机制屏蔽了底层运行平台的差别
用户-》字节码文件-》jvm-》操作系统-》硬件
-
垃圾回收机制
-
垃圾:不用被使用到的内存空间
-
c++程序员负责手动回收无用内存
-
Java程序员不需要手动回收。
-
1.4基础知识
-
软件开发
- 系统软件
- 应用软件
-
人机交互方式
-
图形化界面
-
命令行方式
-
常用命令
-
dir
列出当前目录下的文件和文件夹
-
md
创建文件夹
-
rd
删除文件夹
-
cd
进入命令
-
cd …
返回上一级目录
-
cd\
返回到根目录
-
del
删除命令
-
exit
退出命令
-
cls
清空界面
-
-
-
1.5 记事本编写代码
操作流程:
-
先通过记事本软件编写代码并修改文件后缀(.txt->.java)
public class Test{ public static void main(String[] args){ System.out.println("Hello word!!!"); } }
-
打开命令行操纵界面
- 进入Java文件目录
- 通过Javac命令编译文件(生成.class文件)【c】compile 编译(通过Javac命令编译文件时 必须要有后缀【.java】即Test.java)
- 通过Java命令运行Java文件(可以省略后缀)
1.6编译运行
- 编程语言分为:
- 编译型语言
- c、c++
- 解释型语言
- JavaScript、Python
- 二者均备
- Java
- 编译型语言
1.7 注释
-
单行注释
//单行注释
-
多行注释
/* * *多行注释 */
-
文档注释
/*** * * */
类 / 方法的上面
可以通过命令 对某个类
1.8 API
Java API (Application Programs Interface)应用程序编程接口,是由Java提供的基本编程接口
1.9 关键字
预设在Java中的单词,均为小写,不能用作命名
abstract | assert | boolean | break | byte |
---|---|---|---|---|
case | catch | char | class | const |
continue | default | do | double | else |
enum | extends | final | finally | float |
for | goto | if | implements | import |
instanceof | int | interface | long | native |
new | package | private | protected | public |
return | strictfp | short | static | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
1.10 标识符
就是Java中的类名、方法名、变量名等。严格区分大小写
-
解释
Java所有的组成部分都是需要名字,类名、变量名以及方法名都被称为标识符。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DQddjukc-1626344598843)(https://i.loli.net/2021/07/15/fwe2qIj8E9ScOhP.jpg)]
- 标识符注意点:
- 所有标识符都应该以字母、数字、美元符或下划线组成,但不能以数字开头
- 不能使用关键字作为标识符(类名、方法名、变量名…)
- 标识符大小写敏感(Abc != abc)
- 可以使用中文命名标志符,但是不建议这样做,同时不建议使用拼音
1.11命名规范
-
包名
多字母组成的时候,全小写
-
类名、接口名
首字母大写的驼峰命名【例如:UserLoginController】
-
变量名、方法名
首字母小写的驼峰命名
-
常量
所有的字母都是大写,多个字母用下划线隔开
例如:PI
public static final double PI = 3.141592653589793D;
-
变量
概念
- 内存中的一个存储区域
- Java中的变量必须先定义后使用
- 数据类型 变量名 = 常量值;
- 该区域的数据可以在同一类型内不断变化。
1.12 程序的执行过程
硬盘
内存
将保存在硬盘中的数据加载到内存中-》将代码加载到内存中并寻找主方法-》内存中有:
-
栈(先进后出)
给方法开辟的内存空间,局部变量、对象声明的引用
-
【拓展知识】队列(先进先出)
-
堆
new 出来的类或者数组的实例对象,包括成员变量
-
静态区
static修饰的变量
-
方法区
字符串常量
1.13 变量的数据类型分类
Java的数据类型分为两大类
-
基本类型(primitive type)
-
数值类型
-
整数类型
- byte : 占一个字节,范围: -128~127
- short : 占两个字节,范围 :-32768~32767
- int : 占四个字节,范围:-2147483648-2147483647(Java中默认类型)
- long : 占八个字节,范围:-9223372036854775808-9223372036854775807(需要表示的话 则需要在数值后加L)
-
浮点类型
- float:占四个字节(使用的话 需要在数值后加F)
- double:占八个字节(默认数据类型)
-
字符类型
-
char:占两个字节
-
转义字符
转义字符 含义 \n 换行符 \t 制表符 \r 回车符 \’ 单引号 \" 双引号 \b 退表符 \\ 一个\ -
使用Unicode值表示字符型常量·\u000a·表示‘\n’
-
-
-
布尔类型
- boolean:占1位,只有true或false两种值(因为Java最小单位为字节,故占一个字节)
什么是字节【拓展】
-
位(bit):是计算机内部数据存储的最小单位,11001100是一个八位二进制数。
-
字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示。
1B(byte:字节) = 8bit(位)
-
字符:是指计算机中使用的字母、数字、字(中文)和符号
-
-
引用类型(reference type)
- 类(class)
- 接口(interface)
- 数组([])
【拓展】
-
技术就是为了更好的开发功能
-
从应用的角度的出发
-
程序员
- 初级程序员-》注重【业务】
- 中级程序员-》注重【业务】
- 高级程序员-》注重【技术】
-
linux
- 严格意义上说不是一个系统而是一个内核
- 同等条件下结构越简单越不容易坏
-
java是纯面向对象语言