简述 Web 的工作原理
题目答案
www(world wide web 万维网)由遍布在互联网中的 web 服务器和安装了 web 浏览器 的计算机组成,它是一种基于超文本方式工作的信息系统。作为一个能够处理文字,图 像,声音,视频等多媒体信息的综合系统,它提供了丰富的信息资源,这些信息资源以
web 页面的形式分别存放在各个 web 服务器上,用户可以通过浏览器选择并浏览所需的 信息 . 客户机向服务器发送请求,要求服务器执行某项任务,服务器执行该项任务,并向客户 机返回响应
简述 Web 的工作原理
www(world wide web 万维网)由遍布在互联网中的 web 服务器和安装了 web 浏览器 的计算机组成,它是一种基于超文本方式工作的信息系统。作为一个能够处理文字,图 像,声音,视频等多媒体信息的综合系统,它提供了丰富的信息资源,这些信息资源以
web 页面的形式分别存放在各个 web 服务器上,用户可以通过浏览器选择并浏览所需的 信息 . 客户机向服务器发送请求,要求服务器执行某项任务,服务器执行该项任务,并向客户 机返回响应
两个对象值相同 (x.equals(y) == true) ,但却可有不同的 hash code ,这句话对不对?并简要说明理由。
答 对 。
如 果 对 象 要 保 存 在 HashSet 或 HashMap 中 , 它 们 的 equals 相 等 , 那 么 , 它 们 的 hashcode 值 就 必 须 相 等 。如果不是要保存在 HashSet 或 HashMap ,则与 hashcode没有什么关系了, 这时候 hashcode不等是可以的, 例如 arrayList 存储的对 象 就 不 用 实 现 hashcode , 当 然 , 我 们 没 有 理 由 不 实 现 , 通 常 都 会 去 实 现 的 。 对 。如 果 对 象 要 保 存 在 HashSet 或 HashMap 中 , 它 们 的 equals 相 等 , 那 么 , 它 们 的 hashcode 值 就 必 须 相 等 。如果不是要保存HashSet 或 HashMap ,则与 hashcode没有什么关系了, 这时候 hashcode不等是可以的, 例如 arrayList 存储的对象就不用实现 hashcode,当然,我们没有理由不实现,通常都会去实现的 。
根据线程安全的相关知识,分析以下代码,当调用 test 方法时 i>10 时是否会引起死锁?并简要说明理由。
public void test(int i)
{ lock(this)
{ if (i>10)
{i--;
test(i);
}}}
答:不会发生死锁,(但有一点 int 是按值传递的, 所以每次改变的都只是一个副本, 因此不会出现死锁。 但如果把 int 换做一个 object , 那么死锁会发生)
Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢 ? 是用= = 还是 equals()? 它们有何区别 ?
答:set 里的元素是不能重复的,用 iterator() 方法来区分重复与否。 equals 方法(是 String 类从它的超类 Object 中继承的)被用来检测两个对象是否相等,即两个对象的内容是否相等。 ==用于比较引用和比较基本数据类型时具有不同的功能: 比较基本数据类型,如果两个值相同,则结果为 true 而在比较引用时,如果引用指向内存中的同一对象,结果为 true
swtich 是否能作用在 byte 上,是否能作用在 long 上,是否能作用在 String 上?
答:switch (expr1 )中, expr1 是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int 、 short 、 char 或者 byte 。long,string 都不能作用于 swtich
接口是否可继承接口 ? 抽象类是否可实现 (implements) 接口? 抽象类是否可继承实体类 (concrete class)?
答: 1、接口是否可继承接口? 答:不可以。接口是要被实现而不是被继承的,加入你用词不当,问接口是否可实现接口,答案仍然是不能,因为接口里面的方法必 须全部是抽象方法,接口 A 实现了接口 B,那么 A 就要重写 B 的抽象方法,重写了之后, A 的性质也就不是接口 A 了,变成了抽象 类 A。
2、抽象类是否可实现接口? 答:可以。正如第一题所说。
3、抽象类是否可继承实体类? 答:可以