1、冒泡排序
与C++的冒泡排序思想一致,比较相邻的前后二个数据,如果前面数据大于后面的数据,就将二个数据交换。
如该数组的长度是5,则需4轮遍历:
第一轮遍历:4次交换次数;第二轮遍历:3次交换次数; 第三轮遍历:2次交换次数;第四轮遍历:1次交换次数
排序结束
public class sort {
public static void main(String[] args) {
int[] arr = new int[] {12,2,84,65,-51,57,85,11,54,-12};
int temp = 0;
for(int i = 0;i < arr.length - 1;i++) {
for(int j = 0;j < arr.length - 1 - i;j++) {
if(arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;}
}
}
for(int i = 0;i < arr.length;i++) {
System.out.print(arr[i] + " ");}
}
}
可以进行优化的地方:
第一次遍历完成后最大的元素放在了正确的位置, 后边的遍历就可以不用与最后一位比较,即每次遍历,后几位已排好就不必比较了。
2、类与对象
(1)对象:是系统中用来描述客观事物的一个实体,它是用来构成系统的一个基本单位。对象由一组属性和一组行为构成。
属性:用来描述对象静态特征的数据项。
行为:用来描述对象动态特征的操作序列。
一个“学生”对象的例子:
属性:学号:01 姓名:张三 年龄:18 专业:计算机
行为:修改学号、姓名、年龄、专业等等
(2)类:“类”是一组具有相同属性和行为的对象的抽象
(3)类与对象的关系:
- 类是对一类事物的描述,是抽象的。
- 对象是一类事物的实例,是具体的。
- 类是对象的模板,对象是类的实体。
3、封装
(1)封装步骤:
- 使用 private 关键字来修饰成员变量。
- 对需要访问的成员变量,提供对应的一对 getXxx 方法 、 setXxx 方法
(2)封装操作:private
private 数据类型 变量名 ;
4、继承
(1)继承:就是子类继承父类的属性和行为,使得子类对象具有与父类相同的属性、相同的行为,子类可以直接访问父类中的非私有的属性和行为。
(2)继承格式:extends
class 父类 {
...
}
class 子类 extends 父类 {
...
}
5、多态
(1)多态:是指同一行为,具有多个不同表现形式。例:小猫、小狗和大象,跑起来是不一样的;昆虫、鸟类和飞机,飞起来也是不一样的。
(2)前提:
- 继承或者实现【二选一】
- 方法的重写【意义体现:不重写,无意义】
- 父类引用指向子类对象【格式体现】
(3)一个理解多态的简单例子:http://t.csdn.cn/bGiJO



