NetBeans学习笔记

Size: px
Start display at page:

Download "NetBeans学习笔记"

Transcription

1 NetBeans 学习笔记第一章 NetBeans 集成开发环境创建第一个 NetBeans 项目打开 NetBeans, 新建项目 应用程序 项目名称: firstexample, 设定存储位置 在 main 函数下输入代码 : System.out.println( 欢迎使用 NetBeans5.0, 这是第一个例子 ); 保存 运行 源代码编辑器尽管可视化开发大大缩短了开发人员的时间, 但是代码的编写还是不可被取代的, 代码的编写仍然是整个程序的核心部分 一个程序的好坏, 很大程度上取决于代码的编写 NetBeans 提供的代码编辑器十分好用, 对于代码的整体性, 自动查找错误和修复上面, 有了很好的帮助 第二章 Swing 概述 Swing 是 SUN MicroSystem 建立的新一代 GUI 工具包, 允许用户进行企业级的开发 Swing 的开发需要许多的包, 这里不再一一介绍, 当开发的时候,NetBeans 会提醒你添加需要的包, 通过修复添加就可以 下面, 我们来进行一个简单得 Swing 程序 再使用了 JDK 以后, 我们对 java 语言已经有了一定的认识和了解 虽然 NetBeans 可以使用控件来进行开发, 但是必要的代码开发, 还是不可少的

2 在没有习惯以及熟练掌握控件的托拽开发以前, 让我们先利用代码来编写一个小的程序 步骤如下 : 建立一个项目, 创建一个扩展 Jframe 的类 FirstSwing 用来存放各个组件 在 main() 方法中新建一个 FirstSwing 的实例 myswing 在 FirstSwing 类中声明各个组件 : private JLabel jlabelusername; private JLabel jlabelpassword; private JTextField jtextfieldusername; private JPasswordField jpfpassword; private JButton jbuttonenter; private JButton jbuttoncancel; 将 FirstSwing 的布局管理器设置为 null: this.setlayout(null);// 在 FirstSwing 方法中定义 为声明的每个组件创建实例对象 : jlabelusername=new JLabel(" 用户名 :"); jlabelpassword=new JLabel(" 密码 :"); jtextfieldusername=new JTextField(); jpfpassword=new JPasswordField(); jbuttonenter=new JButton(" 确定 "); jbuttoncancel=new JButton(" 取消 ");

