抽象类 | 学习笔记

简介: 快速学习抽象类。

开发者学堂课程【Java 面试疑难点串讲1:面试技巧及语言基础:抽象类】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/24/detail/498


抽象类


内容介绍

一、抽象类的实例化


一、抽象类的实例化

首先针对于抽象类应该有一个核心的认识:抽象类只是一个比普通类多了抽象方法的类而已,其它的结构上和普通类是差不多。

还有一个使用上的区别就是抽象类无法直接使用关键字new进行对象的实例化控制。

package cn.mldn.demo;

class A {

}

public class TestAbs {

public static void main( String[] args) {

a = new A() ;

}

}

普通类的最大的特征在于其定义了类的结构之后可以直接使用关键new 进行对象实例化,但是从继承的角度来看,普通类的继承里面对子类没有强制性约束。

所以如果现在某些方法必须要求子类来实现。

那么现在如果使用的是一个普通类,整个的设计就会非常的糟糕,所以在这样的状态下,我们认为需要去使用抽象类。

因为现在父类中也会包含有属性,而所有的属性必须通过构造执行之后才会进行内存空间的分配,那么父类(抽象类)也一定需要调用构造方法。

3.png所有的关键字 new 调用构造方法实例化对象的部分都可以将其理解为"匿名对象"的语法( newB() )。

 

 

 

相关文章
|
15天前
抽象类
作用:类似“模板”,其目的是要设计者依据它的格式来修改并创建新的类,但是并不能直接由抽象类创建对象,只能通过抽象类派生出新的类,再由它来创建对象,只能单继承 定义及使用规则: 1)包含一个抽象方法的类必须是抽象类 2)抽象类和抽象方法都要使用abstract关键字声明 3)抽象方法只需声明而不需要实现 4)抽象类必须被子继承,子类(如果不是抽象类)必须覆写抽象类中的全部抽象方法
16 0
|
3月前
|
Java
接口和抽象类【Java面向对象知识回顾②】
本文讨论了Java中抽象类和接口的概念与区别。抽象类是不能被实例化的类,可以包含抽象和非抽象方法,常用作其他类的基类。接口是一种纯抽象类型,只包含抽象方法和常量,不能被实例化,且实现接口的类必须实现接口中定义的所有方法。文章还比较了抽象类和接口在实现方式、方法类型、成员变量、构造方法和访问修饰符等方面的不同,并探讨了它们的使用场景。
接口和抽象类【Java面向对象知识回顾②】
|
7月前
|
C++
C++程序中的抽象类
C++程序中的抽象类
80 0
C++学习笔记_04抽象类、多态 2021-04-15
C++学习笔记_04抽象类、多态 2021-04-15
|
Java 编译器
认识抽象类
认识抽象类
87 0
|
编译器
抽象类的学习与总结
抽象类的学习与总结
|
Java
Java面向对象—抽象类和接口
Java面向对象—抽象类和接口
106 0
笔记12-多态&抽象类&接口
笔记12-多态&抽象类&接口