新浪笔试题
作者:莎仕比亚的围脖 | 来源:互联网 | 2024-12-27 19:32
1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return
1: 有如下一段程序&#xff1a; packagea.b.c; publicclass Test{ private static int i&#61;0; public int getNext(){ return i&#43;&#43;; } } packagea.b.c; publicclass TestB{ public static void main(String[] args){ Test test&#61;new Test(); System.out.println(test.getNext()); Test testObject&#61;new Test(); System.out.println(testObject.getNext()); System.out.println(test.getNext()); } } 请问最后打印出来的是什么&#xff0c;为什么&#xff1f; 结果&#xff1a; 0 1 2 因为静态变量是类变量而不是对象变量&#xff0c;在类中只会保存一份。 后缀&#43;&#43;先返回值然后再加加。 2: 有这么一段程序&#xff1a; Stringa&#61;new String("a"); Stringb&#61;"b"; Stringc&#61;a&#43;b; StringBufferstrBuf&#61;new StringBuffer(); strBuf.append("a"); strBuf.append("b"); Stringd&#61;strBuf.toString(); StringBuilderstrBuilder&#61;new StringBuilder(); strBuilder.append("a"); strBuilder.append("b"); Stringe&#61;strBuilder.toString(); 请问以上程序片段中c、d、e的字符串的创建各有什么不同&#xff1f; c是两个string相加&#xff0c;string是一个字符串常量&#xff0c;不可更改&#xff0c;相加会新开辟一段内存&#xff0c;把a、b两个字符串复制过去。 d是stringBuffer类对象&#xff0c;他会在内存开辟一段空间&#xff0c;然后直接操作内存&#xff0c;将字符串加在其后面&#xff0c;不会重新在另外地方开辟内存。在做大量的字符串相加的时候他的速度要大于String直接相加。 e是StringBuilder对象&#xff0c;他是StringBuffer对象的简化版&#xff0c;他是线程不安全&#xff0c;而StringBuffer是线程安全的所以在单线程中采用StringBuilder速度要快的多。 3: 描叙下final,finally, finalize的区别 final&#xff1a; 修饰一个变量或对象时表示表示一个常量&#xff0c;修饰方法的时候方法不能被重写&#xff0c;定义类表示类不能被重写。 finally &#xff1a;是错误处理所使用的关键字&#xff0c;他表示try代码块中无论发生不发生异常&#xff0c;finally里面的代码都必须执行。 finalize&#xff1a;是GC回收它所从属的对象时会调用的对象的方法。 4: 现有以下数据表结构&#xff0c;请按要求写出SQL语句 购物人 商品名称 数量 A 甲 2 B 乙 4 C 丙 1 A 丁 2 B 丙 5 查出所有购入商品为两种或两种以上的购物人记录 SELECT * FROM tableName WHERE 购物人 IN ( SELECT 购物人 FROM tableName GROUP BY 购物人 HAVING count(商品名称)>&#61;2 ) 5: 描叙下TCP协议三次握手过程 第一次握手&#xff1a;建立连接时&#xff0c;客户端发送syn包和一个随机序列号seq&#61;x到服务器&#xff0c;并进入SYN_SEND状态&#xff0c;等待服务器进行确认。&#xff08;syn&#xff0c;同步序列编号&#xff09;。第二次握手&#xff0c;服务器收到syn包&#xff0c;必须确认客户的SYN&#xff0c;然后服务器发送一个ACK&#61;1, SYN&#61;1, seq&#61;y的随机数和ack&#61;x&#43;1的确认数的包发送回去。第三次握手是客户端收到服务器端的SYN&#43;ACK包&#xff0c;然后向服务器端发送确认包ack&#61;y&#43;1,seq&#61;x&#43;1, ACK&#61;1,客户端和服务器端进入ESTABLISHED状态&#xff0c;完成三次握手。 6: 用java/php/C&#43;&#43;实现一个单例模式. public classTestSingle { private TestSingle() {} private static TestSingle single; static{ single &#61; new TestSingle(); } public synchronized static TestSingle getInstance() { if (single &#61;&#61; null) { single &#61; new TestSingle(); } return single; } } 7: 罗列你知道的排序算法,并注明他们的复杂度 冒泡排序法 复杂度是O(n2) 选择排序负 复杂度是O(n2) 插入排序法 复杂度是O(n2) 合并排序法 复杂度是O(nlgn) 快速排序法 复杂度是O(nlgn) 合并排序法 复杂度是O(nlgn) Shell排序法 复杂度是O(nlgn) 8: 用java/php/C&#43;&#43;实现快速排序算法 void qsort(inttest[], int left, int right) { int i &#61; left&#43;1, j &#61; right, tmp; int x &#61; test[left]; while(i<&#61;j) { while(test[i] <&#61; x && i<&#61; j) i&#43;&#43;; while(test[j] >&#61; x && j>&#61; i) j--; if(i { tmp &#61; test[i]; test[i] &#61; test[j]; test[j] &#61; tmp; i&#43;&#43;; j--; } } if(left !&#61; j) { test[left] &#61; test[j]; test[j] &#61; x; } if(left { qsort(test, left, j-1); } if(j&#43;1 { qsort(test, j&#43;1, right); } } 9: 名词解释&#xff1a;HTML5&#xff0c;CSS&#xff0c;STL&#xff0c;MYSQL,B-tree, Fedora. HTML5是HTML(超文本标记语言)的新一代标准&#xff0c;他在HTML4上删掉了一些标签增加了一些标签。 CSS是层叠样式表(Cascading Style Sheet)&#xff0c;通过设置一个或一组样式应用于HTML中&#xff0c;使页面的内容和布局表现相分离。 STL是C&#43;&#43;的标准模板类&#xff0c;包括vector、map、set、list等等&#xff0c;主要应用的是泛型思想实现了一些标准的类库和方法。 MYSQL是一个可以应用于windows和Linux下的开源的优秀的关系数据库系统&#xff0c;支持标准的SQL语句。 B-tree是多路搜索树&#xff0c;主要用于数据库基于键值的记录的存取或查找&#xff0c;或者用于硬盘中文件的节点。 Fedora是一个基于Linux的一个开源操作系统的一个版本&#xff0c;是从Red Hat Linux延伸出来的一个免费的版本。 10: 在linux下&#xff0c;需要每天凌晨4:30把 /abc目录下的文件归档并压缩为back20110615.tar.gz&#xff0c;描叙shell实现方式。 使用crontab来实现&#xff0c;格式如下 crontab -e 30 4 * * * tar -czvfback20110615.tar.gz /abc 11. 不能用来修饰interface的有&#xff08;&#xff09; A&#xff0e;private B&#xff0e;public C&#xff0e;protected D&#xff0e;static A C D&#xff0c;接口只能用public来修饰 12.System.out.println(-1>>>1) 输出什么. A.-1 B.1 C. 2147483647 D. -2147483647 C. java移位运算 >>>是无符号右移&#xff0c;左边补0 >>是有符号右移&#xff0c;左边补1 13. 下列有关Servlet的生命周期&#xff0c;说法不正确的是&#xff08;&#xff09;。 A、在创建自己的Servlet时候&#xff0c;应该在初始化方法init()方法中创建Servlet实例。 B、在Servlet生命周期的服务阶段&#xff0c;执行service()方法&#xff0c;根据用户请求的方法&#xff0c;执行相应的doGet()或是doPost()方法。 C、在销毁阶段&#xff0c;执行destroy()方法后系统立刻进行垃圾回收。 D、destroy()方法仅执行一次&#xff0c;即在服务器停止且卸载Servlet时执行该方法。 14. 关于异常处理机制的叙述哪些正确&#xff08;B C&#xff09;。 A. catch部分捕捉到异常情况时&#xff0c;才会执行finally部分 B. 当try区段的程序发生异常时&#xff0c;才会执行catch区段的程序 C. 不论程序是否发生错误及捕捉到异常情况&#xff0c;都会执行finally部分 D. 以上都是 编程题: 1. jsp有哪些内置对象?作用分别是什么? 2. 由于没有设置主键&#xff0c;表weibo有许多重复记录&#xff0c;写一个sql&#xff0c;把所有重复的记录删除掉&#xff0c;留下唯一的记录。 先选择出不重复的装到一个表里再重命名就可以了。 3. 写一个方法,输入任意一个整数,返回它的阶乘。 4. 写一个程序三个线程分别输出A,B,C, 顺序输出ABC十次。 5. 写一个二分查找算法,注意细节。
推荐阅读
本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ...
[详细]
蜡笔小新 2024-12-28 10:30:14
本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ...
[详细]
蜡笔小新 2024-12-28 09:46:23
本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ...
[详细]
蜡笔小新 2024-12-28 09:10:26
Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ...
[详细]
蜡笔小新 2024-12-28 08:54:34
本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ...
[详细]
蜡笔小新 2024-12-27 19:05:41
本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ...
[详细]
蜡笔小新 2024-12-27 17:40:42
c# – UWP:BrightnessOverride StartOverride逻辑 ...
[详细]
蜡笔小新 2024-12-27 16:56:40
本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ...
[详细]
蜡笔小新 2024-12-27 16:33:32
本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ...
[详细]
蜡笔小新 2024-12-27 16:07:12
本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ...
[详细]
蜡笔小新 2024-12-27 13:14:08
本文将详细介绍如何使用最新版WPS Office for Mac调整Word文档中的文字排列方向。通过这些步骤,用户可以轻松更改文本的水平或垂直排列方式,以满足不同的排版需求。 ...
[详细]
蜡笔小新 2024-12-27 12:34:14
本文详细介绍了如何在 Linux 平台上安装和配置 PostgreSQL 数据库。通过访问官方资源并遵循特定的操作步骤,用户可以在不同发行版(如 Ubuntu 和 Red Hat)上顺利完成 PostgreSQL 的安装。 ...
[详细]
蜡笔小新 2024-12-27 03:46:27
本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ...
[详细]
蜡笔小新 2024-12-26 17:45:48
本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ...
[详细]
蜡笔小新 2024-12-28 11:00:33
理解存储器的层次结构有助于程序员优化程序性能,通过合理安排数据在不同层级的存储位置,提升CPU的数据访问速度。本文详细探讨了静态随机访问存储器(SRAM)和动态随机访问存储器(DRAM)的工作原理及其应用场景,并介绍了存储器模块中的数据存取过程及局部性原理。 ...
[详细]
蜡笔小新 2024-12-27 12:06:47