Day01软件安装规范、Java初识
1. 打字练习
https://dazi.kukuw.com/
2. 安装规范
磁盘分类,方便管理(命名方式尽量望文生义)
安装目录 : 不要使用特殊符号 !@#$%^& *,不要使用汉字,空格等
3. Java安装
3.1 Jdk、JRE介绍
JRE:JRE为Java的运行环境(如果仅仅只是想要运行一个开发好的Java程序,只需要安装JRE即可)
JDK:Java开发工具+JRE(简而言之就是JDK开发完程序后交给JRE运行)
3.2 Jdk、JRE安装
在自己想要安装的磁盘新建Java空文件夹,并且在java文件夹中新建两个新的空白文件夹JDK和JRE用于安装JDK与JRE作为安装目录。
3.3 配置环境变量
右键此电脑选择属性----->高级系统设置高级环境变量在系统变量中新建JAVA_HOME与CLASSPATH两个变量其具体值分别为:
JAVA_HOME: D:\Java\JDK(JDK的安装目录)
CLASSPATH: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
并且在系统环境变量Path中添加如下值:%JAVA_HOME%\bin(仅限win10系统)
4. Java
4.1 概述
1991年,命名OAK,是SUN公司推出,1995开始以java名义推出
Java之父詹姆斯·高斯林
JavaSE(基础,核心,桌面应用(记事本,计算器)),JavaEE(企业版,企业级开发平台(OA系统)),JavaME(微型版,嵌入式应用(电视机,机顶盒))
4.2 特性
四大特性 : 自动垃圾回收机制,面向对象,跨平台,多线程
编译型语言 : 运行之前,先把源文件,通过指定的编译器生成 机器码文件,可以让计算机直接识别
优点 : 只需要编译一次,就可以运行多次,执行效率高
缺点 : 跨平台性能差
解释型语言 : 每次运行之前,都对源文件进行解释,解释为当前操作系统可以识别的语言
优点 : 跨平台较好
缺点 : 每次运行都需要解释,执行效率低
动态语言 : 使用变量的时候,不需要指定类型,类型在赋值的时候确定,而赋值是在运行时
静态语言 : 使用变量的时候,必须先指明类型
强类型语言 : 一旦类型确定,不可以更改,但是可以强制更改
弱类型语言 : 可以根据上下文环境,对类型进行动态更改
而java属于 准动态,强类型,解释型语言,动态主要体现在反射机制
4.3 运行机制
因为JVM扩平台,在各个操作系统中,安装不同的JVM,但是他们有一个共同点,就是都识别class文件,而class文件都是由JVM的编译器编译生成的,所以格式都是一致的,所以 即使在Windows中生成的class文件,到了linux中,只要安装着JVM 就可以执行这个class文件
4.4 开发软件
4.4.1 安装
解压即可
创建工作空间(就是一个文件夹,使用eclipse进行编码,都保存到这个文件夹中)
目录不要使用汉字,不要使用空格和特殊符号
4.4.2 自动构建
保存代码的时候,是否需要自动编译生成class文件
如果打钩就是开启自动构建,只要保存代码就会自动生成class文件
不过 我们每次打开eclipse的时候,都会把工作空间中的java文件重新生成class文件
如果文件过多,可能会浪费一些时间
如果不开启自动构建的情况下,当运行的时候,才会生成class文件,并且运行谁就生成谁
如果有关联关系的话,就会导致出现问题
4.4.3 字符编码
保持编码和解码一致,避免出现乱码问题
4.4.4 字体样式
4.4.5 代码补全以及快捷键设置
其中快捷键可以按照个喜好进行更改。
//快捷键的查看
Ctrl + Shift + L 查看快捷键
//修改快捷键
菜单栏–>Windows——>Preferences——>General–>Keys
修改快捷键需要注意的地方:
Binding: 这个是改操作绑定的快捷键
When: 在什么情况下绑定:Editing Text
Conflicts:快捷键冲突,会把所有冲突相关快捷键列出来,点击想去掉那个快捷键
就进入这个冲突的快捷键界面.点击在Binding框,然后点击上面Unbind Command
然后点击Apply
//1 移动
Ctrl + L 向右移动一位 (Next Column)
Ctrl + N 向左移动一位 (Previous Column)
Ctrl + J 向下一行 (Line Down)
Ctrl + K 向上一行 (Line Up)
Ctrl + A 移动到行尾 (Line End)
Ctrl + I 移动到行首 (Line Start)
//删除剪切复制
Ctrl + D: 剪切整行 (Cut Line)
Ctrl + Y 赋值当前行 (Copy Lines)
//插入
Ctrl + O 插入当前行的下一行 (Insert Line Below Current Line)
Ctrl + Shift + O 插入当前行的上一行 (Insert Line Above Current Line)
//补全
Ctrl + B 单词自动补全 (Word Completion)[Ctrl + Alt + /]
Alt + B 单词建议补全列表 (Content Assist(Word Proposals))
//查找
Ctrl + shift + F (Find and Replace)
//缩进 对齐
Ctrl + f (format) (format source)
//查找替换
Alt + F
// 全选
Ctrl+Shift+A SelectAll
//代码自动生成
Ctrl + Shift + S 自动生成setter和getter (Generate Getters and Setters)
Ctrl + Shift + C 自动生成构造器(Generate Constructor using Fields)
新建类
Ctrl +Shift +N (when editing java source) unbind 需要
MyEclipse/eclipse/EclipseEE 配置
1 //自动补全
菜单栏–>Windows——>Preferences——>Java–>Editor–>Content Asist
在Auto activation triggers for Java后面的文本框里只有一个“.”
改为“.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ”复制进去
2 //修改字体
General–>Appearance–>Colors and fonts–>Basic–>Text Fonts
3// 更改背景主题
菜单栏–>File–>import–>General–>Preference
4 //撤销和反撤销
Ctrl + z undo:撤销
Ctrl + U Redo:反撤销 这里我和设置的复制当前行相冲突
5 //显示行号
代码去最左边,右键:show line numbers
6// 去掉自动上屏(修改插件)
1 先安装PDE
Eclipse的Plug-in Development Environment (PDE)插件网址:
http://www.eclipse.org/pde/
2 下载所有Eclipse源码
3 打开Plug ins view (window->show view->plug ins)
4 找到插件
org.eclipse.jface.text
右键点击,选择import as Source Project,
(上面因为没有源码包,所以全部失效)
5 下载源码包(很麻烦,以后说)
oschina有修改好的包
7 去掉hover提示,悬浮窗
Window–>Preferences–>Java–>Editor–>Hovers–>不勾选Combined hover
// 7.1xml自动补全:
<=:_abcdefghijklmnopqrstuvwxyz
window->Preferences->XML->XML Files->Editor->Content Assist
8 eclipse 汉化包
http://download.eclipse.org/technology/babel/babel_language_packs/R0.12.1/luna/luna.php
donate:捐赠
proposal [英]prəˈpəʊzl [美]prəˈpoʊzl
n. 提议;建议;求婚;〈美〉投标
assist [英]əˈsɪst [美]əˈsɪst
n. 帮助;援助;机器助手;辅助装置
vt. 帮助;援助;帮助某人做某事;搀扶(某人)上下车
vi. 援助;出席;参加
//设置默认浏览器
General->Web Browser(Use External Web browser)
MyEclipse->General->选择浏览器
4.4.6 使用方式
4.4.6.1 创建项目
该弹框是因为创建是JavaSE项目,所以提醒是否跳转到JavaSE视图,yes 就跳转,no就不跳转
可以收到切换,视图不同,对应的快捷方式不同,建议使用Java
4.4.6.2 删除项目
不打钩 工作空间中不会删除,只是eclipse中不再显示而已,这种我们还可以导入 ,继续在eclipse中显示并操作
4.4.6.3 导入项目
4.4.6.4 创建类class
4.4.6.5 运行class
如果有 * 说明没保存,需要先保存在运行,Ctrl+s
或者点击运行按钮
4.5 使用语法和注释
4.5.1 注释
注释就是对内容进行描述或者解释,比如描述这个代码是什么意思,做的什么事之类的
1 时间长了,怕忘记代码是干啥的
2 工作交接的时候,有利于别人更快的上手代码(代码一定要工整,多加注释)
代码写的好看,比正确更重要
4.5.2 关键字
4.5.3 入口程序
Java中 以main 作为程序入口,是固定格式,必须这么写, args 可以随便写
常见错误
没有运行选项
这种都是说明没有main方法
Java中代码严格从上往下从左到右执行,并且每个语句最后都以 ; 分号结尾
4.5.5 注意事项
1 入口方法拼写
2 大小写拼写错误,java中严格区分大小写
3 标点符号,中英文错误,java中 使用英文标点
。。。。。…
;;;;;;;;;;;;;
,,,,,,
‘’‘’‘’’’’’’’’’
“”“”“”””””””
????????
OOOOOO 0000000 OOOOOOOO
llllllllllllll IIIIIIIIIIIIII 111111111
;;;;…阿萨德;;;…asdas;;啊实打实…;;;;;;
4 未保存
Ctrl+s 保存
5 命名错误
命名规则 :
强制规定 : 大小写字母,美元符号$,下划线 _ ,数字 12312 且 数字不能开头,不能使用关键字和保留字
关键字 : java中已经使用了该单词,并且赋予一定的意义
public ,static ,void ,class
保留字 : 目前还没有使用,后续可能会使用
goto
不能只使用关键字和保留字,比如 命名为 class1 可以
非强制 : 望文知义,看到名字就大概知道是什么东西
一般使用驼峰命名法
zhangao —> zhanGao
4.6 数据类型
4.6.1 存储原理
程序 : 一堆命令的集合
程序源代码 : 源码
文件类型 : 文本文件,二进制文件,可执行文件
源文件 就是文本文件
二进制文件 01010100011 给计算机看的
可执行文件 程序就是可执行文件,比如exe
编辑器 : 编写文本文件的工具
编译器 : 把文本文件转换为二进制文件,叫编译
1 数据的存储
数据想要运算,必须先存储
2 存储方式
内存 : 两端无限延伸的线
硬盘 : 螺旋线
光盘 : 同心圆
3 存储单位
Bit : 比特,1bit就是一个电子位,统称位
Byte : 字节 , 1字节= 8bit 8位
Short : 短整型 , 1short= 16bit
Int : 整型 ,1int = 32bit
Long : 长整型 , 1long=64bit
比如 byte , 8位 最大值 就应该是 2^7-1 2的7次方减1 255
但是为了保存负数,最高位为符号位,直接损失一半精度
1 表示 负数, 0 表示正数
1 二进制 00000001
2 二进制 00000010
负数保存补码
-1 二进制 10000001 反码 11111110 补码 (反码+1) 11111111
-2 二进制 10000010 反码 11111101 补码 11111110
4.6.2 进制
二进制 : 010101010 并且 java中没有办法表示二进制
八进制 : 满8进1 , 10 就等于 十进制的 8 ,java中 0开头 比如 010
十进制 : 满10进1 , java中 非0开头, 20 , 324
十六进制 : 满16进1,a表示10,b表示11 , cdef ,f表示15 ,java中 0x开头,比如 0x11
4.6.3 数据类型分类
本质 就是规定占用内存空间的大小,用位和字节表示
引用数据类型
类,数组,接口
基本数据类型
数值型
整数型
byte,short,int,long
浮点型
float,double
布尔型
boolean
字符型
char
Bit : 比特,1bit就是一个电子位,统称位
Byte : 字节 , 1字节= 8bit 8位
Short : 短整型 , 1short= 16bit
Int : 整型 ,1int = 32bit
Long : 长整型 , 1long=64bit
Float : 单浮点 32位
Double : 双浮点 64位
Boolean : 布尔型 ,4位 0001 true, 0000 false
Char : 字符 , 16位 ,
ASCII 码
是字符和整型直接的一个映射关系
以下是数字和字母对于ASCII码值得映射。
0 : 48
1 : 49
A : 65
B : 66
a : 97
b : 98