day09 文字笔记
回顾:
1、方法的签名
2、方法的重载
发生在同一个类中,方法名相同,参数列表不同
编译器在编译时会根据方法的签名自动绑定调用的方法
3、构造方法:
给成员变量进行赋初始值
与类同名,没有返回值类型
在创建对象的时候自动被调用
若自己不写,则默认一个无参构造,若自己写了则不再默认提供
可以重载
4、this:
this.成员变量名----访问成员变量
成员变量与局部变量重名时,若想访问成员变量,this.不能省略
this.方法名()--------调用方法
this()------------------调用构造方法
5、null
正课:
1、引用类型数组:
//声明一个int型数组arr,包含10个元素,每个元素都是int类型,默认值都是0
int[] arr = new int[10];
//声明一个student型数组stus,包含10个元素,每个元素都是student类型,默认值null
student [] stus = new student[10];
Bomb [] bs = new Bomb[20];
Observesubmarine[] oses = new Observesubmarine[50];
区别:1)给元素赋值得先new;2)访问对象得打.
int[] arr = new int[10];
arr[0] = 100;
方式1) Student stus = new Student[3];//创建student数组对象
stus[0] = new Student(“zs”,25,“LF”);//创建Student对象
stus[1] = new Student(“ls”,24,“JMS”);
stus[2] = new Student(“ww”,18,“LF”);
System.out.println(stus[0].name);//输出第一个学生的名字
stus[1].age = 26;//修改第二个学生的年龄为26
stus[2].sayHi();//第三个学生给大家问好
方式2)
for( int i = 0;i<stus.length;i++){
System.out.println(stus[i].name);
}
2、继承:
生活中的继承:
1)继承财产
钱不用自己挣,自己也能花
2)继承皇位:
江山不用自己打,自己也能坐
软件中的继承:代码不用自己写,也可以用
继承的作用:
1)代码复用
2)通过extends来实现继承
3)超类/父类:派生类共有的属性和行为
4)派生类/子类:派生类独有的属性与行为
5)派生类可以访问派生类和超类的,超类只能访问超类
6)一个超类可以有多个派生类,一个派生类只能有一个超类------单一继承
7)具有传递性
3、super:关键词,指代当前对象的超类对象
super.成员变量名----------访问成员变量
super.方法名--------------调用超类的方法
java规定:构造派生类之前必须要构造超类
在派生类的构造方法中并没有调用超类的构造方法,则默认super()调用超类的无参构造方法
在派生类的构造方法中若调用超类的的构造方法,则不再默认提供
注意:
super()调用超类构造方法的时候必须要位于派生类构造方法的第一行
超类中的构造方法不是被继承的,而是被派生类通过super调用的