Delphi的基本特性:语言,运行时库(RTL),核心类库
语言特性:
Delphi 即是一门语言同时又是一个开发工具。它是经典Pascal语言的面向对象的扩展。
内容提要
*类与对象
Delphi中每个可视放置在窗体中的组件是类的类型对象,该类可在系统库中获得。类和对象之间的关系和变量和类型之间的关系相同。
*封装:provate public
“黑盒子”,不需要知道里面有什么,只需要知道怎么样和黑盒子接口。
基本的3个访问标示符private、protected、public。它只限制于单元外面的代码访问单元接口部分中声明的一些确定的类成员。
*属性
我们可以通过属性来封装数据,属性可以看做是虚拟的字段。
*构造器
为了给对象分配内存调用用Create对象方法。Create构造器会初始化数据。我们可以自己定制Create构造器来启动特殊的实例数据。
分配内存--我们不要的时候必须来释放掉,调用析构器。
*对象与内存
Delphi 以对象引用为基础,建立该类实例。每一个变量不会保存对象的值,而是保存一个指针,来说明对象的内存位置。对象实例必须人工建立。总之一句话:同类型两个对象赋值,赋值的是对象所在内存的地址。不同类型赋值要转换类型。用(as或者 类型名(xxx))
内存管理规则:
每个对象在使用前必须创建。
每个对象在使用后必须解除。
每个对象只能解除一次。
*继承
如果我们定义一个类,想要在现有类中添加新的方法。就要打开“黑盒子”在里面做改动,这不是个好办法。这时可以用到继承关系。父类有的东西子类继承了,子类重新增加的方法,正是我们想要的。不断健壮子类,优生优育原则(派生类一定要比父类强大健壮)来实现代码扩展和代码重用。
*继承与类型兼容
不能将一个整型赋值给一个布尔,当然了除非我们显示的类型强转。
兼容规则是:只要他们类型相同或相容
相容:如 父类 TA 派生子类 TB ,子类TB的对象b赋值给父类TA的对象 A子类溶于父类。但是如果父类要用子类的方法还必须把父类类型转化成子类类型。
*虚方法与多态
多态条件:
从父类继承、子类父类方法一样父类是虚方法或动态方法,或纯虚方法、子类方法加override
只有在程序运行时候才能确定对象方法的实际地址叫晚绑定。
用户调用对象的方法将其做用于一个通用变量,根据对象的类在运行时才决定实际调用对象的方法就是多态。其实多态就是实现类上面的类型兼容。
多态是通过虚方法来实现的。
如果是多态那么一定是晚绑定。
*接口
一个类中有抽象方法它就是抽象类。一个纯虚方法没有方法实现,它就相当于一个借口,子类来实现它想要的功能。
接口类似类,但不是类,他已经变性手术了。
一个类可以继承自一个基类,但他可以实现多个接口。
因为说有类都派生于TObjcet,所有接口都派生于IInterface,故形成一个总的独立层。
*异常
Try 定义保护代码起始
Except 定义代码保护结尾,引用异常处理句子
Finally 总要执行的操作,一般为:关闭文件或数据库表格,释放对象和其他资源
*类引用
代码是在类本身上处理的,类引用不是一个对象,它只是对类的类型的引用。
Type
TA = class of TB;
…
Var
B : TB;
A : TA;
Begin
B :=TB.create;
A:=TA;
Delphi知识点与技术概述【第一章Delphi编程】