JAVA基础(第1天java介绍)
JAVA基础(第1天java介绍)
JAVA介绍
:标准版 ————————-桌面开发
:微型版————————-移动电子设备
:企业级应用版——————-企业级开发(企业管理系统等)
JDK工具
jdk是java语言的软件开发工具
bin文件夹:存放java运行的各种可执行文件
jre文件:存放java的运行环境
文件:用于编译本地方法的文件
lib文件:存放java的核心类库
src.zip:该文件是java的核心源码包,它在JDK安装的根目录下。
JVM、JRE和JDK区别什么?
(1)JVM(Java ):java虚拟机,用于保证java的跨平台的特性。java语言跨平台,jvm不是跨平台的。
(2)JRE(Java ):java的运行环境,包括jvm+java的核心类库。
(3)JDK(Java Kit):java的开发工具,包括jre+开发工具。
环境变量path和的作用是什么?
(1)path是配置可执行文件的搜索路径,即扩展名为.exe的程序文件所在的目录,用于指定DOS窗口命令的路径。
(2)是配置class文件所在的目录JAVA基础(第1天java介绍),用于指定类的搜索路径,JVM就是通过他来寻找该类的class类文件的。
java注释
单行注释————————//
多行注释———————–/*>>>>>>>>>>>*/
文档注释———————–/**>>>>>>>>>>*/
基本注意事项
变量定义:在整个程序执行过程中值会发生改变的量
类:具有一组相同属性和方法的集合
变量:变量名由字母、数字,下划线,美元符号构成的,但是不能以数字开头。
其他规范
变量:如果变量名由一个单词组成,首字母要小写,如果变量名同时由多个单词组成,首字母小写java -xms64m,从第二个单词开始java -xms64m,首字母大写。
1.首字母:字母,下划线(_)或符号(不能含有空格,不能以数字开头)
2,其他部分:数字,字母,下划线,符号(不能含有空格,不能以数字开头)
3.变量名不能是Java关键字(即保留字)
4.除了下划线之外,不包括任何其他特殊字符
5.变量必须先声明再使用
6.变量可以先声明 后 赋值
7.同一个作用域中,变量名不能重复(不能声明多次)
属性和方法:首字母小写,第二个单词开始首字母大写。
类名:每个单词首字母大写
常量:全部大写
注意:
包名:全部小写
如何定义包、使用包,以及使用时应该注意哪些事项。
包是Java语言提供的一种区别类名字命名空间的机制,它是类的一种文件组织和管理方式、是一组功能相似或相关的类或接口的集合。Java
提供了访问权限和命名的管理机制,它是Java中很基础却又非常重要的一个概念。
一、包的作用
1 把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。
2 如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不同的,不同的包中的类的名字是可以相同的,当同时调用两个不同包中相同类名的类时,应该加上包名加以区别。因此,包可以避免名字冲突。
3 包也限定了访问权限,拥有包访问权限的类才能访问某个包中的类。
二、包的定义
在一个.java文件中可以一个类和多个非类,如果要将这些类组织在一个包当中,则在.java文件中除注释以外的第一行使用关键字即可实现。当需要调用此包中的类时,就可以使用关键字进行导入。在定义包的时候,应该注意几点:
为了尽量使包名保持唯一性,包名通常采用小写、按倒写互联网址的形式进行定义。如:com.hank.www表示包文件放置的文件路径为com/hank/www。
在进行命名包时,应该避免使用与系统发生冲突的名字,如java.lang、java.swing等。
三、包的使用:
创建类的时候,在java源码第一行使用 关键字标志本类所在的包。如果某个类调用不同包类时,使用 进行导入,如果使用包名.*;表示导入包中所有的类。如果本包中有某个类,而这时必须导入另外一个包相同名字的类时,使用导入时会出现问题,为了避免出现歧义,一般使用全类名访问。
基本数据类型:
基本数据类型(8种):
数值型:
整形:
浮点型:
非数值型:
引用数据类型:数组、接口、类
Java中的4种引用类型
从JDK1.2开始,Java中的引用类型分为四种,分别是:
①强引用()
②软引用()
③弱引用()
④虚引用()
强引用-

