Java 学习笔记Word格式文档下载.docx
- 文档编号:15905699
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:54
- 大小:77.28KB
Java 学习笔记Word格式文档下载.docx
《Java 学习笔记Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《Java 学习笔记Word格式文档下载.docx(54页珍藏版)》请在冰豆网上搜索。
类名规范(首字母大写,如果由多个字母组成,每个单词首字母大写)
一般定义有意义的名称,加强易读性。
{}:
一对大括号类区间。
主函数:
publicstaticvoidmain(Stringargs[])保证类能独立运行,程序的入口。
注释:
//------单行注释
/**/------多行注释
/***/------文档注释(开发者使用)javadoc.exe
注解说明程序,调试程序,一边写代码,一边写注释,方便后期维护。
需求分析设计:
需求思路步骤代码
需求:
定义一个HelloWorld小程序;
思路:
(解决问题的思想,可以不涉及代码)
1.
2.
...
步骤:
1.通过class关键字定义一个类,将代码都编写到该类中;
2.为了保证该类的独立运行,在类中定义一个主函数;
3.保存成一个扩展名为JAVA的文件;
4.在DOS控制台中通过javac工具对java文件进行编译;
5.再通过java命令对生成的class文件进行执行。
一个源文件只能有一个public类;
被public修饰的类存储源文件时源文件名要与类名保持一致,如果一个源文件出现多个被public修饰的类,源文件不确定存储为什么名字。
Day02;
数据类型:
基本数据类型:
(简单数据类型–语言所内置的类型)
布尔型:
Boolean(true/false)*:
纯粹的java中数值不能给Boolean赋值
字符型:
char16bit–0个符号位,全部都是数值位
charc1=‘a’;
//直接指定字面值
charc2=97;
//ASCII
charc3=‘\u4e2d’;
//i18nnative2ascii
charc4=‘\t’;
//转义字符
整数型:
byteshortintlong符号
(1)+数值位(n-1)
8163264
intnum1=25;
//10进制赋值DEC
intnum2=025;
//8进制赋值OCT
intnum3=0x25;
//16进制赋值HEX
intnum4=0b1011;
//2进制赋值JDK7.0BIN
*:
十进制二进制的转换
76=64+8+4=01001100
1248163264128256512102420484096819216384…
*:
long定义结束之后可以加L,超出int范围必须加L.
浮点型:
符号位+幂指位+数值位
float
32(1+8+23)F/f
double
64(1+11+52)D/d
67.25=>
得到符号位:
整数部分:
64+2+1=1000011
小数部分:
0.01
1000011.01=>
科学计数法:
1.00001101*2(6)
0.25*2=0.5;
0.5*2=1.0;
0.0*2=0.0;
幂指位8位:
127+6=01111111+0110=133=10000101
数值位(科学计数法中小数点后面部分):
00001101
01000010100001101000000000000000
IEEE754浮点单精度和双精度的存储规范
计算机当中2.0–1.1等于多少?
为什么?
怎么解决?
引用数据类型:
(自定义类型–自己写的类型Object)
负数的二进制表现形式:
就是负数的绝对值取反+1,负数的最高位都是1.
字符型和整型相加字符型提升为整型再行相加.
三元运算符,可做简易ifelse语句的简化:
变量=(条件表达式)?
表达式1:
表达式2;
因为是一个运算符,所以运算完必须要有一个结果。
进制转换:
二进制=>
十六进制1.最低四位&
152.依次>
>
4位并&
15即可.
八进制2.最低三位&
72.依次>
3位并&
7即可.
运算符:
1.+-*/%
[+:
]1+1什么情况下不等于2?
当字符串String和数值型进行+号连接时,不是代表数学运算,而是追加连接
[*:
]
数值在进行乘法运算时很容易超出数据边界,发生溢出
*:
int数据类型超过2147483746,后面要加L
商品价格7折优惠
intprice=924;
//price=(int)(price*0.7);
price=price*7/10;
[/:
Java当中整数除以整数结果一定为整数
[%:
最终结果的符号位取决于参与运算的第一个数字的符号:
5%2=1;
5%-2=1;
-5%2=-1;
-5%-2=-1;
2.+=-=/=%=
[能够自动保持运算符左侧数据类型不发生任何变化]
intnum=3;
num+=1.5;
3.<
>
<
=>
====
[区别==判断等,=赋值等]
4.&
|&
&
||
[&
逻辑非短路运算符][&
逻辑短路运算符]
[当通过前面的条件能够得出最终结论的时候,短路运算符会舍弃之后没有必要的无用功]
5.++--
[++在后,先取值再计算;
++在前先计算再取值]
6.&
|^~
[按位运算符]
当一个正数%2的n次方数时,将完全等价于&
(这个数2的n次方-1)
%2%4%8%16%32%64……
&
1&
3&
7&
15&
31&
63……
*:
数据结构集合存放数据的容器
HashsetHashmap(mustbeapoweroftwo)=>
必须是2的n次方
(&
分组组数-1)
JoshBlochJava之母
当实现权限控制模块的时候
Unix:
1代表执行权限
2代表写入权限
4代表读取权限
查询某个数中是否有1,2,4….时。
可以用&
相应数值来实现
Java修饰符当中:
public=1static=8publicstatic=1+8=9=staticpublic
^按位异或运算符
如何不借助第三块空间交换两个变量的值:
a=a^b;
b=a^b;
一个数与另一个数异或两次等于它本身
7.<
<
[位移运算符]
*2*4*8*16
<
1<
2<
3<
4
“>
右移,高位补符号位”右移一位表示除2“>
无符号右移,高位补0”;
*:
结合按位运算符和位移运算符能够进行简单的图形图像处理
1st:
如何不借助第三块空间交换两个变量的值
2nd:
计算机如何最高效的求出2的3次方
3rd:
计算144–237之间所有数字累加的和,禁用循环
Day03;
流程控制:
分支:
ifelse[利用其排他特性简化判断条件]
switchcase[注意利用break机制实现相邻分支的代码共享]
while:
先判断条件,只有条件满足才执行循环体。
dowhile:
先执行循环体,再判断条件,条件满足,执行循环体。
break语句:
应用范围:
选择结构和循环结构。
continue语句:
应用于循环结构。
这两个语句离开应用范围,存在是没有意义的。
这个两个语句单独存在下面都不可以有语句,因为执行不到。
continue语句是结束本次循环继续下次循环。
标号的出现,可以让这两个语句作用于指定的范围。
JDK7.0switch语句支持对字符串的判断。
Day04;
数组:
数组的定义方式:
元素类型[]数组名=new元素类型[元素个数或数组长度];
数组常见操作:
遍历获取最值排序(选择/冒泡)折半查找
编译的时候没有开辟数组空间,只有在运行才开辟.
Day05;
面向对象:
1.三个基本特征:
封装,继承,多态
2.类和对象的关系:
类就是对现实生活中事物的描述;
对象就是这类事物实实在在存在的个体。
类是对象的抽象,对象的类的具体。
3.成员变量和局部变量:
成员变量作用于整个类中;
局部变量变量作用于函数中,或者语句中。
成员变量:
存在堆内存中,因为对象的存在,才在内存中存在;
局部变量:
存在栈内存中。
如果局部变量的名字和成员变量的名字相同,则成员变量被隐藏,即这个成员变量在这个方法内暂时失效。
这时如果想在该方法内使用成员变量,必须使用关键字this。
4.匿名对象使用:
方式一:
当对对象的方法只调用一次时,可以用匿名对象来完成,这样写比较简化。
方式二:
可以将匿名对象作为实际参数进行传递。
如果对一个对象进行多个成员调用,必须给这个对象起个名字,即不再使用匿名对象。
5.封装概述:
Encapsulation
用private将不想被外界访问的属性和方法隐藏起来,private私有成员只有在本类中可以使用;
封装对于类的开发者和使用者都有好处:
对于类的开发者:
能够让数据得到保密得到隐藏从而更加安全
对于类的使用者:
能够让使用者将精力全部集中在核心业务逻辑上
类的开发应当高内聚低耦合
内聚:
独立完成功能的能力
耦合:
模块与模块之间的依赖关系,"
耦合"
无处不在
所有的属性应当使用private修饰
并且提供两个public的方法sette
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 学习笔记 学习 笔记