java的可视编程和Beans

迄今为止,我们已看到Java对创建可重复使用的代码片工作而言是多么的有价值。“最大限度地可重复使用”的代码单元拥有类,因为它包含一个紧密结合在一起的单元特性(字段)和单元动作(方法),它们可以直接经过混合或通过继承被重复使用。
继承和多形态性是面向对象编程的精华,但在大多数情况下当我们创建一个应用程序时,我们真正最想要的恰恰是我们最需要的组件。我们希望在我们的设计中设置这些部件就像电子工程师在电路板上创造集成电路块一样(在使用Java的情况下,就是放到WEB页面上)。这似乎会成为加快这种“模块集合”编制程序方法的发展。
“可视化编程”最早的成功——非常的成功——要归功于微软公司的Visual Basic(VB,可视化Basic语言),接下来的第二代是Borland公司Delphi(一种客户/服务器数据库应用程序开发工具,也是Java Beans设计的主要灵感)。这些编程工具的组件的像征就是可视化,这是不容置疑的,因为它们通常展示一些类型的可视化组件,例如:一个按惯或一个TextField。事实上,可视化通常表现为组件可以非常精确地访问运行中程序。因此可视化编程方法的一部分包含从一个调色盘从拖放一个组件并将它放置到我们的窗体中。应用程序创建工具像我们所做的一样编写程序代码,该代码将导致正在运行的程序中的组件被创建。
简单地拖放组件到一个窗体中通常不足以构成一个完整的程序。一般情况下,我们需要改变组件的特性,例如组件的色彩,组件的文字,组件连结的数据库,等等。特性可以参照属性在编程时进行修改。我们可以在应用程序构建工具中巧妙处置我们组件的属性,并且当我们创建程序时,构建数据被保存下来,所以当该程序被启动时,数据能被重新恢复。
到如今,我们可能习惯于使用对象的多个特性,这也是一个动作集合。在设计时,可视化组件的动作可由事件部分地代表,意味着“任何事件都可以发生在组件上”。通常,由我们决定想发生的事件,当一个事件发生时,对所发生的事件连接代码。
这是关键性的部分:应用程序构建工具可以动态地询问组件(利用映象)以发现组件支持的事件和属件。一旦它知道它们的状态,应用程序构建工具就可以显示组件的属性并允许我们修改它们的属性(当我们构建程序时,保存它们的状态),并且也显示这些事件。一般而言,我们做一些事件像双击一个事件以及应用程序构建工具创建一个代码并连接到事件上。当事件发生时,我们不得不编写执行代码。应用程序构建工具累计为我们做了大量的工作。结果我们可以注意到程序看起来像它所假定的那样运行,并且依赖应用程序构建工具去为我们管理连接的详细资料。可视化的编程工具如此成功的原因是它们明显加快构建的应用程序的处理过程——当然,用户接口作为应用程序的一部分同样的好。

时间: 2024-12-31 11:45:15

java的可视编程和Beans的相关文章

编译-一个java新手在编程路上遇到的问题

问题描述 一个java新手在编程路上遇到的问题 路过的大牛瞄一眼,谢谢...大一学生一枚,java学到网络编译了,最近在实现ftp服务器,目前还没写出来,心情十分郁闷,我觉得自己要成为编程员的随机应变能力还不够,编程路上的困惑,曾经也遇过类似状况求个回复. 解决方案 没什么,大一的时候让我自己去实现一个ftp服务器,我也觉得挺困难的.所以你要上大学啊. 解决方案二: 困惑:坚持.不会:学习.前排 解决方案三: 任何知识都有一个主干,首先要了解基本的原理,然后再学习细节.如果你是自学,一定要注意这

Java网络服务器编程(NIO版)

编程|服务器|网络 从Java 1.4开始提供的NIO API常用于开发高性能网络服务器,本文演示了如何用这个API开发一个TCP Echo Server.   Java网络服务器编程 一文演示了如何使用Java的Socket API编写一个简单的TCP Echo Server.其阻塞式IO的处理方式虽然简单,但每个客户端都需要一个单独的Thread来处理,当服务器需要同时处理大量客户端时,这种做法不再可行.使用NIO API可以让一个或有限的几个Thread同时处理连接到服务器上的所有客户端.