这种引用是平时开发中最常用的,例如 = new (“ ”)java -xms64m,当一个实例对象具有强引用时,垃圾回收器不会回收该对象,当内存不足时,宁愿抛出异常也不会通过回收强引用的对象,因为JVM认为强引用的对象是用户正在使用的对象,它无法分辨出到底该回收哪个,强行回收有可能导致系统严重错误。
软引用-
如果一个对象只有软引用,那么只有当内存不足时,JVM才会去回收该对象,其他情况不会回收。软引用可以结合来使用,当由于系统内存不足,导致软引用的对象被回收了,JVM会把这个软引用加入到与之相关联的中。

当系统内存不足时,触发gc,这个Book就会被回收, 将不为null。
弱引用-
只有弱引用的对象,当JVM触发gc时,就会回收该对象。与软引用不同的是,不管是否内存不足,弱引用都会被回收。弱引用可以结合来使用,当由于系统触发gc,导致软引用的对象被回收了,JVM会把这个弱引用加入到与之相关联的中,不过由于垃圾收集器线程的优先级很低,所以弱引用不一定会被很快回收。下面通过一个主动触发gc的例子来验证此结论。


当然这不是每次都能复现,因为我们调用.gc()只是告诉JVM该回收垃圾了,但是它什么时候做还是不一定的,但就我测试来看,只要多写几次.gc(),复现的概率还是很高的。
虚引用-
如果一个对象只有虚引用在引用它,垃圾回收器是可以在任意时候对其进行回收的,虚引用主要用来跟踪对象被垃圾回收器回收的活动,当被回收时,JVM会把这个弱引用加入到与之相关联的中。与软引用和弱引用不同的是,虚引用必须有一个与之关联的,通过.get()得到的值为null,试想一下,如果没有与之关联还有什么存在的价值呢?
类型转换:
java生成文档目录:
方法1:
.java -d A
.java表示java的源代码
-d 是一种格式
A 表示生成文档的信息存放的文件夹
A文件夹可以现在盘下创建,亦可以不用,但必须保证A文件夹和你导出的java源代码必须是在同一个盘下的同一级文件目录下。
方法2:
在->->->->选中你要生成的单个JAVA源代码->选择:这里面的输出文件夹名字和存放的路径不能包含汉字,否则出错。
另外就是如果编译的时候报 运行生成文档时gbk字符问题。
加入编码 – utf-8 – utf-8

Java运算符优先级整理
算术运算符:+ - * / %
关系运算符:> < != == =结果一定是boolean
位运算:& | ~ ^
逻辑运算符:& | ! && | |
条件运算符(三元表达式): ?:
赋值运算符:= += -= /= *=
口诀:括单算关位逻条赋
括号(1级):() (数组去取下标)
单目(2级)(从右向左):
! + – ~ ++ –
算术(3-5级)
* / % —>>>+ – —>>>> >>>
关系(6-7级)
= —>>> == !=
位(8-10级)(特殊的单目)
~—>>>& —>>>^—>>>|
逻辑(11-12级)
!(优先级高于算术运算符)—>>>&&—>>>||
条件运算符
?:
赋值(14级)(从右向左)
= += -= *= /= %= &= |= ^= ~= = >>>=
—>>>用于区别同一类里面的优先等级
其中 1 级最高,14 级最低
注意:
Java 中共有 54 种运算符JAVA基础(第1天java介绍),按优先级可以分为 14 级,详见如下(原来整理的,供为参考):
1. 优先级 操作符 含义 关联性 用法
2. ----------------------------------------------------------------
3. 1 [ ] 数组下标 左 array_name[expr]
4. . 成员选择 左 object.member
5. ( ) 方法参数 左 method_name(expr_list)
6. ( ) 实例构造 左 class_name(expr_list)
7. ++ 后缀自增 左 lvalue++
8. -- 后缀自减 左 lvalue--
9.
10. 2 ++ 前缀自增 右 ++rvalue
11. -- 前缀自减 右 --lvalue
12. ~ 按位取反 右 ~expr
13. ! 逻辑非 右 !expr
14. + 一元加 右 +expr
15. - 一元减 右 -expr
16.

