类和对象是相关但不相同的概念。对象是一个类的实例,而类可以有零个或多个实例。对象(object)是相关函数和数据的一个包。类只是一个模板,从中可以创建特定的实例。用户在PowerBuilder中创建的所有窗口都属于类Window。对象是类的实际物理表示,是用户创建和取消的内容。
PowerBuilder将每个类——系统类以及用户所创建的类——定义为一个数据类型并将它们作为一个层次结构来维护。
使用Object Browser,用户可以设置希望缩放的特定类的类型。

创建和删除类

可以用Create语句生成对象类的一个实例。必须使用该语句的唯一类就是不可视用户对象,如标准类(例如transaction和error)或弹出式菜单。可视的用户对象和窗口应该用相应的Open()函数创建。在用户访问对象的特性和方法前必须用Create语句实例化一个对象变量。例如,要创建Error对象的一个本地版本,代码为:

//对象变量eMyError,对象类Error
Error eMyError
eMyError = Create Error
eMyError.Line = 1

例如,要创建一个可视化的用户窗口类w_about的实例,代码为:

Open(w_about)//或用局部变量wInstance1指向这个实例
w_about wInstance1
Open(wInstance1,"w_about")

警告:如果用Create来建立窗口类的一个非可视实例,则不触发Open事件。事实上,与可视窗口相关联的所有事件都不会触发,因为窗口的图形组件无法生成。

当用户使用Create语句时,PowerBuilder为该对象分配内存。该内存一直保持到由Destroy语句释放它为止。例如,在上述示例的脚本的结尾,要求的代码为:

Destroy eMyError

类和实例池

PowerBuilder维护了三个独立的内存池用于跟踪类、实例和Windows显示信息
当首次对一个特定类实例化时,将把类定义调入类池中,然后在实例池中创建一个实例。该对象随后的实例化将直接从类池中提取其定义。根据实例化对象的方式,该实例的一个指针要么在全局内存中,要么位于所使用变量的作用域层。PowerBuilder用另一个池——Windows池保存某个对象的实际Windows显示方面的信息。最后这个Windows池仅用于可视类,如窗口、菜单和用户对象。

Pb语言中的类和对象相关推荐

  1. Java快速入门学习笔记7 | Java语言中的类与对象

    有人相爱,有人夜里开车看海,有人却连LeetCode第一题都解不出来!虽然之前系统地学习过java课程,但是到现在一年多没有碰过Java的代码,遇到LeetCode不知是喜是悲,思来想去,然后清空自己 ...

  2. java类描述_java笔记2:Java语言中的类和对象的描述

    在Java 语言中,除8 个基本数据类型值之外, 一切都是对象,而对象就是面向对象程序设计的中心. 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还 ...

  3. python类中没有属性_如何在python语言中在类中删除属性和添加属性

    在python语言中的类,可以使用class定义类,调用__init__方法进行初始化:默认传入self,可以在后面在添加几个属性.可以使用setattr()添加属性,也可以使用delattr()删除 ...

  4. java中的类和对象(重点)超详细

    java中的类和对象 1.类与对象的初步认知 2.类和对象的实例化 3.类的成员 3.1.字段,属性,成员变量 3.2.方法 3.3.static 关键字 3.4.小结 4.封装 4.1.privat ...

  5. python中类和对象的内容_python中的类和对象

    摘要:本文主要介绍了python中的类和对象的基础内容.由于在c++中对类和对象已经有了较为深刻的认识,所以此部分就是主要熟悉一下创建方法和使用方法. 1.类.对象的创建和简单使用 主要观察创建类的方 ...

  6. 【面向对象】面向对象程序设计测试题4-Java中的类和对象测试

    Test4:Java中的类和对象测试题 问题 1 What happens when you try to compile and run the following program? class M ...

  7. 不应该通过类实例访问静态成员 解决方法_今天说一说php中的类与对象

    网上的文章博客这种东西已经写烂了. 我只是写写自己理解.... 首先都知道php的面向对象,什么封装,集成,多态,灵活,简单,代码简洁,重用行强,利于维护,什么什么三个方向:灵活性,重用行,扩展性. ...

  8. 在 UML 静态结构图中使用类和对象

    在 UML 静态结构图中使用类和对象 向类.组件或其他元素添加接口 在静态结构图.组件图或部署图中,将棒糖形"接口"形状(用一条直线加圆圈表示)拖到绘图页上. 将不带圆圈的端点粘附 ...

  9. 12月29日--Java中有关类与对象的学习记录

    1.12月29日第一课记录 Java中有关类与对象的学习记录 一.基本概念部分 1.类:具有相同.相似的属性.特征.行为方式以及功能的一类事物的总称 (举例:一类用户,如淘宝用户) 类是对象的模板 是 ...

  10. JAVA中的类和对象之this的详解

    系列文章目录 第一章 JAVA中的类和对象之this的详解 目录 前言 一.为什么要有this引用 二.this的三种用法 1.this.成员变量 2.this.成员方法 3.this()调用其它的构 ...

最新文章

  1. 两款旋转编码器测量LDP3806,BH60
  2. 第五章:条件、循环以及其他语句(上)
  3. 前端学习(804):替换字符串和转换为数组
  4. 通过社交网络进行OWIN OAuth2身份验证
  5. 从零学ELK系列(三):Centos安装Docker(超详细图文教程)
  6. height、clientHeight、scrollHeight、offsetHeight区别
  7. java检查页面ajax请求,Java AJAX电子邮件检验示例
  8. java模板引擎 jade_jade模板引擎
  9. 修复SSH Weak Algorithms Supported漏洞
  10. server: WebGame服务端架构分析
  11. 本地计算机如何使用代理服务器,自动设置代理ip
  12. Clickhouse 时间日期函数实战总结
  13. Halcon学习笔记-工业相机千兆网线和USB优劣对比
  14. 烫烫烫屯屯屯 那些事
  15. 《机器学习技法》第13课笔记 深度学习
  16. AI医学影像技术展望
  17. 一条有意思的SQL语句分析
  18. 如何用几何画板绘制立体圆锥体
  19. kali翻译插件_Kali优化之安装翻译工具goldendict及使用方法
  20. win10系统,必须要设置登陆密码的解决方法

热门文章

  1. 工程师笔记 | 嵌入式工程师常用软件
  2. gp数据库主节点故障导致数据库无法重启报错
  3. AndroidStudio NDK开发环境配置及示例
  4. 图解 JVM 内存结构
  5. 实现手风琴抽屉式网页特效
  6. 微信小程序云开发实现微信小程序订阅消息服务通知教程
  7. 微信小程序实现倒计时
  8. 扫码下载apk文件浏览器会直接打开并显示乱码的问题
  9. JavaScript 模板引擎
  10. (Python2.7.x) Systrace 使用的坑,出现 ImportError: No module named XXX