|
一、选择题(下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项填在括号内)。 1.有如下SQL语句: select * from tb_user where username=? && password=? 则下列哪个选项可以执行该SQL语句。 ( ) A.Connection B.Statement C.PreparedStatement D.CallableStatement 2.下列哪个选项不是SQL语句中进行模糊查询可以使用的。 ( ) A.% B._ C.$ D.[] 3.有如下代码: st=conn.createStatement(); String sql="select id,name from tb_test"; rs=st.executeQuery(sql); while (_________){ System.out.print(rs.getInt("id")); System.out.print(rs.getString("name")); } 假设上面代码中的conn是一个有效的数据库连接对象,为了遍历查询结果集,则while右侧的空白处应添加的循环条件正确的是。 ( ) A.rs.next() B.!rs.next() C.rs.next != -1 D.rs.next == -1 4.如果要实现对数据库的更新操作,需要通过Statement的哪个方法。 ( ) A.executeQuerey() B.executeUpdate() C.getUpdateCount() D.close() 5.关于JTable表格的叙述正确的是。 ( ) A.可以使用数据数组和列名数组创建表格 B.可以使用数据向量和列名向量创建表格 C.为了使表格能显示表格标题和滚动条,可以将表格添加到滚动面板的视图中 D.以上说法都正确 6.下面关于没有添加到滚动面板视图中的JTable表格叙述正确的是。 ( ) A.默认显示表格标题 B.可以使用JTable类的getTableHeader()方法,获得JTableHeader对象(即表格头对象),然后将表格头对象添加到相应位置即可显示表格标题。 C.表格内容较多时默认显示滚动条 D.以上说法都正确 7.JTable类创建的表格,默认是可以对表格的单格进行编辑的,可以通过下列哪种方法使表格的单击格不可编辑。 ( ) A.重构JTable类的isCellEditable(int row, int column)方法,并使其返回false B.重构JTable类的isCellEditable(int row, int column)方法,并使其返回true C.可以通过重构JTable类的getDefaultRenderer(Class<?> columnClass)方法,并使其返回DefaultTableCellRenderer对象 D.以上说法都正确 8.JTable类创建的表格,默认是可以任意选择表格中的多行数据的,如果希望只允许选择表格中的一行数据,可以通过下面哪个选项来实现。 ( ) A.通过JTable类的setSelectionMode(int selectModel)方法,并将入口参数设置为ListSelectionModel类的静态常量SINGLE_SELECTION B.通过JTable类的setSelectionMode(int selectModel)方法,并将入口参数设置为ListSelectionModel类的静态常量SINGLE_INTERVAL_SELECTION C.通过JTable类的setSelectionMode(int selectModel)方法,并将入口参数设置为ListSelectionModel类的静态常量MULTIPLE_INTERVAL_SELECTION D.以上说法都不正确 9.JTable表格显示水平滚动条的必要选项是。 ( ) A.利用JTable类的setAutoResizeMode(int mode)方法,并将入口参数设置为JTable类的静态常量AUTO_RESIZE_OFF B.利用JTable类的setAutoResizeMode(int mode)方法,并将入口参数设置为JTable类的静态常量AUTO_RESIZE_NEXT_COLUMN C.利用JTable类的setAutoResizeMode(int mode)方法,并将入口参数设置为JTable类的静态常量AUTO_RESIZE_SUBSEQUENT_COLUMNS D.利用JTable类的setAutoResizeMode(int mode)方法,并将入口参数设置为JTable类的静态常量AUTO_RESIZE_ALL_COLUMNS 10.表格模型的下列方法不能向表格中添加数据行和改变表格单元格值的是。( ) A.addRow() B.insertRow() C.getValue() D.setValue() 11.要创建树的节点可以通过下面哪个类来实现。 ( ) A.JTree B.DefaultMutableTreeNode C.DefaultTreeModel D.以上各类均不能创建树的节点 12.DefaultMutableTreeNode类提供了如下遍历树节点的方法: ① preorderEnumeration() ② postorderEnumeration() ③ breadthFirstEnumeration() ④ depthFirstEnumeration() ⑤ children() 上面5个方法中有两种方法的遍历方法相同,则这两个方法是。 ( ) A.① 和 ② B.② 和 ③ C.② 和 ④ D.① 和 ⑤ 13.假设有一个树对象tree,则要使树对象不显示根节点,应该使用下面的哪个选项来对树进行设置。 ( ) A.tree.setRootVisible(true) B.tree.setRootVisible(false) C.tree.setShowsRootHandles(true) D.tree.setShowsRootHandles(false) 14.不是DefaultTreeCellRenderer类提供的修改树节点图标的方法是。 ( ) A.setLeafIcon(Icon newIcon) B.setClosedIcon(Icon newIcon) C.setOpenIcon(Icon newIcon) D.setExpandIcon(Icon newIcon) 15.通过JTree类的putClientProperty(Object key, Object value)方法可以对树节点之间的连接线进行设置,现有一个树对象tree,如果要使树节点之间显示水平分栏线,则下面设置正确的是。 ( ) A.tree.putClientProperty("JTree.lineStyle", "None"); B.tree.putClientProperty("JTree.lineStyle", "Angled"); C.tree.putClientProperty("JTree.lineStyle", "Horizontal"); D.以上都不正确 16.关于树模型的维护,下面叙述正确的是。 ( ) A.利用DefaultTreeModel类的insertNodeInto()方法可以向树模型中添加新的节点 B.修改树节点时,需要使用DefaultTreeModel类的nodeChanged(TreeNode node)方法来通知树模型,node节点已经被修改,否则如果修改的是节点的用户对象,修改信息将不会被同步到GUI界面 C.通过DefaultTreeModel类的removeNodeFromParent(MutableTreeNode node)方法可以从树模型中删除指定节点node,但是不能删除根节点 D.以上说法都正确 17.要处理树节点的选择与取消选择、展开和折叠事件,需要为树对象添加相应的监听器,则下列选项中不是处理树节点的选择与取消选择、展开和折叠事件的监听器。( ) A.TreeSelectionListener B.TreeWillExpandListener C.TreeExpansionListener D.TreeExpandListener 18.下面关于分割面板的叙述错误的是。 ( ) A.根据需要可以将分割面板设置为水平分割或垂直分割 B.分割面板默认不显示UI小部件,可以通过JSplitPane类的setOneTouchExpandable(boolean isProvide)方法并将入口参数设置为true,使用其显示UI小部件 C.通过JSplitPane类的setLeftComponent(Component comp)和setTopComponent(Component comp)两个方法都可以向分割面板的左侧或上侧添加组件 D.通过JSplitPane类的setLeftComponent(Component comp)方法只能向分割面板的左侧添加组件 19.下面关于选项卡面板的叙述错误的是。 ( ) A.通过JTabbedPane类创建的对象是一个选项卡面板 B.选项卡的标签只能显示文本而不能显示图标 C.使用JTabbedPane类的setTabPlacement(int tab)方法可以设置选项卡标签的显示位置 D.通过JTabbedPane类的setTabLayoutPolicy(int tabLayoutPolicy)方法可以设置选项卡标签的布局方式,也就是当标签显示不全时是自动换行(或换列)还是滚动显示 20.关于桌面面板和内部窗体的叙述正确的是。 ( ) A.JDesktopPane类创建的对象是桌面面板,桌面面板可以单独使用而不需要添加到其他容器中 B.JInternalFrame类创建的对象是内部窗体,内部窗体不需要依赖于其他组件,可以作为独立的窗体显示界面 C.内部窗体需要显示在由JDesktopPane类创建的桌面面板中 D.内部窗体可以可以脱离外部窗体单独显示 21.下列各选项中关于弹出菜单的叙述正确的是。 ( ) A.在使用弹出菜单时,需要先创建一个JMenuBar对象,并将弹出菜单添加到该对象上 B.在使用弹出菜单击可以通过MouseEvent鼠标事件的isPopupTrigger()方法判断此次鼠标事件是否为该组件的弹出菜单触发的,否则单击鼠标左键也会显示弹出菜单 C.通过JPopupMenu类可以创建弹出菜单对象,然后通过add()方法为其添加JMenuItem对象,使弹出菜单显示菜单项,如果弹出菜单还有子菜单可以将子菜单添加到JMenuItem对象上 D.将弹出菜单对象添加到组件上,这样组件就可以显示弹出菜单 22.在使用菜单时,可以对菜单进行订制,如添加图标、设置快捷键和加速器等,下面关于订制菜单的叙述不正确的是。 ( ) A.可以通过setIcon(Icon defaultIcon)方法为菜单或菜单项设置图标 B.通过方法setMnemonic(int mnemonic)或setMnemonic(char mnemonic)可以为菜单或菜单项设置快捷键,但所设置的快捷键是区分大小写的 C.通过setAccelerator(KeyStroke keyStroke)方法可以为菜单项设置加速器 D.可以通过setEnabled(boolean b)方法设置菜单的启用或禁用状态,如果设为true则表示启用菜单项,设为false则表示禁用菜单项,也可以通过该方法启用或禁用菜单 23.为了能够随意地将工具栏拖拽到窗体的四周,或使其成为浮动工具栏,应将工具栏放到窗体的什么位置。 ( ) A.将工具栏放到绝对布局窗体容器的顶部位置 B.将工具栏作为流布局窗体容器上的第一个组件 C.应将工具栏放到边界布局窗体容器的顶部位置 D.可以放到任意布局的窗体容器中 24.下面关于文件选择对话框的叙述正确的是。 ( ) A.默认情况下在文件选择对话框中每次只能选择一个文件,如果希望允许同时选择多个文件,可以调用setMultiSelectionEnabled(boolean b)方法进行设置,并将入口参数设为false B.文件选择对话框是不允许选择文件夹的 C.如果只希望在对话框中列出指定类型的文件,可以调用setFileFilter(FileFilter filter)方法设置文件过滤器 D.JFileChooser类的对象调用showOpenDialog(Component parent)方法可以显示文件选择对话框,该方法将返回一个boolean型值,用来判断用户是否选择了文件或路径 25.下面关于JProgressBar进度条的叙述不正确的是。 ( ) A.默认情况下为确定任务执行进度的进度条,填充区域会逐渐增大 B.如果并不确定任务的执行进度,可以通过调用方法setIndeterminate(boolean b)设置进度条的样式,设为true表示不确定任务的执行进度,填充区域会来回滚动,设为false则表示确定任务的执行进度 C.默认情况下在进度条中不显示提示信息,可以通过调用方法setStringPainted(boolean b)设置是否显示提示信息,设为true表示显示,设为false则表示不显示 D.如果是采用指示确定进度的进度条,进度条能够自动获取任务的执行进度,并以百分比的形式显示,如显示为“66%” 二、判断题(判断下面各题是否正确,正确的在括号内填Y,错误的在括号内填N)。 1.如果不使用滚动面板,而是将表格直接添加到相应的容器中,则需要通过JTable类的getTableHeader()方法获得JTableHeader类的对象,然后再将该对象添加到容器的相应位置,否则表格将不会显示表格标题。 ( ) 2.默认情况下,双击表格中的单元格是不可以对其进行编辑的。 ( ) 3.为了使表格能够显示水平滚动条,必须要将表格的自动调整功能关闭,否则即使将表格添加到滚动面板中也是不会产生水平滚动条的。 ( ) 4.在使用表格排序器时,通常要为其设置表格模型,否则表格将无法显示数据,当然也就不能对表格进行排序了。 ( ) 5.树状结构是一种常用的信息表现形式,树可以有多个根节点。 ( ) 6.按后序遍历和以深度优先遍历这两种遍历方式的具体遍历方法相同,实际上方法depthFirstEnumeration()只是调用了方法postorderEnumeration()。 ( ) 7.通过维护树模型,可以向树中添加节点、可以修改树中的节点、也可以删除树中的节点,但是树的根节点是不允许删除的。 ( ) 8.使用JInternalFrame类创建的对象是一个内部窗体,该内部窗体可以单独使用,而不需要添加到其他组件中进行显示。 ( ) 9.由于任何系统都支持系统托盘功能,因此在Java应用程序运行时可以利用SystemTray类为其添加系统托盘。 ( ) 10.利用Desktop类可以在Java应用程序中启动已经在本机上注册的应用程序,例如通过启动默认的浏览器显示指定的网站,打开或编辑指定的文件等。 ( ) 11.默认情况下由箱式布局管理的组件之间是没有间距的,如果希望组件之间具有固定的间距,可以通过支柱进行设置。 ( ) 12.当利用CardLayout类的next()方法或previous ()方法显示卡片时,将循环显示所有卡片,如果当前显示的是最后一个卡片,再调用方法next()将显示第一个卡片;如果当前显示的是第一个卡片,再调用方法previous ()将显示最后一个卡片。 ( ) 13.由GridBagLayout类实现的布局管理器称为网格组布局管理器,它实现了一个动态的矩形网格,这个矩形网格由无数个矩形单元格组成,每个组件在网格组布局管理器的容器中只能占用矩形网格中的一个单元格。 ( ) 14.网格组布局管理器的容器通过属性insets来设置组件四周与单元格边缘之间的最小距离。该属性的类型为Insets,Insets类仅有一个构造方法Insets(int top, int left, int bottom, int right),它的四个入口参数依次为组件上方、左侧、下方和右侧的最小距离,单位为像素,默认为没有距离。 ( ) 15.弹簧布局管理器以容器和组件的边缘为操纵对象,通过为组件和容器边缘以及组件和组件边缘建立约束,实现对组件布局的管理。 ( ) |