抽象类抽象方法
抽象类与抽象方法的核心关系抽象类中可以包含0到多个抽象方法抽象方法必须存在于抽象类中。抽象类的作用是为子类提供通用模板强制子类实现特定行为规范避免设计随意性。public abstract class Person { // 具体方法子类可直接继承使用 public void eat(){ System.out.println(一顿不吃饿得慌); } // 抽象方法子类必须实现 public abstract void say(); public abstract void sleep(); }继承规则与实现要求子类继承抽象类时需重写所有抽象方法否则必须声明为抽象类。非抽象子类必须完全实现父类抽象方法这是Java语言的强制约束。class Student extends Person{ Override public void say() { System.out.println(实现具体说话逻辑); } Override public void sleep() { System.out.println(实现具体睡眠逻辑); } }对象创建与多态特性抽象类虽不能直接实例化但可通过子类实现多态。父类引用指向子类对象是抽象类的典型使用场景。Person p new Student(); // 多态应用 p.say(); // 调用子类实现 p.sleep(); // 调用子类实现构造器与初始化机制抽象类必须包含构造器用于子类通过super()调用初始化。即使没有显式定义构造器编译器也会生成默认无参构造器。public abstract class Animal { public Animal(String type) { // 抽象类构造器 System.out.println(初始化type); } }面试题1抽象类不能创建对象那么抽象类中是否有构造器抽象类中一定有构造器。构造器的作用 给子类初始化对象的时候要先super调用父类的构造器。2抽象类是否可以被final修饰不能被final修饰因为抽象类设计的初衷就是给子类继承用的。要是被final修饰了这个抽象类了就不存在继承了就没有子类。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2481353.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!