个人心得
首先,很高兴能加入未来小组这个充满学习氛围的地方。在小组学习的这十天以来,我也收获到了不少知识。对我来说,最重要的一点是,通过十天的学习,让我真正意思到了编程不是简简单单的“照着代码敲一遍”,关键在于你能不能自己一个人写出来。在学习了Java后,我深刻的意识到了编程语言的严谨性,每一句代码都有它存在的价值和作用。跟着视频博主学习时,看他们写起来那么轻松,可是一到自己独立完成一个完整的代码编写时,才意思到编程不是想像中那样简单。自己的思路每次都不全面,编写的代码也没有博主的简洁。并且有时对于稍微复杂一点的题目,在看了博主的讲解之后,自己操作起来也还是有些难度,可能一个下午就只能搞懂一道题。但这些阻碍更能推进我向前进步。当我看到自己写代码时,又比上次多走了一步,比上次少了一个错误时,我就更有学习的动力了。尤其是在代码报错之后,自己根据报错提示来改写代码,看着错误一个个减少,就感觉很有成就感。
学习总结
1.JDK,JRE,JVM
JDK:是给开发者提供的开发工具箱,编译,调试程序
JRE:用来运行Java程序的
JVM:Java程序真正运行的地方,Java虚拟机
JDK和JRE中都包含JVM
2. Java程序的运行机制
先编译、后解释执行,核心分两大阶段:编译期(生成平台无关的字节码)和 运行期(由 JVM 逐平台解释 / 优化执行)
3.数据类型
基本数据类型
引用数据类型:除了上面的其他所有类型
传递基本数据类型时,传递的是真实的数据,形参的改变,不影响实际参数的值
传递引用数据类型时,传递的是地址值,形参的改变,影响实际参数的值
4.常量变量
常量:一旦赋值就不可再改变的量。
变量:Java 中用于存储数据的命名内存空间。在程序运行过程中,它的值可以被多次修改。
注意:变量在使用的时候,一定要表明它是什么类型。
5.表达式与运算符的优先级
运算符:对字面量或变量进行操作的符号
表达式;用运算符把字面量或者变量连接起来,符合Java语法的式子。
优先级:byte<short<int<long<float<double
6.顺序结构和分支结构
7.循环结构
for循环(最常用,知道循环次数)
for(初始化表达式; 条件判断语句; 条件控制语句){ //循环体; }while循环(可适用于循环次数不确定的情况)
先判断,后执行
初始化语句; while(条件判断语句){ // 循环体; //条件控制语句;`
do-while循环(不常用)
先执行,后判断
初始化语句; do{ //循环体; //条件控制语句; }while(条件判断语句);8.数组
介绍:数组是一种容器,可以用来储存同种数据类型的多个值
数组的静态初始化格式:数据类型[] 数组名=new 数据类型[]{元素1,元素2......}
简化格式:数据类型[] 数组名={元素1,元素2......}
数组的动态初始化格式:数据类型[] 数组名=new 数据类型[数据长度];
数组的索引:通过编号快速定位和访问数组中的某个具体元素
格式:int i =arr[] 。 []中从0开始,对应数组中第一个元素
数组的遍历:把数组里的每一个元素依次取出来
方式如下
int[] arr={元素1,元素2,......}; for(i=0;i<arr.length;i++){ System.out.println(arr[i]); }9.方法
什么是方法:方法(method)是程序中最小的执行单元
什么时候用方法:重复的代码,具有独立功能的代码可以抽取到方法中
方法的好处:*可以提高代码的复用性
*可以提高代码的可维护性
方法定义和调用:
public static 返回值类型 方法名 (参数) { 方法体; return 返回值; }赋值调用:数据类型 变量名=方法名(实参);
注意:方法在调用时,实参和形参的类型和数量一定要一一对应
易错总结
在学习Java的这十天里,我自己也写了很多代码,踩过不少的坑,有些已经被填上了,而有些
还在改正。
1.保存:刚开时的时候,写完代码总是想不起来保存,等到编译的时候发现文件里的字符为0,现在已经不会忘记保存了。
2.类名:在复制上一个代码的文档来写下一个代码时,总是忘记改类名,这个目前还在改正阶段
3.符号:*刚开始时,不知道什么时候要加“ ;”导致漏加
*在进行定义数组时,总是忘记数据类型后面加“ [] ”,直接加数组名,导致代码报错
*有时会打错[]和{}这两个符号
4.单词:*在编写过程中会出现单词拼错,使变量前后不统一而报错
*有几次总是弄错大写的I和小写的l
5.除了这些之外,还有其他因为知识掌握不牢固而导致的错误。如在变量中同个数据类型,只用写一次数据类型就可以(int i=0,j=10),而我却写了两次,导致编译器不知道是想重新声明还是写错而报错
其它
在刚开始的时候,还有一个困扰我的是,我的Java不能打印中文,每次打印中文都会报错,如图
我跟着博主的讲解进行的各种设置,但就是不能打印中文,然后我用手机上的AI工具帮我解决问题,它说在我编译时把javac 类名.java 改成javac -encoding GBK 类名.java 。这样确实解决了问题,我的Java能打印中文了,但每次都输javac -encoding GBK 类名.java有点麻烦。直到有一次我发现在编写Java的上面有一个编码的选项,把以ANSI格式编码改成以UTF-8无BOM格式编码就可以了。
结尾
初入Java不是结束,而是我迈入编程大门的开始。编程学习不是一下就能学会的,接下来我会继续巩固Java基础,每天坚持写代码,坚持总结所学知识。在学习的过程中慢慢体会编程的魅力。