10.2 Swing程序包AWT(Abstract Window Toolkit): 抽象窗口工具集.依赖于本地操作系统的组件被称为重量级(Heavy Weight)组件,因为它们都会大量使用系统资源.组件名称有Frame(框架).Button(按钮).Label(标签)等 Swing: 基于AWT类构建.几乎所有的组件都用Java编写,而且所有代码都是Swing程序包的一部分.用Java语言编写的组件称为轻量级(Light Weight)组件.组件名称都以J开头,如JFrame.JButton…
推荐本书<Java大学教程> 看的人比较少,我也是多年不看书了,基于教程一般选国外的方法,从图书馆选了本书. 看了一半,感觉书的内容比较认真,对于基本的Java知识都算介绍全了,而且全书是基于循序渐进的方式写的,不会使读者看着看着就晕了. 就算有一些Java背景的,看看也会有帮助,能够把自学Java中留下的知识漏洞补齐. 全书分成两个部分,就是英文版说的大学生两个学期的教材,因此书中内容其实比较丰富,看完后再看其他层次的Java书,至少不会存在基础不懂的情况. 比如:<Java编程思想&…
自测题:1.    在图形应用程序中为用户提供选择的多种方式:P433下拉菜单(pull-down menu).弹出式菜单(pop-up menu).对话框窗口(dialogue window).单选按钮(radio button).组合框(combo box). 2.    使用JMenuBar类.JMenu类和JMenuItem类构建下拉菜单:创建一个菜单需要有三方面内容:顶端的菜单栏(menu bar).不同的菜单(menu)以及每个菜单都有各自的菜单项(menu item)列表.将菜单项…
本章主要介绍的是Java的背景知识,通过了解历史知道Java与其他语言的区别,以便更好选择在什么场景下使用Java. 24.2    语言的尺寸Java语言短小.紧凑,以C++为基础,放弃了一些特定的语言特征(指针和多继承)注:需要关注的是为什么放弃这两个特征,有没有替代方案,各自的优缺点. 24.2.1    指针(pointer)指针是一种变量,并且变量中包含了某个存储器地址.Java不允许使用指针,因为指针指向的是具体的物理地址,直接操纵物理地址中的数据,容易使程序出现不可预料的问题.Ja…
本章主要关注的是Java的几个应用网络编程的场景,对于网络编程没有太多深入介绍,而Java本来也没有多少针对网络编程的特性.虽然Java有个Applet的概念,但是真用这个的开发的场景其实不多. 23.1    引言服务器(server)程序为其他客户端(client)程序提供某种类型的服务,与客户端程序通常位于不同的机器上.一个程序可以既是服务器程序也是客户端程序,主要是看它是在为其他程序服务,还是在使用其他程序的服务.甚至还可以整合其他服务器程序上的服务,打包成自己的服务,提供给客户端程序使…
22.2 进程(process):P551时间切片(time-slicing):处理器只是完成了一个任务的一部分工作,然后完成下一个任务的一部分工作,因为处理吕每次完成工作的时间都非常短,因此看起来这些任务是同时完成的. 进程:一个运行的程序通常称为一个进程.并发进程(concurrent process):两个或多个可以同时执行的进程称为并发进程.在多个进程并发执行时,每个进程都有自己的存放程序代码和数据的存储空间,并且每个进程的存储空间对于其他进程都是受保护的,所有这些工作都由操作系统完成.…
用户与程序交互的媒介称为用户界面(user interface)或人机界面(human-computer interface). 19.2    Border接口8个实现Border接口的标准边框类:*    BevelBorder*    SoftBevelBorder*    LineBorder*    EtchedBorder*    TitledBorder*    MatteBorder*    CompoundBorder*    EmptyBorder 19.3    Icon接…
自测题:1.    解释抽象和抽象数据类型的概念.P333抽象的概念是仅仅关注对象可以完成什么工作,而不必担心如何完成工作的细节.类模板通常被称为抽象数据类型.因为这类数据暴露给用户的所有信息仅仅是方法的描述(输入.输出和行为)和数据的相关信息(属性). 2.    动态(运行时)绑定和静态(编译时)绑定的区别.P335编译时绑定(compile-time binding)或静态绑定(static binding)技术:当一个类的代码被编译后,该类的每个方法的代码都会随之编译:编译器将确保该类的…
本章就是上一章的延续,主要是用GUI实现了控制界面. 编程练习:代码附件Hostel.java1.    正确运行2.    Runhostel.java3.    searchButton…
自测题:1.    图11-1的UML设计中各个类之间的关系.Hostel与TenantList是关联关系:TenantList和PaymentList与ObjectList是泛化关系.TenantList和PaymentList是ObjectList的子类:TenantList与Tenant是聚合关系:PaymentList与Payment是聚合关系:Tenant与PaymentList是关联关系. 注:不太明白什么时候描述关系,可能用来描述的还是业务上的关系. 2.    为什么开发一个通用…