【多易32期大数据班】预习08
it吧
全部回复
仅看楼主
level 1
这家伙BB 楼主
匿名对象
没有变量名的对象
特点
1.匿名对象如果不给变量赋值 只能使用一次
2.匿名对象可以作为方法的参数和返回值
ArrayList<Person> list = new ArrayList<Person>();
list.add(new Person());
继承
概念1:当定义一个类时,发现已有类与要定义的类相似,并且 要定义的类属于已有类的一种
此时可以将 要定义的类定义为已有类的子类
概念2:多个类有共性内容,可以将共性内容向上抽取,抽取到一个新的类中,新的类与多个类形成的关系
继承的好处
1.继承后子类自动拥有父类所有可继承的属性和行为 提高了代码的复用性
2.让类与类之间产生了关系 是多态的前提条件
继承的格式
public class 子类 extends 父类{
}
方法重写
子类觉得父类不够强大,可以按照自身的逻辑重新定义这个方法 叫做方法重写 方法复写 方法覆盖
如果父类的方法是抽象的 要求子类必须重写
重写父类抽象方法 也叫做 实现父类的抽象方法
方法重写的注意事项
1.可以使用@Override来验证是否是方法重写
2.子类方法的访问权限 必须 大于等于父类方法的访问权限
3.方法名和参数列表必须相同 返回值类型 也应该相同
但是特殊情况 基本类型必须相同 引用类型时 子类方法的返回值类型 可以是父类方法的返回值类型 的子类
继承的特点
1.java只允许类与类之间是单继承 不允许多继承 允许多层继承
2.所有的类都直接或者间接继承自Object类
this:当前对象的引用
super:当前对象中父类空间的引用
this.成员变量 访问当前对象的成员变量
super.成员变量 访问当前对象中父类空间的成员变量
this.成员方法(); 访问本类的方法
super.成员方法(); 访问父类的成员方法
this(实际参数) 访问本类的其他的构造方法
super(实际参数) 访问父类的构造方法
this()和super()都需要定义在构造方法的第一行 如果已经有this()就没有super()
抽象类
定义一个类时 知道这个类应该具备某个方法 都是无法描述具体的实现
此时也可以定义方法 只定义方法的声明 不定义方法体 那么这个方法就是抽象方法
有抽象方法的类必须是抽象类
抽象类的定义格式
public abstract class 类{
public abstract 返回值类型 方法名(参数列表);
}
抽象类出现的意义 在于强制子类 必须重写抽象方法.
抽象类的使用
1.抽象类不能创建对象
2.定义子类继承抽象类
3.重写抽象方法
4.创建子类对象 调用方法
抽象类的注意事项
1.抽象类可以有具体的方法 供子类使用
2.抽象类可以没有抽象方法 不让别人创建对象 要想使用功能 必须创建子类对象
3.抽象类可以有多个抽象方法 子类必须全部实现 才可以创建对象 否则子类必须是抽象类 才可以编译通过
4.抽象类有构造方法 供子类初始化时使用
动物类


猫类
吃 吃鱼
睡 躺着睡
抓老鼠
狗类
吃 吃肉
睡 趴着睡
看门
定义一个Home类
public void eatAtHome(猫 猫){
猫.eat();
}
public void eatAtHome(狗 狗){
}
定义一个测试类
创建Home对象 调用eatAtHome方法
*自我感受
多易老师讲课非常详细,通俗易懂,容易消化,通过第一天的学习,增加了我的学习信心,让我对未来的学习更加的充满了期待!
*特别鸣谢
学习内容参考多易教育零基础大数据入门课程http://v.51doit.cn
2022年03月16日 14点03分 1
1