147
社区成员
发帖
与我相关
我的任务
分享导语:
经过一个学期的java程序设计基础课程的学习,我在原来已有的基础知识之上,又通过实践,掌握到了不少知识。下面我将以几个模块大概进行我本学期的学习总结。
一,我学到了java基本的分支结构的程序设计:
if (布尔表达式) {
程序代码
}
进阶:
if (布尔表达式) {
程序代码
}else if (布尔表达式){
程序代码
}else{
程序代码
}
我易犯的错误:
switch(表达式) {
case 常量值1 :
语句块1
break;
case 常量值2:
语句块2
break;
…
default :
默认语句块
}
易犯错误:表达式与常量值对应错误
二,我学到了java基本的循环语句的程序设计
while (循环条件) {
循环体
}
易犯错误:
do {
循环体
} while (循环条件);
for (赋初始值; 循环条件;迭代语句) {
语句1;
…
语句 n;
}
易犯错误:
三,我学到了一维数组、二维数组的初步使用
1. 定义数组的语法格式
数据类型[] 数组名;
2. 静态初始化的两种方式
int[] array;
array = new int[]{1,2,3,4,5};
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
int[] array = new int[]{1,2,3,4,5};
int[] array = new int[10]; 代表array数组中有十个未定的int类型的元素
常把10换成n,通过改变n来实现可操作性
习惯于用for循环实现对低维数组的遍历
For的使用模板:
for(int i=0;i<n;i++){
数组[i]
}
//再加一个for可以遍历二维的
public static void main(String[] args) {
for (int i = 0; i < score.length - 1; i++) {
for (int j = 0; j < score.length - 1 - i; j++) {
if (score[j] > score[j + 1]) {
double temp = score[j + 1];
score[j + 1] = score[j];
score[j] = temp;
}
System.out.print(score[j] + " ");
}
for (int j = score.length - 1 - i; j < score.length; j++) {
System.out.print(score[j] + " ");
}
}
思路:不断在不断缩小的区间中找最大的值与第一位交换
(1)封装性:把原来复杂的流程简化成简单的操作,便于我们多次使用
(2)继承性:当我们要不完全重复写一个类时,我们可以直接在调用原来类的基础上再加点属于新类的东西,这样避免了多余的代码,也简化了机器运行的流程
(3)多态性:没啥好说的,这要求我们一定要“找对人干活”
(修饰符)class 类名{
类体
}
(修饰符)数据类型 属性名;
(修饰符)返回数据类型 方法名(参数列表){
方法体
[return+返回的参数]
}
5.this关键字
类在定义成员方法时,局部变量和成员变量可以重名,但此时不能访问成员变量。为避免这种情形,可以使用this关键字,表示当前对象,指向调用的对象本身。
(1)使用this调用类中的属性
this关键字可以明确调用类的成员变量,不会与局部变量名发生冲突。
(2)使用this调用成员方法
this既然可以访问成员变量,那么也可以访问成员方法。
(3)使用this调用构造方法
构造方法是在实例化时被自动调用的,因此不能直接像调用成员方法一样去调用构造方法,但可以使用this([实参列表])的方式调用其他的构造方法。在使用this调用构造方法时,还需注意:在构造方法中,使用 this调用构造方法的语句必须位于首行,且只能出现一次。另外,this调用构造方法时,一定要留一个构造方法作为出口,即至少存在一个构造方法不使用this调用其他构造方法。
6 .super关键字
当子类重写父类方法后,子类对象将无法访问父类被重写的方法。如果在子类中需要访问父类的被重写方法,可以通过super关键字来实现,其语法格式如下:
super.成员变量
super.成员方法([实参列表])
在继承中,实例化子类对象时,首先会调用父类的构造方法,再调用子类的构造方法;当子类继承父类时,并没有继承父类的构造方法,但子类构造方法可以调用父类的构造方法。在一个构造方法中调用另一个重载的构造方法使用this关键字,在子类构造方法中调用父类的构造方法用super关键字,语法格式如下:
super([参数列表])
7.final关键字
在Java中,为了考虑安全因素,要求某些类不允许被继承或不允许被子类修改,这时可以用final关键字修饰。它可用于修饰类、方法和变量,表示“最终”的意思,即用它修饰的类、方法和变量不可改变,具体特点如下:
(1)final修饰的类不能被继承。
(2)final修饰的方法不能被子类重写。
(3)final修饰的变量是常量,初始化后不能再修改。
用法:
(1)修饰类
使用final关键字修饰的类称为最终类,表示不能再被其他的类继承,如Java中的String类。
(2)修饰方法
使用final关键字修饰的方法,称为最终方法,表示子类不能重写此方法。
(3)修饰变量
使用final关键字修饰的变量,称为常量,只能被赋值一次。如果再次对该变量进行赋值,则程序在编译时会报错。
学习感悟:
经过一个学期的对java基础的学习,我感觉我已经可以大概编出一些基本的小算法了,但是也只局限在我所学过的内容中。学程序给我最大的感悟就是,我在遇到不懂的东西的时候,可能会面临这一大片都是知识盲区的情况,这会大大打击我学习的动力,但是我认为我应该迎难而上,不懂的就去搞懂,不要在意到底还有多少不懂的,克服种种困难之前先要克服心中的困难。希望下个学期的学习我可以学到比我现在学到的更加多的东西。