1.Java的代码一般分为两大类:一种是结构定义语句;一种是功能语句(功能语句要用分号结尾)。
2.用/* 内容 */注释,内容里面是不能存在/* */的;但是可以存在//;因为这样就不会发生系统不知道哪个*/才是真的结束符。
3.变量使用前必须初始化,使用单引号的作用就是把里面的字符转换成对应的unicode编码并传入程序中供程序使用,因为计算机在执行时都是在用数字来进行的,所以必须把任何东西先转化成计算机能明白的东西,它才能去运行它。;
4.复合语句中定义的变量只在该符合语句中有效如:{
int x=5;
}
System.out.print(x);
这样就出现了错误了,因为两个大挎号就形成了一个复合语句。
5.在服务器系统中如果用命令行窗口执行Java程序,过程中不要选定,否则程序会停住。
6.java中不支持在复合语句中重复定义语句外已经定义过的变量。
7.由于我以前学过C语言,所以对于数据类型与函数都比较了解,所以听起来就像在复习一样,至于类型转化,我是这样理解的:
就像是家里的兄弟姐妹一样:
double 大哥;
float 二哥;
long 三哥;
int 四姐;
char 五弟;
short 六妹;
byte 七弟;
弟弟只能听哥哥的话,也就是隐形类型转换,就是哥哥叫弟弟做事情;
那么弟弟要叫哥哥做事情要怎么办,只能叫比较疼他的爸爸叫哥哥做事情,就是显形类型转换,而这个过程就是弟弟=(爸爸叫哥哥做事情)哥哥;
转化成语句就是
long gege;
int didi=(int)gege;
我的理解是这样,可能有漏洞,但是我觉得挺合理的。所谓的爸爸也就是系统。至于中间的数据的溢出与丢失,要去真正学习各类型的取值范围。
8.函数没什么想法 ,基本上跟书本上说的一样,要真正去理解他,掌握它,只有一个办法,多用它,用多了自然就明白了他的意思了。
9.if-else从句,if如果没有大挎号,后面只能带一个语句,else也是一样。如果if后面带了两句,则else会找不到if匹配就会报错。
10.System.in.read()这是一个输入函数,返回键盘输入的字符所对应的编码。
try
{
System.in.read();
}cotch(exception e)()
11.(1)浮点数在计算机中的表示:用科学技术法
3.5*E+n;n为正的意义为小数点向右移多少位,n为负的意义则反之。如果是二进制形式,
如110*2^n,n的意义与上面的意义一样。
(2)在Java中浮点数占四个字节,而第一个字节就是用来表示n的,后三个字节表示浮点数的有效数位。
(3)浮点数的计算方法为:s·m·2e-150 ,s为符号(就是第31bite是否为零,是为+1,否为-1),m为有效数位,也是从23位到0位所对应的值在进行这样的运算(对应值的十六进制数& 0x7fffff) | 0x800000;e为30为到24的值。
(4)对于浮点数的比较,应该使用区间形式,因为浮点数都是取近似值。
12.Java的内存分为栈内存和堆内存。定义变量时就是取用栈内存。而定义数组和对象则是取用堆内存,堆内存由Java虚拟机的垃圾回收器直接管理,但是只有在当没有引用变量引用其地址时才可能在某个时间里该数据被回收了。
引用变量是定义在栈中的变量,用来引用堆内存定义的数据。
13.整型数组初始化时都为0。声明数组时不允许确定其长度。Java中多维数组是一维数组中的每个元素有引导着另外一个数组。java.util.array.sort(数组名),排序作用。
System.arraycopy(原数组名,目标数组名,复制起始位置,复制个数)。