1.Applet和普通的Java应用程序有什么区别?

(1)运行方式不同。Java Applet程序不能单独运行,它必须依附于一个用HTML语言编写的网页并嵌入其中,通过与Java兼容的浏览器来控制执行。Java Application是完整的程序,可以独立运行,只要有支持Java的虚拟机,它就可以独立运行而不需要其他文件的支持。

(2)运行工具不同。运行Java Applet程序的解释器不是独立的软件,而是嵌在浏览器中作为浏览器软件的一部分。Java Application程序被编译以后,用普通的Java解释器就可以使其边解释边执行,而Java Applet必须通过网络浏览器或者Applet观察器才能执行。

(3)程序结构不同。每个Java Application程序必定含有一个并且只有一个main方法,程序执行时,首先寻找main方法,并以此为入口点开始运行。含有main方法的那个类,常被称为主类,也就是说,Java Application程序都含有一个主类。而Applet程序则没有含main方法的主类,这也正是Applet程序不能独立运行的原因。尽管Applet没有含main方法的主类,但Applet一定有一个从 java.applet.Applet派生的类,它是由Java系统提供的。

(4)Java Applet程序可以直接利用浏览器或AppletViewer提供的图形用户界面,而Java Application程序则必须另外书写专用代码来营建自己的图形界面。

(5)受到的限制不同Java Application程序可以设计成能进行各种操作的程序,包括读/写文件的操作,但是 Java Applet 对站点的磁盘文件既不能进行读操作,也不能进行写 操作。然而,由于 Applet的引入,使Web页面具有动态多媒体效果和可交互性能,这使由名为超文本、实为纯文本的HTML语言编写成的Web页面真正具有了超文本功能,不但可以显示文本信息,而且还可以有各种图片效果和动态图形效果,从而使页面显得生动美丽;另外,Applet使Web页面增加了按钮等功能,从而增加了交互性。

1

2

3

4

5

6

7

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

主要由于安全问题,给applet施加了以下的限制条件:

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

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

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

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

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

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

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

4.从网络上加载的applet和从本地加载的applet有什么区别?

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

当applet是从客户端的本地磁盘载入的时候,applet是由文件系统加载器载入的;从文件系统载入的applet允许在客户端读文件,写文件,加载类库,并且也允许执行其他程序,但是,确不通过字节码校验。

5.Applet类加载器是什么?他会做哪些工作?

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

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

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

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

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

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

8.什么是布局管理器?

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

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

滚动条是一个组件,不是容器。而滚动面板是容器。滚动面板自己处理滚动事件。

10.哪些Swings的方法是线程安全的?

只有三个线程安全的方法:repaint();revalidate();invalidate()。

