Net 笔试题 1:说说什么叫字符串不可变
string s="abc";s="123"字符串 s 不就变了吗
答:String 对象是不可改变的
每次使用 System
String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间
String 是不可变的
在这段代码中,s 原先指向一个 String 对象,内容是 "abc",然后我们将s 指向"123",那么 s 所指向的那个对象是否发生了改变呢
这时, s 不指向原来那个对象了,而指向了另一个 String 对象,内容为"123",原来那个对象还存在于内存之中,只是 s 这个引用变量不再指向它了
扩展:在需要对字符串执行重复修改的情况下,与创建新的 String 对象相关的系统开销可能会非常昂贵
如果要修改字符串而不创建新的对象,则可以使用 System
StringBuilder 类
例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder 类可以提升性能
net 笔试题 2:BS 与 CS 的联系与区别
答:C/S 是 Client/Server 的缩写
客户端需要安装专用的客户端软件
B/S是 Brow er/Server 的缩写,客户机上只要安装一个浏览器
在这种结构下,用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主要逻辑在服务器端实现
浏览器通过Web Server 同数据库进行数据交互
C/S 与 B/S 区别: 1).硬件环境不同: C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务
B/S 一般建立在广域网之上的, 有比C/S 更强的适应范围, 一般只要有操作系统和浏览器就行
2).对安全要求不同 C/S 一般面向相对固定的用户群