3 设置控件的位置, 并且添加到容器中 : jlabelusername.setbounds(10,20,80,20); jlabelpassword.setbounds(10,50,80,20); jtextfieldusername.setbounds(100,20,150,20); jpfpassword.setbounds(100,50,150,20); jbuttonenter.setbounds(80,90,60,20); jbuttoncancel.setbounds(160,90,60,20); this.add(jlabelusername); this.add(jlabelpassword); this.add(jtextfieldusername); this.add(jpfpassword); this.add(jbuttonenter); this.add(jbuttoncancel); 设置 FirstSwing 的大小 标题和可见性 : this.setbounds(330,250,300,150); this.settitle(" 这是第一个 Swing 程序!"); this.setvisible(true); 这样, 整个程序就完成了, 下面给出完整的代码 : import java.awt.*; import javax.swing.*; class FirstSwing extends JFrame {private JLabel jlabelusername;

4 private JLabel jlabelpassword; private JTextField jtextfieldusername; private JPasswordField jpfpassword; private JButton jbuttonenter; private JButton jbuttoncancel; public FirstSwing() { this.setlayout(null); jlabelusername=new JLabel(" 用户名 :"); jlabelpassword=new JLabel(" 密码 :"); jtextfieldusername=new JTextField(); jpfpassword=new JPasswordField(); jbuttonenter=new JButton(" 确定 "); jbuttoncancel=new JButton(" 取消 "); jlabelusername.setbounds(10,20,80,20); jlabelpassword.setbounds(10,50,80,20); jtextfieldusername.setbounds(100,20,150,20); jpfpassword.setbounds(100,50,150,20); jbuttonenter.setbounds(80,90,60,20); jbuttoncancel.setbounds(160,90,60,20); this.add(jlabelusername); this.add(jlabelpassword);

5 this.add(jtextfieldusername); this.add(jpfpassword); this.add(jbuttonenter); this.add(jbuttoncancel); this.setbounds(330,250,300,150); this.settitle(" 这是第一个 Swing 程序!"); this.setvisible(true); public class Main { public static void main(string[] args) { FirstSwing myswing=new FirstSwing(); 开发后的图像如下 :

6 通过上面的例子, 我们已经能够利用 NetBeans 编写一个简单的, 具有 GUI 界面的程序了, 但是, 纯粹的利用代码来编写, 十分费力, 所以, 我们接下来讲的就是如何利用 NetBeans 来开发一个 Swing 应用程序 步骤如下 : 创建项目 将工程的名字修改为 addstudentinfo, 并且设置包的位置, 一般设置位 org.netbeans, 选中左方窗口的源代码包下的 netbeans 节点, 鼠标右击, 新建 JFrame, 并且修改名字为 AddStudentFrame, 然后确定 打开 GUI 设计器 向窗体上添加一个 Jlabel, 鼠标右击 改变变量名称: jlabelstudentname, 属性 :text : 姓名 然后依次再添加 4 个 Jlabel, 名称分别为 jlabelstudentid( 学号 : ), jlabelgender ( 性别 :),jlabelgrade( 班级 :),jlabelphonenum( 联系电话 :) 添加四个 JtextField, 分别为

7 jtextfieldstudentid,jtextfieldgrade,jtextfieldphonenum, 还 有 jtextfieldname 全部设置为空 两 个 JradioButton,JradioButtonMale( 男 ), JRadioButtonFemale( 女 ); 两个 JButton,JbuttonEnter( 确定 ),JbuttonCancel( 取消 ); 运行后的图像如下 : 第三章 Swing/JFC 的事件模型基础任何支持 GUI 的操作环境都会不断地监听事件 当按下键盘或者单击鼠标的时候, 便会触发一个相应的事件, 操作环境把这些事件报告给正在运行的程序, 接着程序决定如何响应这些事件 在 java 中, 开发人员能够控制各种事件, 可以把迅速响应事件的对象指派成一个事件监听器 下面介绍一下常用事件对象及其作用

8 AWTEvent: 所有 AWT 事件的根事件类 ConnectionEvent: 封装与连接有关信息的事件 ChangeEvent : 封装状态改变信息的事件 ListSelectionEvent: 表示当前选择中更改的特征事件 CaretEvent: 封装文本区中的光标改变信息的事件 ListDataEvent: 定义一个封装列表更改的事件 HyperlinkEvent: 封装与超文本连接有关的事件 TableColumnModelEvent: 某一个表的列模型已发生改变 TableModelEvent: 通知侦听器某一个表模型已发生改变 TreeExpansionEvent: 用于表示树中的单个路径的事件 TreeModelEvent: 封装描述树模型更改的信息 TreeSelectionEvent: 描述当前选择的更改事件 上面所述的, 只是一些常用的事件对象和作用, 当遇到那些不常用的时, 应该第一时间查阅 JDK 在了解了事件处理的工作机制以后, 现在深入讨论 java 中的事件处理 Java 中的事件处理是面向对象的, 所有事件都是从 java.util 包中的 EventObject 类扩展来的 EventObject 有一个子类 AWTEvent, 它是所有 AWT 事件的父类 对于 java 开发人员来说, 有些 AWT 事件在实际中应用不多 我们所讲述的, 只是在实际中会被传到舰艇气得 AWT 事件类型 常用的事件类型和接口

9 事件类型接口名称接口中声明的方法作用 ActionEvent ActionEven tlistener actionperformed(action Event e) 监听组件的某个动 作 Adjustment Adjustment adjustmentvaluechange 监听调整事件 Event EventListen d(adjustmentevent e) er Component Component componenthidden(com 监听组件隐藏事件 Event Listener ponentevent e) 同上同上 移动事件 Moved 同上同上 调整尺寸 Resized 同上同上 显示事件 Shown ContainerEv ContainerE componentadded(conta 监听容器添加组件 ent ventlistene inerevent e) 事件 r 同上同上 移除事件 Removed FocusEvent FocusListe focusgained(focuseven 监听键盘获得焦点 ner t e) 事件 同上同上 Lost 失去焦点

10 HierarchyE HierarchyB ancestormoved(hierarch 监听父窗口的移动 vent oundsliste yevent e) 事件 ner 同上同上 调整尺寸 Resized InoputMeth InputMetho inputmethodtextchange 监听输入方式改变 odevent dlistener d(inoputmethodeven) 事件 ItemEvent ItemListene itemstatechanged(item 是否选种状态的改 r Event e) 变 KeyEvent KeyListene r keypressed(keyevent e) 监听键盘按下事件 同上同上 Released 释放事件 同上同上 Typed 单击事件 MouseEvent MouseListe ner mouseclicked(mouseev ent e) 监听鼠标的单击事 件 同上同上 移入 Entered 同上同上 移出 Exited 同上同上 按下 Pressed

11 同上同上 Released 释放 同上 MouseMoti mousedragged(event e) 鼠标在组件内的托 onlisener 拽事件 同上同上 WheelMoved 同上 以上就是几种最常用的事件及监听器, 此外, 还有窗口事件 (WindowEvent) 第四章 Swing 常用基本控件 JLabe 类 JLabel myjlabel=new JLabel(); 构造器 JLabel(): 创建无图像并且标题为空的 JLabel JLabel(Icon image): 创建具有指定图像的 JLabel JLabel(String text): 创建具有指定文本的 JLabe JLabel(String text,icon image,int horizontalalignment()): 具有指定文本, 图像, 水平对齐德 JLabel JLabel(String text,int horizontalalignment()): 具有指定文本和水平对齐的 JLabel

12 常用方法 gettext(): 获取该标签所显示的文本字符串 settext(string text): 设置字符串 geticon(): 获取该标签所显示的图像 seticon(icon icon): 定义此组件将要现实的图标 getverticalalignment(): 获取标签内容沿 y 轴的对齐方式 setverticalalignment(int alignment): 设置 gethorizontalalignment(): 获取,x 轴 sethorizontalalignment(int alignment): 设置 getlabelfor(): 获取将标签添加到的组件 setlabelfor(component c): 设置将标签添加到的组件 在 NetBeans 中使用 JLabel 项目 新建 Jframe(DemoJlabelFrame) 添加 JLabel(jLabelImage),text: 演示图片 单击 Icon 属性右侧的按钮, 添加图片 右击, 选择 事件 /Mouse/mouseClicked, 然后添加如下代码 : This.jLabelImage.setVerticalTextPosition(SwingConstants.TOP); 运行即可 运行图象如下 :

13 JButton 介绍 Swing 中最简单的按钮类型, 可以包含文本或图标, 能够响应单击事件 创建十分简单 : JButton mybutton=new JButton( 确定 ); 构造器 : JButton(): 创建没有文本或图标的按钮 JButton(String s): 有文本 JButton(Icon icon): 有图标 JButton(String s,icon icon) 常用方法

14 addactionlistener() removeactionlistener(actionlistener l) getaction() getmodel() setmodel(buttonmodel newmodel) getmargin() setmargin(insets m) getselectedicon() setselectedicon(icon selectedicon) 在 NetBeans 中 JButton 的使用新建 JFrame(DemoJButtonFrame) 添加 2 个 JButton,1 个 JLabel, 分别修改变量名称为 jbuttonenter,jbuttoncancel,jlabelmessage Test 属性分别为 : 确定, 取消, 用户没有按下按钮 分别为两个按钮添加 ActionEvent 事件 jbuttonenter: This.jLabelMessage.setText( 你单击了确定按钮 ); jbuttoncancel: This.jLabelMessage.setText( 你单击了取消按钮 ); 效果图 :

15 Swing 文本框 JtextField 用于输入单行的文字 创建很简单 : JtextField jtextfieldone=new JtextField( 你好 ); 构造器 : JTextField() JTextField(Document doc,string text,int columns): 给定存储类型和列数, 还有相应的文本 JTextField(int columns) JTextField(String text)

16 JTextField(String text,int columns) 常用方法 : setdocument(document doc) createdefaultmodel() getcolumns() setcolumns(int columns) setfont(font f) addactionlistener(actionlistener l) removeactionlistener(actionlistener l) gettext() settext(string t) 在 NetBeans 中使用添加 JTextField(jTextFieldTest),JLabel(jLabelMessage) 在 jtextfieldtest 的 ActionEvent 下输入代码 : String getmessage=jtextfieldtest.gettext(); If(getMessage.equals( )) { this.jlabelmessage.settext( 你没有输入任何内容 ); Else

17 { this.jlabelmessage.settext( 你输入的内容是 : + getmessage) 效果图 : Swing 文本区 JTextArea 是一种非常重要的文本输入控件 能够显示多行文本 构造器 : JTextArea() JTextArea(String text) JTextArea(int rows,int columns)

18 JTextArea(String text,int rows,int columns) JTextArea(Document doc) JTextArea 本身不具有滚动功能, 如要实现该功能, 需要将其添加到 JScrollPane 中, 下面是代码 : JScrollPane myscrollpane=new JScrollPane(myTextArea); 常用方法 : setlinewrap(boolean wrap) getlinewrap() insert(string str,int pos) append(string str) getrows() setrows(int rows) getcolumns() setcolumns(int columns) 还有其他的一些方法, 可以查阅 API, 在练习的过程中, 也需要一点点体会 在 NetBeans 中使用 代码和运行图如下 : private void

19 jbuttonnowrapactionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : this.jtextareatest.setlinewrap(false); private void jbuttonwrapactionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : this.jtextareatest.setlinewrap(true);

20 Swing 单选按钮 (JRadioButton) 与复选框 (JCheckBox) JCheckBox 构造器 JCheckBox(Icon icon) JCheckBox(Icon icon,boolean selected) JCheckBox(String text) JCheckBox(String text,boolean selected) JCheckBox(String text,icon icon) 常用方法 :

21 isselected() setselected(boolean b) JRadioButton 构造器 JRadioButton(Icon icon) JRadioButton(Icon icon,boolean selected) JRadioButton(String text) JRadioButton(String text,boolean selected) JRadioButton(String text,icon icon) 因为单选按钮在某一时刻, 一组单选按钮中只能有一个被选中, 所以需要添加 ButtonGroup, 然后将相应的一组单选按钮添加到 ButtonGroup 中 这样才可以满足在一个时刻, 只有一个被选中 在 NetBeans 中使用 代码和运行图如下 // 定义一些方法和成员变量 private int style = java.awt.font.plain;

22 private int fontsize = 18; private void setstyle(int style) { this.style=this.style+style; private int getstyle() { return this.style; private void setfontsize(int fontsize) { this.fontsize=fontsize; private int getfontsize() { return this.fontsize; private void setlablefont() { this.jlabel1.setfont(new java.awt.font(" 宋 体 ",this.getstyle(),this.getfontsize()));

23 // 事件中的代码 private void jcheckbox2itemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : if(this.jcheckbox2.isselected()){ this.setstyle(java.awt.font.italic); else{ this.setstyle(-java.awt.font.italic); this.setlablefont(); private void jradiobutton3itemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : this.setfontsize(18); this.setlablefont(); private void jradiobutton2itemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 :

24 this.setfontsize(22); this.setlablefont(); private void jradiobutton1itemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : this.setfontsize(14); this.setlablefont(); private void jcheckbox1itemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : if(this.jcheckbox1.isselected()){ this.setstyle(java.awt.font.bold); else{ this.setstyle(-java.awt.font.bold); this.setlablefont();

25 编辑器面板 (JEditorPane) 他是 JTextComPonent 的子类, 可以显示多种格式内容, 例如 HTML RTF, 可以做简单的 HTML 浏览器的工具 构造器 : JEditorPane() JEditorPane(java.net.URL initialpage) JEditorPane(String url) JEditorPane(String type,string text) 常用方法 : addhyperlinklistener(hyperlinklistener listener)

26 gethyperlinklisteners() getpage() setpage(string url) setpage(java.net.url page) getstream(java.net.ual page) 在 NetBeans 中使用代码和运行图如下 private void jbuttongoactionperformed(java.awt.event.actionevent evt) { // 按钮事件 // TODO 将在此处添加您的处理代码 : String myurl=this.jtextfieldaddress.gettext().trim(); try{ if(myurl!= null &&! myurl.equals("")) jeditorpanehtml.setpage(myurl); catch(java.io.ioexception e){ e.printstacktrace();

27 private void jeditorpanehtmlhyperlinkupdate(javax.swing.event.hyperlinkev ent evt) { // 显示页面 // TODO 将在此处添加您的处理代码 : try{ if(evt.geteventtype()==javax.swing.event.hyperlinkevent.eventty pe.activated) jeditorpanehtml.setpage(evt.geturl()); catch(java.io.ioexception e){ e.printstacktrace();

28 第五章 5.1 Swing 列表 JList 创建代码 : String [] fruit={ apple, pear, orange, banana JList myjlist=new JList(fruit); 构造器 : JList() JList(Object [] listdata) JList(ListModel datamodel) JList(Vector listdata) 常见方法 : getselecttionforegroud()

29 setselectionforegroud(color selectionforegroud) getselectionbackgroud() setselectionbackgroud(color selectionbackgroud) getmodel() setmodel(listmodel model) setlistdata(object[] listdata) setlistdata(vector listdata) setselectionmode(int selectionmode) getselectionmode() getmaxselectionindex() getminselectionindex() isselectedeindex(int index) isselectionempty() clearselection() getselectedvalues() 在 NetBeans 中使用 代码和运行图如下 private void jtextfieldcountrynameactionperformed(java.awt.event.actioneve nt evt) { // TODO 将在此处添加您的处理代码 :

30 String countryname=this.jtextfieldcountryname.gettext().trim(); if(countryname!=null &&! countryname.equals("")){ this.imagevector.add(countryname); this.jlabelactionmessage.settext(" 你将 "+countryname+" 添加到列表中 "); this.jlistcountrylist.setlistdata(this.imagevector); else{this.jlabelactionmessage.settext(" 请先输入内容再添加 "); private void jbuttondeleteactionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : String countryname=(string)this.jlistcountrylist.getselectedvalue(); if(countryname!=null){ this.imagevector.remove(countryname); this.jlistcountrylist.setlistdata(imagevector); this.jlabelactionmessage.settext(" 你将

31 "+countryname+" 从列表中删除 "); else{ this.jlabelactionmessage.settext(" 请先选择一个选项 "); private void jbuttonaddactionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : String countryname=this.jtextfieldcountryname.gettext().trim(); if(countryname!=null &&! countryname.equals("")){ this.imagevector.add(countryname); this.jlabelactionmessage.settext(" 你将 "+countryname+" 添加到列表中 "); this.jlistcountrylist.setlistdata(this.imagevector); else{ this.jlabelactionmessage.settext(" 请先输入内容再添加 ");

32 private void jlistcountrylistvaluechanged(javax.swing.event.listselectioneven t evt) { // TODO 将在此处添加您的处理代码 : String choosedcountry=(string)this.jlistcountrylist.getselectedvalue(); this.jlabelactionmessage.settext(" 你从列表中选择 "+choosedcountry+" 选项 "); 这是设计图

33 Swing 组合框 (JComboBox) 构造器 : JComboBox() JComboBox(Object[] items) JComboBox(Vector items) JComboBox(ComboBoxModel model) 常用方法 : setmodel(comboboxmodel amodel) getmodel() setselecteditem(object anobject) getselecteditem() setselectedindex(int anindex) getselectedindex()

34 additem(object anobject) removeitem(object anobject) removeitemat(int anindex) removeallitems() showpopup() hidepopup() setpopupvisible(boolean v) ispopupvisible() getitemcount() getitemat(int index) 在 NetBeans 中使用代码和运行图如下 // 先添加一个 JComboBox, 然后选择 model 属性, 删除原来的项, 添加新的项 private void jcomboboxloveritemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : String favor=(string)this.jcomboboxlover.getselecteditem(); this.jlabel1.settext(" 你喜欢 "+favor);

35 Swing 分割窗口 (JSplitPane) 用于将一个窗口分割成两个部分 构造器 JSplitPane() JSplitPane(int neworientation) JSplitPane( int neworientation,boolean newcontinuouslayout) 常用方法 : setdividersize(int newsize) getdividersize() setleftcomponent(component comp)

36 Component getleftcomponent() 实战 : 使用 NetBeans 构建 Swing 的综合例程 代码如下 : private void jbuttoncancelactionperformed(java.awt.event.actionevent evt) {

37 // TODO 将在此处添加您的处理代码 : this.jlabelmessage.settext(" 你按下了取消按钮 "); private void jbuttonenteractionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : this.jlabelmessage.settext(" 你按下了确定按钮 "); private void jcheckboxfigoitemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : if(this.jcheckboxbaggio.isselected()){ this.jlabelmessage.settext(" 你开始喜欢费戈了 "); else{ this.jlabelmessage.settext(" 你不喜欢费戈了 "); private void

38 jcheckboxbeakhamitemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : if(this.jcheckboxbaggio.isselected()){ this.jlabelmessage.settext(" 你开始喜欢贝克汉姆了 "); else{ this.jlabelmessage.settext(" 你不喜欢贝克汉姆了 "); private void jcheckboxbaggioitemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : if(this.jcheckboxbaggio.isselected()){ this.jlabelmessage.settext(" 你开始喜欢巴乔了 "); else{ this.jlabelmessage.settext(" 你不喜欢巴乔了 ");

39 private void jradiobuttondislikeitemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : this.jlabelmessage.settext(" 你选择了讨厌按钮 "); private void jradiobuttoncommonitemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : this.jlabelmessage.settext(" 你选择了一般按钮 "); private void jradiobuttonfavoritemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : this.jlabelmessage.settext(" 你选择了喜欢按钮 ");

40 private void jtextfieldaddressactionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : String address=this.jtextfieldaddress.gettext(); if(address!=null &&! address.equals("")){ this.jlabelmessage.settext(" 你输入了 "+address); else{ this.jlabelmessage.settext(" 你没有输入任何内容 "); private void jlistsportvaluechanged(javax.swing.event.listselectionevent evt) { // TODO 将在此处添加您的处理代码 : String sport=(string)this.jlistsport.getselectedvalue(); this.jlabelmessage.settext(" 你选择了 "+sport);

41 设计图如下 : 运行图如下 : 第 6 章 Swing 框架 JFrame 创建代码 : JLabel myjlabel=new JLabel( 使用 JFrame ); JFrame myjframe=new JFrame(); myjframe.add(myjlabel); 构造器 : JFrame()

42 JFrame(String title) JFrame(GraphicsConfiguration gc) JFrame(String tit;e,graphicsconfiguration gc) 常用方法 : setdefaultcloseoperation(int operation) getdefaultcloseoperation() updata(graphics g) setjmenubar(jmenubar menubar) getjmenubar() settitle(string title) dispose() setresizable(boolean b) seticonimage(image images) setvislble(boolean b) setalwaysontop(boolean alwaysontop) isalwaysontop() 在 NetBeans 中使用 代码和运行图如下

43 运行效果图 private void jlistsizevaluechanged(javax.swing.event.listselectionevent evt) { // TODO 将在此处添加您的处理代码 : int framesize=this.jlistsize.getselectedindex(); switch(framesize){

44 case 0: this.setsize(300,200); this.jlabelmessage.settext(" 当前窗口大小 为 300*200"); break; case 1: this.setsize(400,300); this.jlabelmessage.settext(" 当前窗口大小 为 400*300"); break; case 2: this.setsize(650,400); this.jlabelmessage.settext(" 当前窗口大小 为 650*400"); break; case 3: this.setsize(800,600); this.jlabelmessage.settext(" 当前窗口大小 为 800*600"); break;

45 private void jcheckboxontopitemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : if(this.jcheckboxontop.isselected()){ this.setalwaysontop(true); this.jlabelmessage.settext(" 当前窗口总位于最前面 "); else{ this.setalwaysontop(false); this.jlabelmessage.settext(" 当前窗口不是总位于最前面 "); private void jcheckboxsizeitemstatechanged(java.awt.event.itemevent evt) { // TODO 将在此处添加您的处理代码 : if(this.jcheckboxsize.isselected()){ this.setresizable(true);

46 this.jlistsize.setenabled(true); this.jlabelmessage.settext(" 当前窗口可以改变 大小 "); else{ this.setresizable(false); this.jlistsize.setenabled(false); this.jlabelmessage.settext(" 当前窗口不可以改 变大小 "); Jpanel 的使用 Jpanel 是 swing 包中一个非常重要的控件, 在程序的开发中, 我们经常会使用到 Jpanel, 这样可以大大的规范我们的布局, 而却有些模式, 必须要用到 Jpanel Jpanel 与 Jframe 十分相像, 并却可以添加在 Jframe 上 在他的 Border 属性中, 我们可以选择 TitledBorder, 然后可以添加标题 这样我们的界面设计就会十分合理 Jpanel 的构造器, 与 Jframe 基本上大致相同, 在此不必多说 有关的问题, 都可以在 JDK 上面查到 下面, 我们来看一个例子

47 中介者的界面使用 : 创建一个 Jframe 和一个 Jpanel, 图形如下 : 在 Jframe 上添加一个 jpanel, 并去设置布局为 BorderLayout. 然后添加如下代码 : NewJPanel selectmanage=null;// 在类中声明添加按钮事件 :

48 private void jbutton1actionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : if(selectmanage==null){ selectmanage=new NewJPanel(); this.jpanel1.add(selectmanage,borderlayout.center); this.repaint(); this.jbutton1.settext("asd"); 运行效果图 :

49 关于图标问题我们使用 NetBeans 做好的页面, 都已经有了 NetBeans 所提供给我们的图标, 但是真正在完成一个项目的时候, 我们都要使用一个自己所做好的图标, 满足用户的需求 所以, 我们就来研究一下, 怎样自己设置图标 首先, 创建一个窗体, 并在该项目文件夹下, 放一个名字为 myico.gif 的图片 添加代码 : Image iconimage;// 在类中声明在该类下的构造函数下声明 iconimage=toolkit.getdefaulttoolkit().getimage("myico.gif"); this.seticonimage(iconimage); 效果图 :

50 大家可以看一下, 窗口的图标已经改变了 输入对话框的使用在我们设计程序的时候, 很多时候我们需要用到对话框 对话框有很多种类, 而且应用也十分广泛 在此, 我们先讲第一种, 那就是输入对话框 输入对话框的创建十分简单, 下面我们看一个例子 : 设计图

51 窗体上还有一个 Jlabel, 在 jbutton1 的事件下添加代码 : String title=new String(" 输入对话框 "); String message=new String(" 请在下面输入内容 "); int messagetype=joptionpane.information_message; String inputmessage=(string)joptionpane.showinputdialog(this,message,t itle,messagetype); if(inputmessage!=null &&! inputmessage.equals("")){ this.jlabel1.settext(" 你输入了 :"+inputmessage); else{ this.jlabel1.settext(" 你还没有输入任何内容!"); 效果图 :

52 这就是输入对话框的基本使用了, 你学会了吗? 如果你对对话框的使用, 还是不很了解的话, 让我们再来看下面 的一个例子 对于用户名和密码的判断 设计图 :

53 代码 : String name=this.jtextfield1.gettext(); String Password=new String(this.jPasswordField1.getPassword()); if( name.equals("adam") && Password.equals(" ")){ JOptionPane.showMessageDialog(this," 密码正确 "," 正确 ",JOptionPane.YES_OPTION,null); else{ 户名错误!"); String message=new String(" 对不起, 密码或用 String title=new String(" 错误!");

54 JOptionPane.showConfirmDialog(this,message,title,JOptionPane.O K_CANCEL_OPTION,JOptionPane.WARNING_MESSAGE,null); 效果图 : 其实对话框的使用很简单, 尤其是在 NetBeans 中, 只是在我们 需要使用对话框的时候, 写上 JOptionPane. 然后,NetBeans 自然 会把相关的对话框类型显示出来, 我们只是需要选择就可以了

55 其实, 使用 NetBeans, 最大的好处之一就是在于代码可以关联出 来, 这样就大大地节省了我们的开发时间, 而且避免了一些类似 于大小写的错误 文件选择器 (JFileChooser) 顾名思义, 文件选择器就是用来打开需要的文件的 使用文件选择器, 可以打开我们需要的文件 当然也可以设置一些过滤器, 这样可以过滤一些我们不需要的文件类型 文件选择器的使用非常广泛, 在很多软件中都应用得到 文件选择器的声明和使用都很简单 最简单的声明语句 :.JFileChooser filechooser = new JFileChooser(); 最简单的使用方法 : filechooser.showopendialog(this); 下面, 我们来看一个例子, 这样可以帮助我们更好地了解文件选择器的使用 : 效果图 : 包括一个按钮, 在窗体上有一个 Jpanel, 在 Jpanel 上有一个 JTextArea

56 声明部分 : private javax.swing.jfilechooser filechooser = new javax.swing.jfilechooser(); 添加两个文件类型过滤器 : class TxtFliter extends javax.swing.filechooser.filefilter { boolean flag; public boolean accept(file file){ if(file.getname().tolowercase().endswith(".txt")){ flag=true; else if(file.isdirectory()){ flag=true; else{ flag=false;

57 return flag; public String getdescription(){ return "TXT 文件 "; class JavaFliter extends javax.swing.filechooser.filefilter { boolean flag; public boolean accept(file file){ if(file.getname().tolowercase().endswith(".java")){ flag=true; else if(file.isdirectory()){ flag=true; else{ flag=false; return flag; public String getdescription(){

58 return "Java 文件 "; public void initfilechooser() { FileFilter [] filefilter=filechooser.getchoosablefilefilters(); int fsize=filefilter.length; for(int i=0;i<fsize;i++){ filechooser.removechoosablefilefilter(filefilter[i]); filechooser.addchoosablefilefilter(new TxtFliter()); filechooser.addchoosablefilefilter(new JavaFliter()); 在程序的构造函数中添加 : this.initfilechooser(); 在按钮的事件中添加 : filechooser.showopendialog(this);

59 File selectfile=filechooser.getselectedfile(); if(selectfile==null){ JOptionPane.showMessageDialog(this," 你没有选择要打开的文件!"," 提示 : ",JOptionPane.INFORMATION_MESSAGE); return; else{ int choose=joptionpane.showconfirmdialog(this," 你确定要打开文件吗? "," 请确认 ",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MES SAGE); if(choose==joptionpane.no_option){ JOptionPane.showMessageDialog(this," 你取消了打开文件 "," 提示 : ",JOptionPane.INFORMATION_MESSAGE); return; else{ String tempstring=""; BufferedReader buffread=null; String pathname=selectfile.getpath(); this.jtextfieldfilepath.settext(pathname);

60 try{ int size=(int)selectfile.length(); byte[] temparray=new byte[size]; FileInputStream fin=new FileInputStream(selectFile); fin.read(temparray); tempstring=new String(tempArray); this.jtextareacontent.settext(tempstring); catch(ioexception e){ e.printstacktrace(); 运行效果图 :

61 第 9 章 Swing 菜单 Swing 菜单是我们经常用到的一种控件,NetBeans 对菜单进行了很好的封装, 是我们应用起来非常方便 下面, 我们就来简单的了解一下 Swing 菜单 菜单 :Jmenu 菜单项 :JmenuItem 复选菜单项 :JcheckBocMenuItem 单选菜单项 :JradioButtonMenuItem 弹出式菜单 :JpopupMenu

62 下面来看一个简单的菜单程序 : 代码 : import java.awt.*; import javax.swing.*; public class DemoSimpleMenu extends JFrame{ JMenuBar jmenubarone; JMenu filemenu,editmenu,newfilemenu; JMenuItem openfile,closefile; JCheckBoxMenuItem newfiletxt,newfilejava; JRadioButtonMenuItem copyfile,pastefile; ButtonGroup buttonedit; /** Creates a new instance of DemoSimpleMenu */ public DemoSimpleMenu() { jmenubarone=new JMenuBar(); buttonedit=new ButtonGroup(); filemenu=new JMenu(" 文件 "); editmenu=new JMenu(" 编辑 "); newfilemenu=new JMenu(" 新建文件 "); openfile=new JMenuItem(" 打开文件 "); closefile=new JMenuItem(" 关闭文件 ");

63 newfiletxt=new JCheckBoxMenuItem(" 文本文件 "); newfilejava=new JCheckBoxMenuItem("Java 文件 "); copyfile=new JRadioButtonMenuItem(" 复制 "); pastefile=new JRadioButtonMenuItem(" 粘贴 "); buttonedit.add(copyfile); buttonedit.add(pastefile); this.setjmenubar(jmenubarone); jmenubarone.add(filemenu); jmenubarone.add(editmenu); filemenu.add(openfile); filemenu.add(closefile); filemenu.addseparator(); filemenu.add(newfilemenu); newfilemenu.add(newfiletxt); newfilemenu.add(newfilejava); editmenu.add(copyfile); editmenu.add(pastefile); this.settitle(" 菜单的简单使用 "); this.setbounds(100,100,250,150); this.setvisible(true); this.setdefaultcloseoperation(jframe.exit_on_close);

64 public static void main(string[] args) { new DemoSimpleMenu(); 运行图 : 好的, 现在大家已经能够明白菜单的层次结构了, 那么, 我 们下面再看一个例子 关于菜单的各种方法, 在此不作多说, 在 相关的帮助文档上, 都可以很清楚的查到 在 NetBeans 中使用菜单控件在添加菜单栏, 然后添加菜单, 然后在导航窗口右击菜单, 添加, 选择要添加的菜单项, 或者子菜单 如下图 :

65 然后在相应的菜单项上右击, 可以选择事件, 添加如下代码 : JFileChooser filechooser=new JFileChooser(); filechooser.showopendialog(this);// 打开文件菜单项 JFileChooser filechooser=new JFileChooser(); 效果图 : filechooser.showsavedialog(this);// 保存文件菜单项 这样, 我们就基本上掌握了菜单控件的开发方法, 下面, 我

66 们要来讲解一个关于弹出式菜单的例子 : 代码 : public class DemoJPopupMenu extends JFrame{ JMenu filemenu; JPopupMenu jpopupmenuone; JMenuItem openfile,closefile,exit; JRadioButtonMenuItem copyfile,pastefile; ButtonGroup buttongroupone; /** Creates a new instance of DemoJPopupMenu */ public DemoJPopupMenu() { jpopupmenuone=new JPopupMenu(); buttongroupone=new ButtonGroup(); filemenu=new JMenu(" 文件 "); openfile=new JMenuItem(" 打开 "); closefile=new JMenuItem(" 关闭 "); filemenu.add(openfile); filemenu.add(closefile); jpopupmenuone.add(filemenu); jpopupmenuone.addseparator(); copyfile=new JRadioButtonMenuItem(" 复制 "); pastefile=new JRadioButtonMenuItem(" 粘贴 "); buttongroupone.add(copyfile);

67 buttongroupone.add(pastefile); jpopupmenuone.add(copyfile); jpopupmenuone.add(pastefile); jpopupmenuone.addseparator(); exit=new JMenuItem(" 退出 "); jpopupmenuone.add(exit); MouseListener popuplistener=new PopupListener(jPopupMenuOne); this.addmouselistener(popuplistener); this.settitle(" 弹出式菜单的简单使用 "); this.setbounds(100,100,250,150); this.setvisible(true); this.setdefaultcloseoperation(jframe.exit_on_close); public static void main(string[] args) { new DemoJPopupMenu(); class PopupListener extends MouseAdapter{ JPopupMenu popupmenu; PopupListener(JPopupMenu popupmenu){ this.popupmenu=popupmenu;

68 public void mousepressed(mouseevent e){ showpopupmenu(e); public void mousereleased(mouseevent e){ showpopupmenu(e); private void showpopupmenu(mouseevent e){ if(e.ispopuptrigger()){ popupmenu.show(e.getcomponent(),e.getx(),e.gety()); 效果图 :

69 子 : 下面, 让我们最后再来看一个复选菜单项和单选菜单项的例 在每一个菜单项下的 StateChanged 下 : this.dealaction(evt);

70 最后 : public void dealaction(java.awt.event.itemevent evt) { if(evt.getsource()==jcheckboxmenuitembold){ if(jcheckboxmenuitembold.isselected()){ JOptionPane.showMessageDialog(this," 你选中了黑体复选菜单!"," 提示 : ",JOptionPane.INFORMATION_MESSAGE); else{ JOptionPane.showMessageDialog(this," 你取消了对黑体复选菜单的选择!"," 提示 : ",JOptionPane.INFORMATION_MESSAGE); else if(evt.getsource()==jcheckboxmenuitemitalic){ if(jcheckboxmenuitemitalic.isselected()){ JOptionPane.showMessageDialog(this," 你选中了斜体复选菜单!"," 提示 : ",JOptionPane.INFORMATION_MESSAGE); else{ JOptionPane.showMessageDialog(this," 你取消 了对斜体复选菜单的选择!"," 提示 :

71 ",JOptionPane.INFORMATION_MESSAGE); else if(evt.getsource()==jradiobuttonmenuitemeighteen){ if(jradiobuttonmenuitemeighteen.isselected()){ JOptionPane.showMessageDialog(this," 你选中了 18 号字体!"," 提示 :",JOptionPane.INFORMATION_MESSAGE); else{ JOptionPane.showMessageDialog(this," 你取消了对 18 号字体的选择!"," 提示 : ",JOptionPane.INFORMATION_MESSAGE); else if(evt.getsource()==jradiobuttonmenuitemsixteen){ if(jradiobuttonmenuitemsixteen.isselected()){ JOptionPane.showMessageDialog(this," 你选中了 16 号字体!"," 提示 :",JOptionPane.INFORMATION_MESSAGE); else{ JOptionPane.showMessageDialog(this," 你取消 了对 16 号字体的选择!"," 提示 :

72 ",JOptionPane.INFORMATION_MESSAGE); else if(evt.getsource()==jradiobuttonmenuitemtwenty){ if(jradiobuttonmenuitemtwenty.isselected()){ JOptionPane.showMessageDialog(this," 你选中了 20 号字体!"," 提示 :",JOptionPane.INFORMATION_MESSAGE); else{ JOptionPane.showMessageDialog(this," 你取消了对 20 号字体的选择!"," 提示 : ",JOptionPane.INFORMATION_MESSAGE); 效果图 :

73 关于图像 图像类 Image 一些常见的方法 : getimage(java.net.url) 通过指定的地址获取图像对象 例 :

74 Jframe jf=new Jframe(); Image ii=jf.gettoolkit().getimage( C;\\hello.gif ); 其实, 在程序开发的过程中, 图像对我们来说十分重要, 可以更好的美化我们的界面 一个成功的软件, 其界面的美化程度, 是十分重要的 在上面的例子中, 我们曾经举过一个关于窗口图标的例子, 那就是图像在程序开发中应用的一个很好的例子 下面, 我们再来看几个例子 : 源代码 : import java.awt.*; import javax.swing.*; public class DemoDrawImage extends JFrame { Image myimage; String imagenameone=new String("happy.jpg"); public DemoDrawImage() { ); myimage=toolkit.getdefaulttoolkit().getimage(imagenameone this.setbounds(250,150,450,300);

75 this.settitle("image 应用示例 "); this.validate(); this.setvisible(true); this.setdefaultcloseoperation(exit_on_close); public void paint(graphics g) { g.drawimage(myimage,0,0,this); //g.dispose(); public static void main(string args[]) { new DemoDrawImage(); 效果图 :

76 通过上面的这个例子, 我们就可以学会怎样获得图像了 下面, 我们来看一个例子, 学习怎样使用 GifEncoder 编码器 的程序的功能开发 创建一个窗体, 添加菜单, 还有菜单项, 具体见下图 : 窗体上还要有一个很大的 Jlabel, 来存放图片 下面是源代码 : private GifEncoder encoder ;

77 private JFileChooser filechooser = new JFileChooser(); private File selectfile = null; private File openedfile; private void openimagefile() { filechooser.showopendialog(this); openedfile=filechooser.getselectedfile(); if(openedfile==null) return; else{ this.jlabelimage.seticon(new ImageIcon(openedFile.getPath())); public void saveimageasgif() { try{

78 int saved=filechooser.showsavedialog(this); if(saved==jfilechooser.approve_option){ if(this.openedfile!=null){ File savefilename=filechooser.getselectedfile(); String filename=new String(saveFileName.getPath()+".gif"); FileOutputStream fileoutput=new FileOutputStream(fileName); InputStream ins=new FileInputStream(this.openedFile.toString()); BufferedImage srcimage=imageio.read(ins); encoder = new GifEncoder(srcImage, fileoutput); encoder.encode(); fileoutput.flush(); fileoutput.close(); ins.close();

79 catch(exception ea){ ea.printstacktrace(); 在相应的菜单项下添加相应的代码 : private void jmenuitem3actionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : System.exit(0); private void jmenuitem2actionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : this.saveimageasgif(); private void jmenuitem1actionperformed(java.awt.event.actionevent evt) {

80 // TODO 将在此处添加您的处理代码 : this.openimagefile(); 在这个程序开发的最重要的环节, 就是在 库 的位置上右 击, 添加 JAR 文件, 然后选择路径, 添加上 openmap.jar 的文件 效果图 :

81 那么, 通过上面的学习, 我们已经对 java 中的图像处理有了一定的了解了, 但是这些还不是很足够, 要想很好的应用, 必须进行充分的练习 那么, 下面, 我们再来看最后一个关于图像处理的例子 : 截图工具的开发 部署图 : 源代码 : private Image createimage() { try {// 截图代码开始

82 Image templocalimage=null; Robot robot=new Robot(); Dimension dimension= Toolkit.getDefaultToolkit().getScreenSize(); Rectangle scrrect=new Rectangle(0,0,dimension.width,dimension.height); templocalimage=robot.createscreencapture(scrrect); // 截图代码结束 return templocalimage; catch (AWTException ex) { ex.printstacktrace(); return null; private void jmenuitem4actionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : System.exit(0); private void

83 jmenuitem3actionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : this.jlabelshowicon.seticon(null); this.jmenuitem2.setenabled(false); this.jmenuitem3.setenabled(false); this.jmenuitem1.setenabled(true); private void jmenuitem2actionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : this.saveimage(); private void jmenuitem1actionperformed(java.awt.event.actionevent evt) { // TODO 将在此处添加您的处理代码 : jlabelshowicon.seticon(new ImageIcon(tempImage=this.createImage())); this.jmenuitem2.setenabled(true); this.jmenuitem3.setenabled(true); this.jmenuitem1.setenabled(false);

84 public void saveimage() { try { int saved=filechooser.showsavedialog(this); if(saved==jfilechooser.approve_option) { // 获取要保存 File savefilename=filechooser.getselectedfile(); // 获取要保存文件的名字 String filename=new String(saveFileName.getPath()+".jpg"); //1. 首先创建一个输出流 FileOutputStream fileoutput=new FileOutputStream(fileName); 实就是把输出流连接到编码器 //2. 然后把输出流用 JPEG 编码器进行包裹, 其 encoder=jpegcodec.createjpegencoder(fileoutput); // 把 BufferedImage 对象进行编码

85 encoder.encode((bufferedimage) tempimage); fileoutput.flush(); fileoutput.close(); catch(exception ea) { ea.printstacktrace(); private Image tempimage; private JPEGImageEncoder encoder; private JFileChooser filechooser=new JFileChooser(); 效果图 : 这是点击开始解图后的效果

86 点击文件另存为 : 这是截下来的图

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes What is a JavaBean? JavaBean Java JavaBean Java JavaBean JComponent tooltiptext font background foreground doublebuffered border preferredsize minimumsize maximumsize JButton. Swing JButton JButton() JButton(String

More information

Swing-02.pdf

Swing-02.pdf 2 J B u t t o n J T e x t F i e l d J L i s t B u t t o n T e x t F i e l d L i s t J F r a m e 21 2 2 Swing C a n v a s C o m p o n e n t J B u t t o n AWT // ToolbarFrame1.java // java.awt.button //

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes (Swing) AWTEvent Font LayoutManager 1 Classes in the javax.swing package Heavyweight FontMetrics Object Color Panel Applet JApplet Graphics Component Container Window Frame JFrame * Dialog JDialog JComponent

More information

第1章

第1章 第 18 章 Swing 1 本章提要 18.1 前言 18.2 Swing 介紹 18.3 視窗元件 18.3.1 JFrame 18.3.2 Content Pane 18.3.3 Menu Bar 18.4 Swing 元件 18.4.1 JCheckBox JRadioButton JComboBox 18.4.2 JTextField JPasswordField 18.4.3 JTable

More information

(CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787

(CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787 Web (CIP) Web /,. :,2005. 1 ISBN 7 81058 782 X.W............T P393.4 CIP (2004) 118797 Web ( 99 200436) ( http:/ / www.shangdapress.com 66135110) : * 787 1092 1/ 16 30.75 748 2005 1 1 2005 1 1 : 1 3 100

More information

Mac Java import com.apple.mrj.*;... public class MyFirstApp extends JFrame implements ActionListener, MRJAboutHandler, MRJQuitHandler {... public MyFirstApp() {... MRJApplicationUtils.registerAboutHandler(this);

More information

Microsoft Word - 正文.doc

Microsoft Word - 正文.doc 单元七 Java GUI 应用程序开发 1.AWT 及其图形界面组件 2.AWT 布局管理器 3.AWT 事件处理机制 案例 7-1 登录窗口 登录窗口是很多应用系统中不可缺少的组成部分 通过验证用户输入的用户名和密码, 决定是否允许用户进入系统, 在一定程度上保证系统的安全 本案例设计一个登录窗口, 运行 界面如图 7-1 所示 图 7-1 案例 7-1 登录窗口 众所周知, 拥有图形用户界面的计算机应用程序生动

More information

JavaIO.PDF

JavaIO.PDF O u t p u t S t ream j a v a. i o. O u t p u t S t r e a m w r i t e () f l u s h () c l o s e () public abstract void write(int b) throws IOException public void write(byte[] data) throws IOException

More information

chp6.ppt

chp6.ppt Java 软 件 设 计 基 础 6. 异 常 处 理 编 程 时 会 遇 到 如 下 三 种 错 误 : 语 法 错 误 (syntax error) 没 有 遵 循 语 言 的 规 则, 出 现 语 法 格 式 上 的 错 误, 可 被 编 译 器 发 现 并 易 于 纠 正 ; 逻 辑 错 误 (logic error) 即 我 们 常 说 的 bug, 意 指 编 写 的 代 码 在 执 行

More information

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 odps-sdk 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基 开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些

More information

授课内容 内容 图形界面与控制台应用的区别 (Console Application) 第 6 章图形用户界面图形用户界面 (Graphical User Interface,GUI), 使用图形方式借助菜单 按钮等标准界面元素和键盘 鼠标操作, 实现人机交互 内容和要求 : 掌握 Java Swi

授课内容 内容 图形界面与控制台应用的区别 (Console Application) 第 6 章图形用户界面图形用户界面 (Graphical User Interface,GUI), 使用图形方式借助菜单 按钮等标准界面元素和键盘 鼠标操作, 实现人机交互 内容和要求 : 掌握 Java Swi 金陵科技学院教案 第 9 10 11 次课授课学时 6 教案完成时间 : 2014.2 章 节 第六章图形用户界面 6-1 AWT 组件及其属性类 6-2 事件处理 6-3 Swing 组件及事件 6-4 图形图像 ( 以自学为主 ) 1. AWT 组件及其属性类 主要内容 2. 事件处理 3. Swing 组件及事件 4. 图形图像 目的与要求 1. 掌握 Java Swing 组件的使用方法,

More information

Microsoft Word - 投影片ch23

Microsoft Word - 投影片ch23 Java2 JDK5.0 教學手冊第三版洪維恩編著博碩文化出版書號 pg20210 第二十三章認識 Swing 本章學習目標 Swing 概述認識 JFrame 類別學習 Swing 的基本物件學習 Swing 物件之間的互動 認識 Swing 23-2 23.1 Swing 概述 Swing 提供了豐富的物件 更美觀的圖形介面, 以及更高的執行效率 幾乎每一個 AWT 物件都有一個相對應的 Swing

More information

java2d-4.PDF

java2d-4.PDF 75 7 6 G r a d i e n t P a i n t B a s i c S t r o k e s e t P a i n t ( ) s e t S t o r k e ( ) import java.awt.*; import java.awt.geom.*; public class PaintingAndStroking extends ApplicationFrame { public

More information

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题 2009 年 3 月 全 国 计 算 机 等 级 考 试 笔 试 试 卷 二 级 Java 语 言 程 序 设 计 ( 考 试 时 间 90 分 钟, 满 分 100 分 ) 一 选 择 题 ( 每 题 2 分, 共 70 分 ) 下 列 各 题 A) B) C) D) 四 个 选 项 中, 只 有 一 个 选 项 是 正 确 的 请 将 正 确 选 项 填 涂 在 答 题 卡 相 应 位 置 上,

More information

PowerPoint 簡報

PowerPoint 簡報 Paint 繪圖板 JAVA 程式設計 指導老師 : 鄞宗賢 組員 : 4A3G0901 劉彥佐 4A3G0907 韓偉志 畫面預覽 匯入參數 package paint; import java.awt.*; import java.awt.event.*; import javax.swing.*; 主程式 public class paint{ public static void main(string[]

More information

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 第 1 页共 32 页 crm Mobile V1.0 for IOS 用户手册 一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 二 crm Mobile 界面介绍 : 第 3 页共 32 页 三 新建 (New) 功能使用说明 1 选择产品 第 4 页共 32 页 2 填写问题的简要描述和详细描述 第 5 页共

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Java application Java main applet Web applet Runnable Thread CPU Thread 1 Thread 2 Thread 3 CUP Thread 1 Thread 2 Thread 3 ,,. (new) Thread (runnable) start( ) CPU (running) run ( ) blocked CPU sleep(

More information

<4D F736F F F696E74202D C DB5DA3132D5C25FCDBCD0CED3C3BBA7BDE7C3E6BBF9B4A12E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D C DB5DA3132D5C25FCDBCD0CED3C3BBA7BDE7C3E6BBF9B4A12E BBCE6C8DDC4A3CABD5D> 第 12 章图形用户界面基础 1 动因 为 Java GUI 程序设计而设计的 API 是如何应用面向对象 原则的绝佳范例 从本章开始将学习 Java GUI API 的框 架结构, 还要学习如何使用 GUI 组件为应用程序和 applet 开发用户友好接口 2 学习目标 区分 Swing 和 AWT 的不同 ( 第 12.2 节 ) 描述 Java GUI API 的层次体系结构 ( 第 12.3

More information

软件工程文档编制

软件工程文档编制 实训抽象类 一 实训目标 掌握抽象类的定义 使用 掌握运行时多态 二 知识点 抽象类的语法格式如下 : public abstract class ClassName abstract void 方法名称 ( 参数 ); // 非抽象方法的实现代码 在使用抽象类时需要注意如下几点 : 1 抽象类不能被实例化, 实例化的工作应该交由它的子类来完成 2 抽象方法必须由子类来进行重写 3 只要包含一个抽象方法的抽象类,

More information

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0, http://debut.cis.nctu.edu.tw/~chi Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0, : POSITIVE_INFINITY NEGATIVE_INFINITY

More information

基于CDIO一体化理念的课程教学大纲设计

基于CDIO一体化理念的课程教学大纲设计 Java 语 言 程 序 设 计 课 程 教 学 大 纲 Java 语 言 程 序 设 计 课 程 教 学 大 纲 一 课 程 基 本 信 息 1. 课 程 代 码 :52001CC022 2. 课 程 名 称 :Java 语 言 程 序 设 计 3. 课 程 英 文 名 称 :Java Programming 4. 课 程 类 别 : 理 论 课 ( 含 实 验 上 机 或 实 践 ) 5. 授

More information

ZW1.PDF

ZW1.PDF C. A. R. Hoare, The Emperor s Old Clothes Java C++ Objective C Eiffel Smalltalk Mesa Lisp Java Java Java C++ Java 10 Item 1 Item 2 String.equals() == 1 1 Item 3 Java C++ Java Item 4 Java Item 5 Java Item

More information

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6 www.brainysoft.net 1.JasperReport ireport...4 1.1 JasperReport...4 1.2 ireport...4 2....4 2.1 JDK...4 2.1.1 JDK...4 2.1.2 JDK...5 2.1.3 JDK...5 2.2 ant...6 2.2.1 ant...6 2.2.2 ant...6 2.3 JasperReport...7

More information

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌 语 言 程 序 设 计 郑 莉 胡 家 威 编 著 清 华 大 学 逸 夫 图 书 馆 北 京 内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌 握 语

More information

D C 93 2

D C 93 2 D9223468 3C 93 2 Java Java -- Java UML Java API UML MVC Eclipse API JavadocUML Omendo PSPPersonal Software Programming [6] 56 8 2587 56% Java 1 epaper(2005 ) Java C C (function) C (reusability) eat(chess1,

More information

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 JAVA 程 序 设 计 ( 肆 ) 徐 东 / 数 学 系 使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 使 用 Java class 代 表 保 险 箱 public class SaveBox 类 名 类 类 体 实 现 封 装 性 使 用 class SaveBox 代 表 保

More information

Microsoft Word - Broker.doc

Microsoft Word - Broker.doc Broker 模式 采用 broker 模式对分布式计算进行简单模拟 系统在一个进程内模拟分布式环境, 因此不涉及网络编程和进程间通信,Broker 通过本地函数调用的方式实现 request 和 response 的转发 采用 broker 模式对分布式计算进行简单的模拟, 要求如下 : 设计四个 server, 一个 server 接收两个整数, 求和并返回结果, 一个 server 接收两个整数,

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Fortran Algol Pascal Modula-2 BCPL C Simula SmallTalk C++ Ada Java C# C Fortran 5.1 message A B 5.2 1 class Vehicle subclass Car object mycar public class Vehicle extends Object{ public int WheelNum

More information

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票 复习 创建对象 构造函数 函数重载 : 函数 = 函数名 + 参数列表 public class MyType { int i; double d; char c; void set(double x)

More information

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double

More information

(京)新登字063号

(京)新登字063号 教 育 部 职 业 教 育 与 成 人 教 育 司 推 荐 教 材 Java 程 序 设 计 教 程 ( 第 二 版 ) 沈 大 林 主 编 沈 昕 肖 柠 朴 曾 昊 等 编 著 内 容 简 介 Java 是 由 美 国 SUN 公 司 开 发 的 一 种 功 能 强 大 的, 具 有 简 单 面 向 对 象 分 布 式 可 移 植 等 性 能 的 多 线 程 动 态 计 算 机 编 程 语 言

More information

无类继承.key

无类继承.key 无类继承 JavaScript 面向对象的根基 周爱 民 / aimingoo aiming@gmail.com https://aimingoo.github.io https://github.com/aimingoo rand = new Person("Rand McKinnon",... https://docs.oracle.com/cd/e19957-01/816-6408-10/object.htm#1193255

More information

Microsoft Word - 正文.doc

Microsoft Word - 正文.doc 第一部分基本实验 31 contentpane.add(p); setjmenubar(mb); // 将菜单项注册给事件监听者 File_Open.addActionListener(this); File_Close.addActionListener(this); File_Exit.addActionListener(this); Edit_Copy.addActionListener(this);

More information

EJB-Programming-4-cn.doc

EJB-Programming-4-cn.doc EJB (4) : (Entity Bean Value Object ) JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Session Bean J2EE Session Façade Design Pattern Session Bean Session

More information

res/layout 目录下的 main.xml 源码 : <?xml version="1.0" encoding="utf 8"?> <TabHost android:layout_height="fill_parent" xml

res/layout 目录下的 main.xml 源码 : <?xml version=1.0 encoding=utf 8?> <TabHost android:layout_height=fill_parent xml 拓展训练 1- 界面布局 1. 界面布局的重要性做应用程序, 界面是最基本的 Andorid 的界面, 需要写在 res/layout 的 xml 里面, 一般情况下一个 xml 对应一个界面 Android 界面布局有点像写 html( 连注释代码的方式都一样 ), 要先给 Android 定框架, 然后再在框架里面放控件,Android 提供了几种框架,AbsoluteLayout,LinearLayout,

More information

<4D F736F F F696E74202D20B5DA37D5C2204A617661B5C4CDBCD0CED3EBD3C3BBA7BDE7C3E62E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D20B5DA37D5C2204A617661B5C4CDBCD0CED3EBD3C3BBA7BDE7C3E62E BBCE6C8DDC4A3CABD5D> 第 7 章 Java 的图形与用户界面 7.1 概述 7.2 底层容器类 JFrame 和 JApplet 7.3 容器的布局 74 7.4 字体和颜色的使用 7.1 概述 利用 Java 中的图形 图像和重要的图形界面组件 (Componet) p 可以实现不同外观要求的窗口 图形和交互方式 1.java.awt awt 包 AWT 是抽象窗口工具集 Abstract Window Toolkit

More information

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d

More information

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit Tomcat Web JUnit Cactus JUnit Java Cactus JUnit 26.1 JUnit Java JUnit JUnit Java JSP Servlet JUnit Java Erich Gamma Kent Beck xunit JUnit boolean JUnit Java JUnit Java JUnit Java 26.1.1 JUnit JUnit How

More information

JAVA 单元 2.1 四则运算机 ( 一 ) 单元教学进度设计 教学环节 教学内容 教师学生活动活动 反馈 反馈课前作业完成情况 反馈加分 1. 下面哪些是合法的变量名? ( ) A.2variable 答案 :DEG B..variable2 解答 : C.._whatavariable A:/

JAVA 单元 2.1 四则运算机 ( 一 ) 单元教学进度设计 教学环节 教学内容 教师学生活动活动 反馈 反馈课前作业完成情况 反馈加分 1. 下面哪些是合法的变量名? ( ) A.2variable 答案 :DEG B..variable2 解答 : C.._whatavariable A:/ 单元 2.1 四则运算机 ( 一 ) 单元教学进度设计 教学环节 教学内容 教师学生活动活动 反馈 反馈课前作业完成情况 反馈加分 1. 下面哪些是合法的变量名? ( ) A.2variable 答案 :DEG B..variable2 解答 : C.._whatavariable A:// 不能以数字开头 D._3_ B:// 不能用点和空格 提问 抢答 E.$anothervar C: // 不能用点和空格

More information

Microsoft Word - 新1-12.doc

Microsoft Word - 新1-12.doc 实训 5 面向对象编程练习 实训 5 面向对象编程练习 5.1 实训目的 通过编程和上机实验理解 Java 语言是如何体现面向对象编程基本思想 以及如何创建类 和对象 了解成员变量和成员方法的特性 5.2 实训要求 编写一个体现面向对象思想的程序 编写一个创建对象和使用对象的方法的程序 5.3 实训内容 5.3.1 创建对象并使用对象 1 定义一个 Person 类 可以在应用程序中使用该类 成员属性

More information

LEFT, RIGHT // 左 // 右 (2) 当图片移动后, 按钮的坐标发生改变, 此操作通过 setloca tion() 方法实现 setlocation() 方法是从 Component 类继承的, 其定义如下 : public void setlocation(int x, int y

LEFT, RIGHT // 左 // 右 (2) 当图片移动后, 按钮的坐标发生改变, 此操作通过 setloca tion() 方法实现 setlocation() 方法是从 Component 类继承的, 其定义如下 : public void setlocation(int x, int y 拼图游戏 任务说明 本实例实现了拼图游戏的开发 运行程序, 单击 开始 按钮将打乱图片的位置, 效果如图 1 所示, 然后通过鼠标单击图片进行移动, 直到将所有图片都移动到正确位置, 游戏过关, 过关后的效果如图 2 所示 图 1 打乱图片位置的效果图 2 图片移动到正确位置的效果 关键技术 本程序主要通过 Swing 与枚举类实现, 程序将一幅完整的图片平均分成 9 部分, 每一部分为一个正方形,

More information

利用Java技术编写桌面软件基础

利用Java技术编写桌面软件基础 利 用 Java 技 术 编 写 桌 面 软 件 基 础 在 学 习 Java 编 程 语 言 的 细 节 和 语 法 时, 我 们 会 碰 到 这 样 一 个 问 题 : 开 发 桌 面 应 用 软 件 需 要 使 用 哪 些 Java 技 术, 应 当 引 入 哪 些 package? 这 一 问 题 的 答 案 取 决 于 开 发 的 应 用 软 件 类 型 和 它 的 作 用 这 篇 文 章

More information

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464>

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464> 第 1 章 进入 Photoshop 的全新世界 本章导读 Photoshop 1 1.1 Photoshop CS6 Photoshop Photoshop 1.1.1 Photoshop POP 1-1 图 1-1 平面广告效果 1.1.2 Photoshop 1-2 Photoshop CS6 Photoshop CS6 Photoshop CS6 Extended 3D 3 Photoshop

More information

《大话设计模式》第一章

《大话设计模式》第一章 第 1 章 代 码 无 错 就 是 优? 简 单 工 厂 模 式 1.1 面 试 受 挫 小 菜 今 年 计 算 机 专 业 大 四 了, 学 了 不 少 软 件 开 发 方 面 的 东 西, 也 学 着 编 了 些 小 程 序, 踌 躇 满 志, 一 心 要 找 一 个 好 单 位 当 投 递 了 无 数 份 简 历 后, 终 于 收 到 了 一 个 单 位 的 面 试 通 知, 小 菜 欣 喜

More information

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 Java V1.0.1 2007 4 10 1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 6.2.10 6.3..10 6.4 11 7.12 7.1

More information

Microsoft PowerPoint - ch02

Microsoft PowerPoint - ch02 第 一 篇 基 礎 圖 文 動 畫 (Basic Graphics / Animation) 2 1 簡 介 2 2 Frame Class 2 3 執 行 緒 繪 圖 流 程 2 4 Font Class 2 5 Color Class 2 6 中 文 處 理 2 7 習 題 (Exercises) 第 二 章 文 字 繪 製 (Words) 2 1 簡 介 本 書 探 討 的 是 動 畫 遊 戲,

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 -> 目录 1 大概思路... 1 2 创建 WebAPI... 1 3 创建 CrossMainController 并编写... 1 4 Nuget 安装 microsoft.aspnet.webapi.cors... 4 5 跨域设置路由... 4 6 编写 Jquery EasyUI 界面... 5 7 运行效果... 7 8 总结... 7 1 1 大概思路 创建 WebAPI 创建 CrossMainController

More information

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

2 Java 语 言 程 序 设 计 教 程 1.2.1 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难

2 Java 语 言 程 序 设 计 教 程 1.2.1 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难 第 1 章 Java 概 述 Java 的 诞 生 Java 的 特 点 Java 开 发 环 境 安 装 与 配 置 创 建 并 运 行 一 个 简 单 的 Java 程 序 Java 语 言 是 当 今 计 算 机 软 件 行 业 中 最 热 门 的 网 络 编 程 语 言, 以 Java 为 核 心 的 芯 片 技 术 编 译 技 术 数 据 库 连 接 技 术, 以 及 基 于 企 业 级

More information

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6: Chapter 15. Suppressed Exception CH14 Finally Block Java SE 7 try-with-resources JVM cleanup try-with-resources JVM cleanup cleanup Java SE 7 Throwable getsuppressed Throwable[] getsuppressed() Suppressed

More information

javaexample-02.pdf

javaexample-02.pdf n e w. s t a t i c s t a t i c 3 1 3 2 p u b l i c p r i v a t e p r o t e c t e d j a v a. l a n g. O b j e c t O b j e c t Rect R e c t x 1 y 1 x 2 y 2 R e c t t o S t r i n g ( ) j a v a. l a n g. O

More information

Microsoft Word - Java程序设计全文_终_.doc

Microsoft Word - Java程序设计全文_终_.doc 实训 20 综合开发 2: 文本编辑器 20.1 实训目的 通过采用 Netbeans 重新开发并完善实训 15 中的文本编辑器程序, 训练读者掌握使用 Netbeans 进行 AWT GUI 程序的综合开发技能 20.2 实训案例 下面介绍如何采用 Netbeans 重新开发并完善实训 15 中的文本编辑器程序 通过本实训, 读者能够掌握 : (1)GUI 的菜单设计 (2)GUI 国际化处理 (3)GUI

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 按钮对象 (button) 当 JavaScript 读到 标记中的 type 属性值为 button 时, 自动建立一个按钮对象, 并将该对象放到表单对象的 elements 数组当中 按钮对象包括 : 普通按钮 (button) 提交按钮 (submit) 重置按钮 (reset) 1. 使用按钮对象的格式 document.forms[ 索引值 ].elements[ 索引值

More information

( 二 ) 具 体 目 标 课 程 教 学 目 标 具 体 体 现 为 专 业 技 能 专 业 素 质 和 专 业 知 识 三 方 面 的 目 标 (1) 专 业 技 能 目 标 1 能 运 用 面 向 对 象 程 序 设 计 的 思 想 分 析 和 设 计 类 ; 会 定 义 接 口, 并 能 有

( 二 ) 具 体 目 标 课 程 教 学 目 标 具 体 体 现 为 专 业 技 能 专 业 素 质 和 专 业 知 识 三 方 面 的 目 标 (1) 专 业 技 能 目 标 1 能 运 用 面 向 对 象 程 序 设 计 的 思 想 分 析 和 设 计 类 ; 会 定 义 接 口, 并 能 有 JAVA 程 序 设 计 课 程 标 准 课 程 代 码 0830110 课 程 性 质 适 用 专 业 软 件 技 术 中 软 软 件 职 业 专 项 能 力 必 修 课 建 议 学 时 10 建 议 教 学 实 施 方 式 教 学 做 一 体 化 教 学 制 定 单 位 学 校 常 州 信 息 职 业 技 术 学 院 制 定 日 期 013.3.0 执 笔 JAVA 课 程 组 企 业 常 州

More information

chp9.ppt

chp9.ppt Java 软件设计基础 高级 GUI 设计与多媒体技术 1. 布局设计 布局概述 java.awt FlowLayout BorderLayout CardLayout GridLayout GridBagLayout java.swing BoxLayout ScrollPanelLayout ViewportLayout OverLayout FlowLayout 布局策略 将容器的组件按照加入的先后顺序从左至右依次排列,

More information

1.3 最终效果图 : 2 内部布局代码 2.1 按键按钮代码 // 初始化计算器上键的按钮, 将键放在一个画板内 JPanel keypanel = new JPanel(); // 用网格布局器,4 行,5 列的网格, 网格之间的水平方向间隔为 3 个象素, 垂直方向间隔为 3 个象素 keyp

1.3 最终效果图 : 2 内部布局代码 2.1 按键按钮代码 // 初始化计算器上键的按钮, 将键放在一个画板内 JPanel keypanel = new JPanel(); // 用网格布局器,4 行,5 列的网格, 网格之间的水平方向间隔为 3 个象素, 垂直方向间隔为 3 个象素 keyp 计算器 1. 计算器上的键的显示名字 1.0 继承 JFrame 类 public class Calculate extends JFrame { 1.1 定义常量 计算器上的键的显示名字 public final String[] KEYS = { "7", "8", "9", "/", "sqrt", "4", "5", "6", "*", "%", "1", "2", "3", "-", "1/x",

More information

X713_CS_Book.book

X713_CS_Book.book / / /USB ) ; ; C D ; ; B B 1 >> 2 3 B 1 ( > > ) 了解显示屏上显示的图标 Wap 信箱收到一条 Wap push 信息 GSM GPS ( ) 手机已连接到 GSM 网络 指示条越多, 接收质量越好 GPS 2 ...........................4.............................. 4 Micro SD (

More information

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c# using System; using HalconDotNet; public partial class HDevelopExport public HTuple

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c# using System; using HalconDotNet; public partial class HDevelopExport public HTuple halcon 与 C# 混合编程之 Halcon 代码调用 写在前面 完成 halcon 与 C# 混合编程的环境配置后, 进行界面布局设计构思每一个按钮所需要实现 的功能, 将 Halcon 导出的代码复制至相应的 C# 模块下即可 halcon 源程序 : dev_open_window(0, 0, 512, 512, 'black', WindowHandle) read_image (Image,

More information

2009年9月全国计算机等级考试二级Java真题及答案

2009年9月全国计算机等级考试二级Java真题及答案 2009 年 9 月 全 国 计 算 机 等 级 考 试 二 级 Java 真 题 及 答 案 [ 录 入 者 :NCRE100 时 间 :2009-10-08 19:41:34 作 者 : 来 源 :NCRE100.com 浏 览 :1421 次 ] 2009 年 9 月 全 国 计 算 机 等 级 考 试 二 级 笔 试 试 卷 Java 语 言 程 序 设 计 ( 考 试 时 间 90 分 钟,

More information

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj Message Transition 5-1 5-2 DataInputStream Class 5-3 DataOutputStream Class 5-4 PrintStream Class 5-5 (Message Transition) (Exercises) Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream

More information

ASP.NET实现下拉框二级联动组件

ASP.NET实现下拉框二级联动组件 ASP.NET 实现下拉框二级联动组件 namespace WebApplicationDlh using System.Drawing; using System.Web; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using Db; / / Area 的摘要说明 /

More information

untitled

untitled 1 Outline 料 類 說 Tang, Shih-Hsuan 2006/07/26 ~ 2006/09/02 六 PM 7:00 ~ 9:30 聯 ives.net@gmail.com www.csie.ntu.edu.tw/~r93057/aspnet134 度 C# 力 度 C# Web SQL 料 DataGrid DataList 參 ASP.NET 1.0 C# 例 ASP.NET 立

More information

幻灯片 1

幻灯片 1 图形界面程序设计 计算机信息系 课程引入说课提纲 案例 体验 双击运行 FiveMain.jar 文件, 和同桌一起体验下这个五子棋游戏, 并观察下这个游戏有哪些部分组成? 课程引入说课提纲 提出 问题 这个五子棋游戏和我们前几章完成的 学生综合素质评测系统 最大的区别是什么? 有什么优点或缺点吗? 1 图形用户界面是什么? 2 怎么用图形用户界面开发? 课程引入说课提纲 任务 任务名称 总任务 :

More information

untitled

untitled 1 MSDN Library MSDN Library 量 例 參 列 [ 說 ] [] [ 索 ] [] 來 MSDN Library 了 類 類 利 F1 http://msdn.microsoft.com/library/ http://msdn.microsoft.com/library/cht/ Object object 參 類 都 object 參 object Boxing 參 boxing

More information

[Short Essay:] 1. (5 points) Use state-of-memory diagram to describe the differences between x and y declared as follows: double[] x = new double[4];

[Short Essay:] 1. (5 points) Use state-of-memory diagram to describe the differences between x and y declared as follows: double[] x = new double[4]; Introduction to Programming (II) Spring 2008, Final Exam Name: ID Number: [True/False:] (5 points each) If your answer is "false", you have to provide correct reasons. Otherwise, no points will be given.

More information

(6) 要 求 付 款 管 理 员 从 预 订 表 中 查 询 距 预 订 的 会 议 时 间 两 周 内 的 预 定, 根 据 客 户 记 录 给 满 足 条 件 的 客 户 发 送 支 付 余 款 要 求 (7) 支 付 余 款 管 理 员 收 到 客 户 余 款 支 付 的 通 知 后, 检

(6) 要 求 付 款 管 理 员 从 预 订 表 中 查 询 距 预 订 的 会 议 时 间 两 周 内 的 预 定, 根 据 客 户 记 录 给 满 足 条 件 的 客 户 发 送 支 付 余 款 要 求 (7) 支 付 余 款 管 理 员 收 到 客 户 余 款 支 付 的 通 知 后, 检 2016 年 上 半 年 软 件 设 计 师 考 试 真 题 ( 下 午 题 ) 下 午 试 题 试 题 一 ( 共 15 分 ) 阅 读 下 列 说 明 和 图, 回 答 问 题 1 至 问 题 4, 将 解 答 填 入 答 题 纸 的 对 应 栏 内 说 明 某 会 议 中 心 提 供 举 办 会 议 的 场 地 设 施 和 各 种 设 备, 供 公 司 与 各 类 组 织 机 构 租 用 场

More information

Hive:用Java代码通过JDBC连接Hiveserver

Hive:用Java代码通过JDBC连接Hiveserver Hive: 用 Java 代码通过 JDBC 连接 Hiveserver 我们可以通过 CLI Client Web UI 等 Hive 提供的用户接口来和 Hive 通信, 但这三种方式最常用的是 CLI;Client 是 Hive 的客户端, 用户连接至 Hive Server 在启动 Client 模式的时候, 需要指出 Hive Server 所在节点, 并且在该节点启动 Hive Server

More information

FileMaker 16 ODBC 和 JDBC 指南

FileMaker 16 ODBC 和 JDBC 指南 FileMaker 16 ODBC JDBC 2004-2017 FileMaker, Inc. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker FileMaker Go FileMaker, Inc. FileMaker WebDirect FileMaker Cloud FileMaker,

More information

基于JAVA的连连看游戏设计

基于JAVA的连连看游戏设计 基 于 JAVA 的 连 连 看 游 戏 设 计 摘 要 :1978 年 第 一 款 PC 游 戏 冒 险 岛 在 美 国 问 世 至 今, 随 着 硬 件 和 软 件 水 平 的 不 断 进 步, 出 现 许 许 多 多 的 游 戏, 其 中 连 连 看 就 非 常 经 典 连 连 看 -- 在 一 个 画 好 的 格 局 内, 排 列 着 一 些 不 同 的 图 片, 选 中 两 张 一 样 的

More information

可 Web 编程的NativeUI 设计与实现

可 Web 编程的NativeUI  设计与实现 可 Web 编程的 NativeUI 设计与实现 张袁炜 zhangyuanwei@baidu.com 欢迎转岗简历请发 About Me @ 张袁炜 直达号 网址导航 百度 音乐 前端 Node.js Android Arduino RaspberryPI https://github.com/zhangyuanwei Outline 一个 Hybrid App 的进化史 Native UI 实现原理

More information

输入 project name 选择完成

输入 project name 选择完成 JAVA 程序访问 HighGo DB 的环境准备 山东瀚高科技有限公司版权所有仅允许不作任何修改的转载和转发 Hibernate 的配置 MyEclipse 中创建新项目 : 选择菜单栏 file---new---project 选择 web project 进行下一步 输入 project name 选择完成 4. 单击 " 添加 JAR/ 文件夹 ", 会如下图出现 JDBC 下载 Hibernate

More information

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

Microsoft Word - CX1000-HMI_程序开发_PLC通讯 用 VB.Net 开发 CX1000 的 HMI 第二部分和 TwinCAT PLC 通讯 一 TwinCAT 动态库 TwinCAT.Ads.dll The TwinCAT.Ads.dll 是一个.NET 类库, 它提供和 ADS 设备通讯的类 如果 TwinCAT PLC 运行在 IPC 上, 则需要添加的类库是路径 \TwinCAT\ADS Api\.NET\v1.1.4322 下的 TwinCAT.Ads.dll

More information

Learning Java

Learning Java Java Introduction to Java Programming (Third Edition) Prentice-Hall,Inc. Y.Daniel Liang 2001 Java 2002.2 Java2 2001.10 Java2 Philip Heller & Simon Roberts 1999.4 Java2 2001.3 Java2 21 2002.4 Java UML 2002.10

More information

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d =

More information

<4D F736F F F696E74202D C DB5DA3136D5C25FCAC2BCFEC7FDB6AFB3CCD0F2C9E8BCC62E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D C DB5DA3136D5C25FCAC2BCFEC7FDB6AFB3CCD0F2C9E8BCC62E BBCE6C8DDC4A3CABD5D> 第 16 章事件驱动程序设计 1 动因 假如希望编写一个 GUI 程序, 提示用户输入贷款总额 年利率和年数, 然后点击 Compute Loan 按钮获取月偿还 额和总偿还额 如何完成这个任务呢? 必须使用事件驱 动程序设计来编写代码以响应点击按钮事件 LoanCalculator Run 2 动因 假设希望编写程序用动画实现一面旗上升, 如图 16.1(b-d) 所示 如何完成这个任务呢? 解决这个问题的方式有好几

More information

F515_CS_Book.book

F515_CS_Book.book /USB , ( ) / L R 1 > > > 2, / 3 L 1 > > > 2 + - 3, 4 L 1 了解显示屏上显示的图标 Wap 信箱收到一条 Wap push 信息 ( ) GSM 手机已连接到 GSM 网络 指示条越多, 接收质量越好 2 ...........................4.............................. 4 Micro SD (

More information

Microsoft PowerPoint - course8.ppt

Microsoft PowerPoint - course8.ppt 回顧 Java 程式設計基礎班 (8) Java Data Structure 劉根豪台大電機所網路資料庫研究室 Email: kenliu@arbor.ee.ntu.edu.tw 1 2 Java AWT package Java Swing package Component: 一些 GUI 元件, 如 :Button Label 等 Container: 用來放置 GUI 元件的地方 Container

More information

Java 1 Java String Date

Java 1 Java String Date JAVA SCJP Java 1 Java String Date 1Java 01 Java Java 1995 Java Java 21 Java Java 5 1-1 Java Java 1990 12 Patrick Naughton C++ C (Application Programming Interface API Library) Patrick Naughton NeXT Stealth

More information

Microsoft Word - 第13章.doc

Microsoft Word - 第13章.doc 241 Java 从入门到精通 第 13 章 Swing 用户界面设计 AWT 存在缺少剪贴板 打印支持等缺陷, 甚至没有弹出式菜单和滚动窗口等, 因此 Swing 的产生也就成为必然 Swing 是纯 Java 实现的轻量级 (light-weight) 组件, 它不依赖系统的支持 本章主要讨论 Swing 组件基本的使用方法和使用 Swing 组件创建用户界面的初步方法 13.1 Swing 基础

More information

untitled

untitled 4.1AOP AOP Aspect-oriented programming AOP 來說 AOP 令 理 Cross-cutting concerns Aspect Weave 理 Spring AOP 來 AOP 念 4.1.1 理 AOP AOP 見 例 來 例 錄 Logging 錄 便 來 例 行 留 錄 import java.util.logging.*; public class HelloSpeaker

More information

Topic

Topic 二 级 JAVA 上 机 试 题 汇 编 第 01 套 : 1. 基 本 操 作 (1 小 题, 计 30 分 ) 在 考 生 文 件 夹 中 存 有 文 件 名 为 Java_1.java 的 文 件, 该 程 序 是 不 完 整 的, 请 在 注 释 行 //**********Found********** 下 一 行 语 句 的 下 划 线 地 方 填 入 正 确 内 容, 然 后 删 除

More information

untitled

untitled 1 Outline ArrayList 類 列類 串類 類 類 例 理 MSDN Library MSDN Library 量 例 參 列 [ 說 ] [] [ 索 ] [] 來 MSDN Library 了 類 類 利 F1 http://msdn.microsoft.com/library/ http://msdn.microsoft.com/library/cht/ Object object

More information

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入 100 年 特 種 考 試 地 方 政 府 公 務 人 員 考 試 試 題 等 別 : 三 等 考 試 類 科 : 資 訊 處 理 科 目 : 系 統 分 析 與 設 計 一 請 參 考 下 列 旅 館 管 理 系 統 的 使 用 案 例 圖 (Use Case Diagram) 撰 寫 預 約 房 間 的 使 用 案 例 規 格 書 (Use Case Specification), 繪 出 入

More information

附录J:Eclipse教程

附录J:Eclipse教程 附 录 J:Eclipse 教 程 By Y.Daniel Liang 该 帮 助 文 档 包 括 以 下 内 容 : Eclipse 入 门 选 择 透 视 图 创 建 项 目 创 建 Java 程 序 编 译 和 运 行 Java 程 序 从 命 令 行 运 行 Java Application 在 Eclipse 中 调 试 提 示 : 在 学 习 完 第 一 章 后 使 用 本 教 程 第

More information

图形学 Project 2 要求 任意两个多边形, 求出其相交的区域 使用说明 例 1 第一步, 与 Project 1 画多边形的方法相同, 画一个多边形 ; 第二步, 单击 INTERSECT WITH, 随后画出第二个多边形 ; 第三步, 单击 FILL 进行填充

图形学 Project 2 要求 任意两个多边形, 求出其相交的区域 使用说明 例 1 第一步, 与 Project 1 画多边形的方法相同, 画一个多边形 ; 第二步, 单击 INTERSECT WITH, 随后画出第二个多边形 ; 第三步, 单击 FILL 进行填充 图形学 Project 2 要求 任意两个多边形, 求出其相交的区域 使用说明 例 1 第一步, 与 Project 1 画多边形的方法相同, 画一个多边形 ; 第二步, 单击 INTERSECT WITH, 随后画出第二个多边形 ; 第三步, 单击 FILL 进行填充 例 2 单击 CLEAR, 重新回到初始状态, 下面让我们看一下自交多边形的情况 当单击数次后, 出现左图的情况, 之后我们单击

More information

(Microsoft Word - \272\364\263q\245|\244A_49636107_\304\254\253\330\336\263__\272\353\302\262\263\370\247i.doc)

(Microsoft Word - \272\364\263q\245|\244A_49636107_\304\254\253\330\336\263__\272\353\302\262\263\370\247i.doc) SCJP (Oracle Certified Professional, Java SE5/6 Programmer) 學 制 / 班 級 : 四 年 制 / 網 通 四 乙 指 導 老 師 : 方 信 普 老 師 學 生 學 號 / 姓 名 : 49636107 蘇 建 瑋 繳 交 年 份 : 100 年 6 月 一 SCJP 介 紹 SCJP 是 Sun Certified Java Programmer

More information

Java事件处理模型

Java事件处理模型 Java 事件处理模型 北京理工大学计算机学院 金旭亮 事件驱动 的软件系统 面向对象的软件系统许多是 事件驱动 的, 通常定义了一系列的事件, 并且事先规定好这些事件发生时应该如何响应 由于事件的发生通常是离散的, 所以 事件驱动 的软件系统并没有一个固定的执行流程 Java 的 GUI 应用程序也是 事件驱动 的 2014/11/17 金旭亮 Java 编程系列 (2014 版 ) 2 Java

More information

Microsoft Word - Java全文.doc

Microsoft Word - Java全文.doc 第 4 章事件模型与事件处理 本章导读 本章首先介绍事件处理的由来, 并描述基于窗口的事件驱动程序的流程, 接着详细阐述 AWT 事件处理模型, 主要涉及三类对象 : 事件源 监听器和事件处理方法, 并说明事件处理机制, 具体介绍事件类 事件监听器 AWT 事件及其相应的监听器接口 事件适配器和常用的四种对事件的响应, 最后介绍开发一个基于 Java 平台事件驱动模型的记事本的案例 本章要点 事件处理的流程和机制

More information

Spark读取Hbase中的数据

Spark读取Hbase中的数据 Spark 读取 Hbase 中的数据 Spark 和 Flume-ng 整合, 可以参见本博客 : Spark 和 Flume-ng 整合 使用 Spark 读取 HBase 中的数据 如果想及时了解 Spark Hadoop 或者 Hbase 相关的文章, 欢迎关注微信公共帐号 :iteblog_hadoop 大家可能都知道很熟悉 Spark 的两种常见的数据读取方式 ( 存放到 RDD 中 ):(1)

More information

chp11.ppt

chp11.ppt Java 软 件 设 计 基 础 Applet 程 序 1.Applet 概 念 Applet 与 Application Application 是 能 独 立 运 行 的 程 序 单 位 ; Applet 程 序 不 能 独 立 运 行, 必 须 依 附 在 网 页 上, 借 助 于 浏 览 器 才 能 运 行 通 常 置 于 服 务 器 端, 当 用 户 连 接 到 该 网 页,Applet

More information

untitled

untitled OGRE http://antsam.blogone.net AntsamCGD@hotmail.com OGRE OGRE listener listener target listener target Dispatcher Processor Input Reader Event class view Event Class view Input Event ctrlaltshift ascoll

More information

Microsoft Word - 正文.doc

Microsoft Word - 正文.doc 第 7 章 Java 中的 GUI 编程 图形用户界面 (Graphical User Interface,GUI) 使用图形的方式, 借助菜单 按钮等标准界面元素和鼠标操作, 帮助用户方便地向计算机系统发送指令, 启动操作, 并将系统运行的结果同样以图形方式显示给用户 图形用户界面操作简单, 省去了字符界面用户必须记忆各种命令的麻烦, 深受广大用户的喜爱和欢迎 所以学习设计和开发图形用户界面, 是应用软件开发人员的必修课

More information

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074> 程 序 设 计 实 习 INFO130048 3-2.C++ 面 向 对 象 程 序 设 计 重 载 继 承 多 态 和 聚 合 复 旦 大 学 计 算 机 科 学 与 工 程 系 彭 鑫 pengxin@fudan.edu.cn 内 容 摘 要 方 法 重 载 类 的 继 承 对 象 引 用 和 拷 贝 构 造 函 数 虚 函 数 和 多 态 性 类 的 聚 集 复 旦 大 学 计 算 机 科 学

More information

<4D6963726F736F667420576F7264202D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF>

<4D6963726F736F667420576F7264202D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF> 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 考 试 2009 年 上 半 年 软 件 设 计 师 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 请 按 下 述 要 求 正 确 填 写 答 题 纸 1. 在 答 题 纸 的 指 定 位 置 填 写 你 所 在 的 省 自 治 区 直 辖 市 计 划 单 列 市 的 名 称 2. 在 答

More information

Guava学习之Resources

Guava学习之Resources Resources 提供提供操作 classpath 路径下所有资源的方法 除非另有说明, 否则类中所有方法的参数都不能为 null 虽然有些方法的参数是 URL 类型的, 但是这些方法实现通常不是以 HTTP 完成的 ; 同时这些资源也非 classpath 路径下的 下面两个函数都是根据资源的名称得到其绝对路径, 从函数里面可以看出,Resources 类中的 getresource 函数都是基于

More information

手册 doc

手册 doc 1. 2. 3. 3.1 3.2 3.3 SD 3.4 3.5 SD 3.6 3.7 4. 4.1 4.2 4.3 SD 4.4 5. 5.1 5.2 5.3 SD 6. 1. 1~3 ( ) 320x240~704x288 66 (2G SD 320x2401FPS ) 32M~2G SD SD SD SD 24V DC 3W( ) -10~70 10~90% 154x44x144mm 2. DVR106

More information

使用Cassandra和Spark 2.0实现Rest API服务

使用Cassandra和Spark 2.0实现Rest API服务 使用 Cassandra 和 Spark 2.0 实现 Rest API 服务 在这篇文章中, 我将介绍如何在 Spark 中使用 Akkahttp 并结合 Cassandra 实现 REST 服务, 在这个系统中 Cassandra 用于数据的存储 我们已经见识到 Spark 的威力, 如果和 Cassandra 正确地结合可以实现更强大的系统 我们先创建一个 build.sbt 文件, 内容如下

More information

EJB-Programming-3.PDF

EJB-Programming-3.PDF :, JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Value Object Design Pattern J2EE Design Patterns Value Object Value Object Factory J2EE EJB Test Client

More information