模拟文件管理器的java可以编译但无法运行_在java学习经典问题he解答(6)相关推荐

  1. java程序编译成exe文件_将java程序编译成独立运行的exe文件

    将java程序编译成独立运行的exe文件 众所周知java的程序可以"一次编译,到处运行",这个特性不错,但是实现这个特性的前提是当前的平台 必须有相应的jvm,而且如果当前平台的 ...

  2. 杨老师课堂_Java核心技术下之控制台模拟文件管理器案例

    背景需求介绍: 编写一个模拟文件管理器的程序,实现控制台对文件和文件夹的管理操作. 要求在此程序中: 当用户输入指令 1 时,代表"指定关键字检索文件",此时需要用户输入检索的目录 ...

  3. java 反编译 手游_Java反编译器(DJ Java Decompiler)

    DJ Java Decompiler是一款强大易用的java反编译器,使用DJ Java Decompiler你可以反编译class文件并且可以保存为文本文件或其它格式,它可以从已经编译的二进制cla ...

  4. java dos编译命令是什么_在DOS命令行状态下,如果源程序HelloWorld.java在当前目录下,那么编译该程序的命令是()...

    [单选题]下列行为中,属于绝对商行为的是 [填空题]汽车故障的变化规律可分为3个阶段,早期故障期. 和 . [填空题]无分电器点火线圈与一般点火线圈不同,其 与 没有连接,为互感作用. [简答题]练习 ...

  5. java反编译微信小程序_微信小程序反编译的实现

    首先声明:本文章仅供学习之用,不可它用. 一.前言 看到人家上线的小程序的效果,纯靠推测,部分效果在绞尽脑汁后能做出大致的实现,但是有些细节,费劲全力都没能做出来.很想一窥源码?查看究竟?看看大厂的前 ...

  6. java源程序是由类定义_无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译后生成的都只有一个名为A的字节码文件...

    无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译后生成的都只有一个名为A的字节码文件 答:× 小儿头皮静脉输液时如误注入动脉,局部表现为: 答:呈树枝状苍白 人民群众既是历史 ...

  7. java反编译微信小程序_反编译微信小程序(最新)

    首先声明:本文章仅供学习之用,不可它用. 一.前言 看到人家上线的小程序的效果,纯靠推测,部分效果在绞尽脑汁后能做出大致的实现,但是有些细节,费劲全力都没能做出来.很想一窥源码?查看究竟?看看大厂的前 ...

  8. eclipse java不能编译_eclipse里.java可以编译但不能运行??

    我学过一点之前java,一直是在UE里写然后在cmd里运行,除了有点麻烦之外完全没问题.前几天开始做一个比较正式的project,于是装了个eclipse.新建工程后写了个HelloWorld.jav ...

  9. 图文详述:下载安装JDK,搭建Java开发环境,并运行第一个Java程序

    文章目录 前言 一.Java 三大版本 二.JDK.JRE和JVM 三.Java 开发准备 1. JDK 下载 2. JDK 安装 3. JDK 配置 (Java 开发环境搭建) 4. JDK 测试 ...

最新文章

  1. 从零开始学习Deep SORT+YOLO V3进行多目标跟踪(附代码)
  2. 【MySQL】(万字解析)MySQL表的增删改查(进阶-上)
  3. Redis 哈希结构内存模型剖析
  4. 64位十六进制转浮点数
  5. 在UWP中自定义半边框样式的输入框
  6. 设计模式复习-策略模式
  7. mysql主从复制排错
  8. mockjs语法规范、设置mockjs拦截响应时间、Mock.Random占位符生成随机数据
  9. juyter显示决策树图形_关于决策树可视化的treePlotter(学习笔记)
  10. jsf 导航_JSF页面导航示例教程
  11. 转 Spring是如何管理Hibernate和Struts的(二)
  12. 建立网站需要什么条件_教育学校网站建设有什么作用?学校建立网站为的是什么?...
  13. 一行代码即可删除C盘几十G垃圾,清理c盘垃圾的cmd命令
  14. 6108v9c卡刷包_[高安]华为EC6108V9C_mv100强制刷机固件包下载
  15. JavaScript实现DoublyLinkedList双链表的算法(附完整源码)
  16. 现代制造业信息化建设的主要内容
  17. Dell Latitude E6400找不到Broadcom USH及Contacted SmartCard驱动
  18. 关于tomcat中Host中appBase与docBase的关系
  19. python工程师的职业规划_一名Python开发工程师的职业规划
  20. mac win7 计算机,苹果电脑win7单系统更换OS X系统

热门文章

  1. wireshark: You don‘t have permission to capture on that device
  2. kali linux 2.0下安装ssh和metasploit
  3. Vue之路由beforeEach
  4. 目标检测工具安装使用--labelImg
  5. 服务器主板阵列创建!创建磁盘阵列RAID0、RAID1图文方法
  6. java web网上书城_javaweb网上书城项目
  7. mysql数据库undo日志恢复_MySQL的undo/redo日志和binlog日志,以及2PC
  8. Android Studio新建项目出错如何解决
  9. PHP和tp5—使用过得函数总结
  10. linux mysql 5.7.13 安装_mysql 5.7.13 安装配置方法图文教程(linux)