115个Java面试题和答案——终极(下)

52.Java applet有哪些限制条件?

 

主要是由于安全的原因,给applet施加了以下的限制:

 

applet不能够载入类库或者定义本地方法。

applet不能在宿主机上读写文件。

applet不能读取特定的系统属性。

applet不能发起网络连接,除非是跟宿主机。

applet不能够开启宿主机上其他任何的程序。

 

53.什么是不受信任的applet?

 

不受信任的applet是不能访问或是执行本地系统文件的Java applet,默认情况下,所有下载的applet都是不受信任的。

 

54.从网络上加载的applet和从本地文件系统加载的applet有什么区别?

 

当applet是从网络上加载的时候,applet是由applet类加载器载入的,它受applet安全管理器的限制。

 

当applet是从客户端的本地磁盘载入的时候,applet是由文件系统加载器载入的。

 

从文件系统载入的applet允许在客户端读文件,写文件,加载类库,并且也允许执行其他程序,但是,却通不过字节码校验。

 

55.applet类加载器是什么?它会做哪些工作?

 

当applet是从网络上加载的时候,它是由applet类加载器载入的。类加载器有自己的java名称空间等级结构。类加载器会保证来自文件系统的类有唯一的名称空间,来自网络资源的类有唯一的名称空间。

 

当浏览器通过网络载入applet的时候,applet的类被放置于和applet的源相关联的私有的名称空间中。然后,那些被类加载器载入进来的类都是通过了验证器验证的。验证器会检查类文件格式是否遵守Java语言规范,确保不会出现堆栈溢出(stack overflow)或者下溢(underflow),传递给字节码指令的参数是正确的。

 

56.applet安全管理器是什么?它会做哪些工作?

 

applet安全管理器是给applet施加限制条件的一种机制。浏览器可以只有一个安全管理器。安全管理器在启动的时候被创建,之后不能被替换覆盖或者是扩展。

 

Swing

 

57.弹出式选择菜单(Choice)和列表(List)有什么区别

 

Choice是以一种紧凑的形式展示的,需要下拉才能看到所有的选项。Choice中一次只能选中一个选项。List同时可以有多个元素可见,支持选中一个或者多个元素。

 

58.什么是布局管理器?

 

布局管理器用来在容器中组织组件。

 

59.滚动条(Scrollbar)和滚动面板(JScrollPane)有什么区别?

 

Scrollbar是一个组件,不是容器。而ScrollPane是容器。ScrollPane自己处理滚动事件。

 

60.哪些Swing的方法是线程安全的?

 

只有3个线程安全的方法: repaint(), revalidate(), and invalidate()。

 

61.说出三种支持重绘(painting)的组件。

 

Canvas, Frame, Panel,和Applet支持重绘。

 

62.什么是裁剪(clipping)?

 

限制在一个给定的区域或者形状的绘图操作就做裁剪。

 

63.MenuItem和CheckboxMenuItem的区别是什么?

 

CheckboxMenuItem类继承自MenuItem类,支持菜单选项可以选中或者不选中。

 

64.边缘布局(BorderLayout)里面的元素是如何布局的?

 

BorderLayout里面的元素是按照容器的东西南北中进行布局的。

 

65.网格包布局(GridBagLayout)里面的元素是如何布局的?

 

GridBagLayout里面的元素是按照网格进行布局的。不同大小的元素可能会占据网格的多于1行或一列。因此,行数和列数可以有不同的大小。

 

66.Window和Frame有什么区别?

 

Frame类继承了Window类,它定义了一个可以有菜单栏的主应用窗口。

 

67.裁剪(clipping)和重绘(repainting)有什么联系?

 

当窗口被AWT重绘线程进行重绘的时候,它会把裁剪区域设置成需要重绘的窗口的区域。

 

本教程由尚硅谷教育大数据研究院出品,如需转载请注明来源。

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值