抽象类的基本概念

抽象类

定义抽象类:

abstract class 类名{

public abstract 方法名();//抽象方法

抽象类中的抽象方法没有方法体,所以抽象类无法直接实例化

因此:

1、抽象类必须有子类。

2、抽象类的子类必须要覆写抽象类中的全部抽象方法(强制子类覆写)。

3、抽象类的对象实例化需要需要依靠子类完成,采用向上转型。

抽象类的相关限制:

1、抽象类一定会存在构造方法,目的:为属性初始化

2、抽象类不能用final定义,因为抽象类一定要有子类

3、外部抽象类不允许使用static声明,而内部抽象类允许使用static声明,继承时使用“外部类.内部类”的形式表示类名称。

4、如果要使用抽象类中的static方法的时候,在没有对象的时候也可以直接调用

5、 执行子类构造前一定先执行父类构造

时间: 2024-08-11 03:27:15

抽象类的基本概念的相关文章

Java中接口和抽象类的比较

Java中接口和抽象类的比较-2013年5月写的读书笔记摘要 1. 概述 接口(Interface)和抽象类(abstract class)是 Java 语言中支持抽象类的两种机制,是Java程序设计使用多态性的基础[[1]].(在面向对象语言中,接口的多种不同的实现方式即为多态.多态性是允许你将父对象设置成为和一个或更多的他的子对象的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作(摘自"Delphi4编程技术内幕").简单的说,就是一句话:允许将子类类型的

8.python之面相对象part.4(接口继承的思想设计,这种东西也叫抽象类)

接口继承也叫做程序的归一化设计,这种东西也有人叫它抽象类. 那么什么又是抽象类呢? 抽象类这种东西,只能被继承,不可以被实例化. 如果说一个类是从一堆对象中抽取出来的,那么一个抽象类,就是从一堆类中抽取出来的. 简单的说,抽象类与普通类最大的不同之处就是,抽象类中的方法都试抽象的,没有办法实现具体的功能,这种抽象类不能生成对象,只可以被继承,但是,继承了这个抽象类的子类,必须去实现抽象类所抽象出来的方法!这个概念很像接口,所以说,我把它理解为接口式的继承. 关于抽象类的定义概念,可以参考下面这个

Java中接口和抽象类的比較

Java中接口和抽象类的比較-2013年5月写的读书笔记摘要 1. 概述 接口(Interface)和抽象类(abstract class)是 Java 语言中支持抽象类的两种机制,是Java程序设计使用多态性的基础[[1]]. (在面向对象语言中,接口的多种不同的实现方式即为多态. 多态性是同意你将父对象设置成为和一个或很多其它的他的子对象的技术.赋值之后.父对象就能够依据当前赋值给它的子对象的特性以不同的方式运作(摘自"Delphi4编程技术内幕"). 简单的说.就是一句话:同意将

面向对象_抽象类

一.抽象类的基本概念 当多个类中出现相同功能,但是功能主体不同.这时可以进行向上抽取.这时,只抽取功能定义.而不抽取功能主体 使用abstract关键字声明的类为抽象类 二.抽象类的特点 1.方法只有声明没有实现时,该方法就是抽象的,需要被abstract修饰 2.抽象方法一定在抽象类中.(就是说只要类中又抽象方法,这个类就是抽象的) 3.抽象方法和抽象类都必须被abstract关键字修饰 4.抽象类不可以用new创建对象,因为调用抽象方法没有意义. 5.抽象类中的抽象方法要被使用,必须由子类复

普通类 抽象类 接口

首先得搞懂什么是抽象类:一.概念:    在面向对象的概念中,我们知道所有的对象都是通过类来描绘的,但是反过来却不是这样.并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类.    比如:如果我们进行一个图形编辑软件的开发,就会发现问题领域存在着圆.三角形这样一些具体概念.它们是不同的,但是它们又都属于形状这样一个概念,形状这个概念在问题领域是不存在的,它就是一个抽象概念.正是因为抽象的概念在问题领域没有对应的具体概念,所以用以表征抽象概念的

Java中接口和抽象类的区别与联系

Java中接口和抽象类的区别与联系 1. 抽象类: (1).概念:抽象类是对一种事物的抽象,即对类抽..抽象类是对整个类整体进行抽象,包括属性.行为.Java抽象类和Java接口一样,都用来声明一个新的类型.并且作为一个类型的等级结构的起点. (2).格式: public abstract class abstractDemo{ /**属性*/ private String name; /**方法*/ public abstract void fun(); } (3).说明: A:抽象类中不一定

面向对象基础之抽象类与接口 上

在两年前学习C++的时候,知道抽象类这么一个概念,当时并不是很理解,如今在学习C#和设计模式的时候,再一次碰到了这个含糊不清的东西,同时又在C#中学习到了接口技术,接口也早有耳闻,但是当时理解的接口就是一个或者一组能够操作类中数据的函数或者方法.虽然老师举过很多例子,比如电视机这个事物,它对外的接口就是遥控器,遥控器里好多的按钮,按钮的下面就是各种各样的命令或者称之为方法. 当抽象类遇到接口的时候,顿时蒙圈了,这两个概念的确是让人很难区别,那么我今天就来总结一下抽象类和接口到底有哪些区别和联系,

【Java学习笔记之二十一】抽象类在Java继承中的用法小结

一.抽象类的基本概念 普通类是一个完善的功能类,可以直接产生实例化对象,并且在普通类中可以包含有构造方法.普通方法.static方法.常量和变量等内容.而抽象类是指在普通类的结构里面增加抽象方法的组成部分. 那么什么叫抽象方法呢?在所有的普通方法上面都会有一个“{}”,这个表示方法体,有方法体的方法一定可以被对象直接使用.而抽象方法,是指没有方法体的方法,同时抽象方法还必须使用关键字abstract做修饰. 而拥有抽象方法的类就是抽象类,抽象类要使用abstract关键字声明. 范例:定义一个抽

Java基础:3、抽象类和接口

一.抽象类 1.抽象类的基本概念和特点 顾名思义抽象类就是被抽象关键字(abstract)修饰的类,要理解抽象类,可以先从思想层面切入. 从开始学习java开始就常常见到一句话,万物皆对象.然而某些对象之间必然会有共同点,如一些特征或者一些行为.如果在每一个类中都重复的定义着相同的点,那还怎么做称霸整个地球的人类呢?人类当然是能偷懒则偷懒了. 所以说:将不同类的相同点抽象出来成为一个类,这就是抽象类. 那么接下来就来描述一下,抽象类究竟是什么. 抽象类是用abstract修饰的类,抽象类中可以包