让你不苦恼:Java的中文编程配置心得

编程|心得|中文 Java的中文编程与配置心得 Java的中文问题历史悠久,连绵不绝,至今也没有完全解决,但是上有政策下有对策,我们总是有办法搞定它的.跟Java相关的中文问题主要有两类,一类是编程的问题,涉及到I/O,内码转换等.第二类是Java运行环境的配置,涉及字体,属性配置等.我刚刚用了一天的时间解决这些问题,觉得很有必要给自己写个备忘录之类的. 我看还是从问题入手吧,这样不致于让大家打瞌睡.我想写个程序,这个程序有个基本功能就是显示文件内容,我用JTextArea来做显示的事情,程序简

请问java图形界面编程中怎样改变消息提示框中确定按钮的文本内容啊?

问题描述 请问java图形界面编程中怎样改变消息提示框中确定按钮的文本内容啊? 问题补充:恩恩,swing的!请问怎么改啊?xiaolv 写道 解决方案 JOptionPane.setDefaultLocale(Locale.CHINA);JOptionPane.showMessageDialog(null, "11", "22",JOptionPane.INFORMATION_MESSAGE);这个按钮自动集成多语言.只能通来Locale来改.想要OK就用Loca

《Java 7并发编程实战手册》第六章并发集合

由人民邮电出版社出版的<Java 7并发编程实战手册>终于出版了,译者是俞黎敏和申绍勇,该书将于近期上架.之前并发编程网组织翻译过此书,由于邮电出版社在并发网联系他们之前就找到了译者,所以没有采用并发网的译稿,但邮电出版社将于并发网展开合作,发布该书的样章(样章由并发网挑选,你也可以回帖告诉我们你想看哪一章的样章),并组织赠书活动回馈给活跃读者.活动详情请时刻关注并发网的微博和微信(微信号:ifeves),最后祝各位用餐愉快!:) 本章将介绍下列内容: 使用非阻塞式线程安全列表 使用阻塞式线程

java中网络编程关于使用ObjetInputStream传输报错的问题,求大神指点

问题描述 java中网络编程关于使用ObjetInputStream传输报错的问题,求大神指点 以下贴出来的代码为通过ObjectInputStream(OutputStream)在客户端与服务器端之间交互时传输的对象,提供的图片中一个是客户端的代码片段,一个是服务器端的代码片段. 现在问题出在当客户端输完账号密码点击确定时,客户端卡死(应该是线程阻塞).服务器端抛出异常 :java.lang.ClassNotFoundException: com.wish.data.TransferObjec

数据接收-java的socket编程问题:为什么客户端接收服务器的数据时会有空白数据项?

问题描述 java的socket编程问题:为什么客户端接收服务器的数据时会有空白数据项? 例如:03-17 07:02:00.330 1984-2007/? I/info﹕ client buff --> 0/20160316//早餐/123.0 03-17 07:02:00.340 1984-2007/? I/info﹕ insert expend_table 03-17 07:02:00.340 1984-2007/? I/info﹕ client buff --> 03-17 07:02

Java FP: Java中函数式编程的谓词函数(Predicates)第二部分

在上一篇文章中我们介绍了谓词函数.通过一个简单的只带一个返回值是true或者false的函数的接口,把函数式编程语言的优势带入到了类似Java的面向对象编程语言中.这一小节,我们将会介绍一些高级特性,方便你高效利用谓词函数. 测试 在测试代码中使用谓词的优势尤为明显.当你需要测试一个混合了数据结构与某些条件逻辑的方法时,通过使用谓词,你可以先单独测试数据结构,再测试条件逻辑. 第一步,先利用永真谓词或者永假谓词屏蔽用于判断的逻辑,将注意力集中在测试数据结构上: 1 // check with t

有关java 中gui 编程问题

问题描述 有关java 中gui 编程问题 为什么要分好几层,直接在jframe上直接添加组健不就行了么? 解决方案 java的GUI(图形用户界面)编程java---GUI编程黑马程序员_java GUI编程 解决方案二: 这是java awt的层次结构.JFrame,JDialog,JWindow与JApplet这四个组件我们统称为最上层(Top-Level)组件,因为其余的Swing组件都必须依附在此四组件之一上才能显示出来. 详解参考:http://wenku.baidu.com/lin