JAVA简介、方法、面向对象笔记2

byte一个字节,short两个字节,int4个字节,long是8个字节
short
在java中,不论在哪个操作系统中,所有的数据类型大小相同
C语音每个变量在不同的操作系统中,其数据类型字节数大小不相同
八进制除了在一些算法中,其它很少使用


java中只要是看见一个整数,只要后面没有L,就把它当做int 类型来看,
我就想表现为long
如果;long L1=8888888888888L
如果不加上L,会默认为int类型,
float f=12.3f,如果不加上f,12.3会被当做double类型的数据
float和double都有一定误差,有一定的精度
一般很少用float或是double类型的变量作比较




基础数据类浮点型型之间的转换
boolean不可以转换成其它类型的数据类型
整形,字符型,浮点型的数据运算中可以相互转换,按数据类型容量大小
容量指的是数据大小
byte,short,char<int<long<float<double
低一级的数据类型和高一级的数据类型做运算,可以自动转换成高一级的数据类型是
但是byte,short,char之间不会互相转换,他们之间的计算首先会转换成int类型
实数常量默认是double,整数常量默认是int
大类型转小类型需要强制转换
多种数据类型之间进行运算时自动转化成最大类型数据类型




两个byte类型的数据进行运算转换成int类型的数据,如果强制转出byte类型且
超出了byte类型的大小,原本int类型是四个字节,就会咔嚓将其余的三个字节给砍掉
可是double转换成float,难道是也要砍掉四个字节,这是不对的
因为浮点数中有有个小数点,砍掉的话表示就不对了
编译器一看一个整数会自动把它看成int类型,除非加上L
浮点型转化整形,就会自动去掉小数点后面的部分


变量,先申明,所谓申明就是现在内存中申请一小块地方
再赋值,所谓赋值,就是在这一小块内存中填写上一些东西




程序格式:
(比算法还重要,格式非常重要,难道是为了让程序好看一点)
1、大括号对齐(左大括号的所在行要和右大括号对齐,建议用Tab键缩进,
如果想要缩进几行的话,选中那几行,然后再按Tab键)
2、在各个方法块之间尽量空一行
   并排语句之间尽量要加空格
3、类名要和左大括号空一格
4、运算符两侧一般要加空格(for可以不加)
5、成对编程,最好是左大括号和右大括号一起写


按住Shift+Tab键可以往回缩进,我试验了一下,貌似记事本好像不行啊。


程序格式的原则(让别人看着更加清楚,让别人看的更加舒服)




运算符
算术运算符(+-*/%++--)
关系运算符:><=
逻辑运算符!、&、|、^、&&、||
位运算符&、|、^、>>、<<、>>>
赋值运算符=
扩展赋值运算符+=、-=、*=、/=
字符串连接运算符+


++如果放在后面,先赋值
++如果放在


+= -= *= /= %=
字符串连接符+
运算符练测两侧只要有一个是字符串类型,系统会自动将另一个操作数先转换成
字符串在进行连接
当打印时,无论任何类型,都会转换为字符串类型


表达式:
最后能算出一个值来的式子都是表达式
最后这个值的类型就是表达式的类型
表达式的运算顺序:


三目条件运算符:
x?y:z;




语句:
条件语句if语句:
if(i<20){

}else if(i<40){  //此时相当于i>20而小于40;


}  
只有一句语句中需要执行时,可以省略大括号。
所以要省略大括号时,要确定执行体中只有一句语句
建议,对于初学者,不管几句,都把大括号加上


循环语句:
for()


复习一下程序的执行过程,编译原理
.class需要放在我们的java虚拟机中
.exe直接放到我们的操作系统中


不管是.class还是.exe文件,如果你不用他他就是一堆垃圾,不管了
.class文件,执行的话
首先将代码全部装载到内存中
其实操作系统中在内存中也会有一段代码
操作系统会找到你的程序的main方法,开始执行
这个时候往往执行的过程叫做内存的管理


heap动态申请内存用的,所有new出来的东西。
stack存放局部变量
data segment放静态变量和字符串常量
code segment代码区,存放代码用的


真正执行的过程,首先将代码放在code segment这块内存区域中
,在执行的过程会牵扯到另外三个内存区域


要养成随时存盘的好习惯,不然你就没地方哭去




while和do while循环
while中有可能一次都不执行
do while中至少保证程序执行一次
注意,do while中while后的小括号后要有分号;


同一个变量的作用域中,只能申明一次


十进制,如12,-314,0
八进制,以0开头
十六进制,要求以0x或0X开头


java浮点类型常量有两种表示形式,
 十进制数形式,例如:3.14 314.0 .314
 科学记数法形式,如:3.14e2 3.14E2 100E-2


float 放double会出错
int 放long不会出错


一个字节共可以表示2的八次方,是256


质数是只能被1和自身整除
switch中只能放int类型的数
但是可以放char byte short,这些可以转换成int类型的值
default是其它种的情况


小心case穿透
如果没有break,否则会穿到下一个case语句


多个case可以合并在一起


default可以省略,但是不推荐省略


对于一个完成功能和健壮的程序,
完成功能的程序可能会写100行,而一个健壮的程序可能要写300行




方法:
c/c++里面叫函数
方法可以避免我们在main方法中重新被定义


主车间、车头车间、车身车间、底盘车间
main 和其它方法
形式参数(形参)类似于该车间所需要的原料,假设材料以及拿过来
实参,真是的材料
返回值,对于这个车间还要出货,事先约定好的该车间能够产出的东西
一个方法类似于一个车间


实参的数目、数据类型、和次序必须和所调用方法声明的形参所匹配
return语句终止方法的运行并指定要返回的数据
如果方法没返回任何数据,就写个一个return,这个方法到此结束
如果有返回值,那么这个方法也结束了


java中进行函数调用中传递参数是,遵循值传递的原则:
基本类型传递的是该数据值本身。引用类型传递的是对对象的引用,而不是对象本身
真他妈的抽象


在java中其实字符型可以转化成int类型的,它的物理地址中其实对应的是一个
阿斯科码,反正我也不知道该怎么念;


^逻辑异或,只要两侧的变量相同,它就是false,如果说两边一个是true,一个是false
类型的,那就是true




递归:在一个方法中对方法自身的调用
mdthod(5)会调用method(4)方法--method(3)--method(2)--method(1)


此时method(1)有返回值,然后method(2)有返回值,--method(3)
--method(4)--method(5)有返回值


问一下这个程序有多少条执行路径(有多少条分支,有两只分支的话是有两条
路径)





























  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值