文档章节

抽象类

涂孟超
 涂孟超
发布于 2014/09/26 15:34
字数 164
阅读 1
收藏 0
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

//夫类,抽象类
  TParent = class
  protected
    function MyFun(i: Integer): Integer; virtual; abstract;
    //抽象方法(纯虚方法),只有定义没有实现,一个类包含一个即成抽象类,抽象类不能直接创建对象。
  end;

//子类
  TChild = class(TParent)
  protected
    function MyFun(i: Integer): Integer; override;  //覆盖
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TChild }

function TChild.MyFun(i: Integer): Integer;
begin
  Inc(i);
  Result := i;
end;

//测试
procedure TForm1.FormCreate(Sender: TObject);
var
  p: TParent;
  c: TChild;
begin
  p := TChild.Create;  //抽象类只能通过其子类创建对象
  c := TChild.Create;

  ShowMessage(IntToStr(p.MyFun(2)));  //3
  ShowMessage(IntToStr(c.MyFun(2)));  //3

  p.Free;
  c.Free;
end;

end.

本文转载自:http://www.cnblogs.com/del/archive/2007/12/05/983684.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
第十八节:详解Java抽象类和接口的区别

前言 对于面向对象编程来说,抽象是它的特征之一。 在Java中,实现抽象的机制分两种,一为,二为。 抽象类为,接口为。 今天来学习一下Java中的抽象类和接口。 目录 什么是抽象 什么是抽象类...

达叔小生
08/01
0
0
Java中抽象类和抽象方法的区别

抽象方法:在类中没有方法体的方法,就是抽象方法。 抽象类:含有抽象方法的类就叫抽象类。 抽象类中的抽象方法必须被实现! 如果一个子类没有实现父类中的抽象方法,则子类也成为了一个抽象...

vshcxl
2016/11/18
20
0
小朋友学Java(9):抽象类与接口

之前提过面向对象有三大特性:封装、继承、多态。 还有另一种说法,即面象对象有四大特性:抽象、封装、继承、多态。 这两种说法都是对的,不必拘泥于哪种说法。关键要能理解这些特性的含义。...

翡翠森林Z
2017/12/12
0
0
深入理解Java的接口和抽象类

深入理解Java的接口和抽象类   对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。...

小湘西
2016/07/07
27
0
再说抽象类

深入理解Java的接口和抽象类   对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。...

wf王帆
2016/05/26
65
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring boot中如何获取profiles环境

  实现ApplicationContextAware @Componentpublic class QiNiuPropertiesConfig implements ApplicationContextAware { /// 获取当前环境public String getActiveProfile() { ret......

writeademo
8分钟前
0
0
机器学习中的End-to-End到底是怎么回事?

简单讲就是,Input--->系统(这里指神经网络)--->Output(直接给出输入,NN神经网络就给出结果,一气喝成!!!) 借用一段对话:(http://dy.163.com/v2/article/detail/C3J6F2NJ0511AQHO....

火力全開
8分钟前
0
0
maven多个模块只编译并且只打包指定的模块

在多module的maven项目中,如果每次打包整个工程显得有些冗余和笨重。 命令:mvn clean package install -pl 模块的名称 -am

lifes77
10分钟前
0
0
eosjs中文手册【2.0】

访问地址:eosjs 2.0 中文手册 - 汇智网

汇智网教程
14分钟前
0
0
vue-cli 3 分环境打包

在vue-cli3的项目中, npm run serve时会把process.env.NODE_ENV设置为‘development’; npm run build 时会把process.env.NODE_ENV设置为‘production’; 此时只要根据process.env.NODE_...

灰白发
22分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部