17. 3 ( ) 强制转换 右 (type)expr
18. new 对象实例化 右 new type()
19. new type(expr_list)
20. new type[expr]
21.
22. 4 * 乘 左 expr * expr
23. / 除 左 expr / expr
24. % 求余 左 expr % expr
25.
26. 5 + 加 左 expr + expr
27. - 减 左 expr - expr
28. + 字符串连接 左 strExpr + strExpr
29.
30. 6 >> 有符号右移 左 expr >> distance
31. >>> 无符号右移 左 expr >>> distance
32.
33. 7 < 小于 左 expr < expr
34. <= 小于等于 左 expr <= expr
35. > 大于 左 expr > expr
36. >= 大于等于 左 expr >= expr
37. instanceof 类型比较 左 ref instanceof refType
38. == 等于 左 expr == expr
39. != 不等于 左 expr != expr
40.
41. 8 & 整数按位与 左 integralExpr & integralExpr
42. & 布尔与 左 booleanExpr & booleanExpr
43.
44. 9 ^ 整数按位异或 左 integralExpr ^ integralExpr
45. ^ 布尔异或 左 booleanExpr ^ booleanExpr
46.
47. 10 | 整数按位或 左 integralExpr | integralExpr
48. | 布尔或 左 booleanExpr | booleanExpr
49.
50. 11 && 逻辑与 左 booleanExpr && booleanExpr
51.
52. 12 || 逻辑或 左 booleanExpr || booleanExpr
53.
54. 13 ? : 条件运算 右 booleanExpr ? expr : expr
55.
56. 14 = 赋值 右 lvalue = expr
57. *= 乘赋值 右 lvalue *= expr
58. /= 除赋值 右 lvalue /= expr
59. %= 模赋值 右 lvalue %= expr
60. += 加赋值 右 lvalue += expr
61. += 字符串连接赋值 右 lvalue += expr
62. -= 减赋值 右 lvalue -= expr
63. <<= 左移赋值 右 lvalue <<= expr
64. >>= 有符号右移赋值 右 lvalue >>= expr
65. >>>= 无符号右移赋值 右 lvalue >>>= expr
66. &= 整数按位与赋值 右 lvalue &= expr
67. &= 布尔与赋值 右 lvalue &= expr
68. |= 整数按位或赋值 右 lvalue |= expr
69. |= 布尔或赋值 右 lvalue |= expr
70. ^= 整数按位异或赋值 右 lvalue ^= expr
71. ^= 布尔异或赋值 右 lvalue ^= expr
上表说明
1、 该表中优先级按照从高到低的顺序书写,也就是优先级为1的优先级最高,优先级14的优先级最低。
2、 结合性是指运算符结合的顺序,通常都是从左到右。从右向左的运算符最典型的就是负号,例如3±4,则意义为3加-4,符号首先和运算符右侧的内容结合。
3、 作用是判断对象是否为某个类或接口类型,后续有详细介绍。
4、 注意区分正负号和加减号,以及按位与和逻辑与的区别
其实在实际的开发中,不需要去记忆运算符的优先级别,也不要刻意的使用运算符的优先级别,对于不清楚优先级的地方使用小括号去进行替代,示例代码:
int m = 12;
int n = m
1. 本站所有资源来源于用户上传和网络,如有侵权请联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长处理!
6. 本站不售卖代码,资源标价只是站长收集整理的辛苦费!如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
7. 站长QQ号码 2205675299
资源库 - 资源分享下载网 » JAVA基础(第1天java介绍)
常见问题FAQ
- 关于资源售价和售后服务的说明?
- 代码有没有售后服务和技术支持?
- 有没有搭建服务?
- 链接地址失效了怎么办?
- 关于解压密码

