1增强for循环
1.1格式
int[] a =new int[10];
for (int i : a) {
System.out.println(i);
}
for(int i:a)
a是待遍历的数组名 ,i是新定义的变量
1.2注意事项
for循环增强只适合遍历数组,不能添加其他操作
2.可变参数
2.1定义
在定义方法时,会遇到传入参数个数不确定的情况,这时我们要用到可变参数
2.2格式
static void text(int... a){
//Demo
}
数据类型 … 变量名
调用格式:
text(1,2);
text();//支持零个参数
3 冒泡排序
3.1代码思想
第一个数(i)和下一个数(i+1)比较,如果(i>i+1),将索引位为i和i+1的对调
3.2 代码实现
int[] arr={5, 4, 2, 1, 3};
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 : arr) {
System.out.print(i+" ");
}
4.面向对象思想
4.1与结构化的区别
面向过程:强调步骤。
面向对象:强调对象,这里的对象就是洗衣机。
4.2特点
面向对象思想是一种更符合我们思考习惯的思想,它可以将复杂的事情简单化,并将我们从执行者变成了指挥者。 面向对象的语言中,包含了三大基本特征,即封装、继承和多态。
5.类和对象
5.1类
是一组相关属性和行为的集合。可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该 类事物。
5.2对象
是一类事物的具体体现
5.3区别与关系
- 类是对一类事物的描述,是抽象的。
- 对象是一类事物的实例,是具体的。
- 类是对象的模板,对象是类的实体。
5.4类的定义
public class ClassName {
//成员变量
//成员方法
}
5.5对象的使用
创建对象:
类名 对象名 = new 类名();
使用对象访问类中的成员:
对象名.成员变量;
对象名.成员方法();
6.局部变量与成员变量
6.1区别
区别:
- 在类中的位置不同
- 成员变量:在类中方法外
- 局部变量:在方法中或方法上(形参)
- 作用范围不同
- 成员变量:类中
- 局部变量:本方法中
- 初始值不同:
- 成员变量:默认值
- 局部变量:必须先定义,赋值,最后使用
- 在内存中的位置不同
- 成员变量:堆内存
- 局部变量:栈内存
- 生命周期不同:
- 成员变量:随着对象的创建而存在,随着对象的消失而消失
- 局部变量:随着方法的调用而存在,方法调用完毕后消失
7封装
7.1 概念
面向对象编程语言是对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界无法直接操作和修改。 封装可以被认为是一个保护屏障,防止该类的代码和数据被其他类随意访问。要访问该类的数据,必须通过指定的 方式。适当的封装可以让代码更容易理解与维护,也加强了代码的安全性。
将属性隐藏起来,若需要访问某个属性,提供公共方法对其访问。
7.2 步骤
1.使用private关键字来修饰成员变量。
2.对需要访问的成员变量 提供对应的一对 getXxx 方法 、 setXxx 方法。
7.3 private关键字
1.private是一个权限修饰符,代表最小权限。
2.可以修饰成员变量和成员方法。
3.被private修饰后的成员变量和成员方法,只在本类中才能访问。
7.3.1 使用格式
public class Student {
private String name;
private int age;
}
public class Student {
private String name;
private int age;
public void setName(String n) {
name = n;
}
public String getName() {
return name;
}
7.4 this关键字
this代表所在类的当前对象的引用(地址值),即对象自己的引用。
7.5 构造方法
7.5.1 格式
修饰符 构造方法名(参数列表){
// 方法体
}
7.5.2 注意事项
- 如果你不提供构造方法,系统会给出无参数构造方法。
- 如果你提供了构造方法,系统将不再提供无参数构造方法。
- 构造方法是可以重载的,既可以定义参数,也可以不定义参数。