激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频

軟件研發(fā)工程師筆試題目及答案分享

時(shí)間:2024-11-04 22:19:56 飛宇 筆試題目 我要投稿
  • 相關(guān)推薦

軟件研發(fā)工程師筆試題目及答案分享

  筆試之前先找些相關(guān)公司的筆試題目來(lái)練練手吧,做到心里有數總不會(huì )錯的。以下是由應屆畢業(yè)生網(wǎng)小編J.L為您整理推薦的筆試題目和筆試經(jīng)驗,歡迎參考閱讀。

軟件研發(fā)工程師筆試題目及答案分享

  軟件研發(fā)工程師筆試題目及答案分享 1

  請在60分鐘內作答

  一、選擇題

  1、哪個(gè)類(lèi)是所有異常的基礎類(lèi) C

  A.String B.Error C.Throwable D.RuntimeException

  2、設float x = 1,y = 2,z = 3,則表達式 y+=z--/++x的值是:(A)

  A. 3.5 B. 3 C. 4 D. 5

  3、下列說(shuō)法正確的是(B )

  A.在類(lèi)方法中可用this來(lái)調用本類(lèi)的類(lèi)方法 B.在類(lèi)方法中調用本類(lèi)的類(lèi)方法時(shí)可直接調用

  C.在類(lèi)方法中只能調用本類(lèi)中的類(lèi)方法 D.在類(lèi)方法中絕對不能調用實(shí)例方法

  4、根據下面的程序代碼,哪些選項的值返回true

  public class Square {

  long width;

  public Square(long l) {

  width = l;

  }

  public static void main(String arg[]) {

  Square a, b, c;

  a = new Square(42L);

  b = new Square(42L);

  c = b;

  long s = 42L;

  }

  }

  A.a == b; B.s == a; C.b == c; D.a.equals(s)

  equals() 是Object類(lèi)的一個(gè)方法,指示某個(gè)其他對象是否與此對象“相等”。由于類(lèi) Object 是類(lèi)層次結構的根類(lèi)。所以它是每個(gè)類(lèi)的超類(lèi)。所示每個(gè)類(lèi)都可以重寫(xiě)equals()方法,如String類(lèi)。如果沒(méi)有重寫(xiě)(override)新類(lèi)的 equals(),則該方法和 == 操作符一樣在兩個(gè)變量指向同一對象時(shí)返回真,但是Java推薦的是使用equals()方法來(lái)判斷兩個(gè)對象的內容是否一樣?疾臁==”及方法 “equals()”的用法。注意以下幾點(diǎn)區別。

  引用類(lèi)型比較引用;基本類(lèi)型比較值。

  equals()方法只能比較引用類(lèi)型,“==”可比較引用及基本類(lèi)型。

  用equals()方法進(jìn)行比較時(shí),對類(lèi)File、String、Date及封裝類(lèi)(Wrapper Class)來(lái)說(shuō),是比較類(lèi)型及內容。

  用==”進(jìn)行比較時(shí),符號兩邊的數據類(lèi)型必須一致(可相互轉換的基本類(lèi)型除外),否則編譯出錯。

  在此題中,因為a,b,c是三個(gè)對象面,但是c=b這條語(yǔ)句,將c的內存地址指向了b,所以c和b指向了同一個(gè)地址,相當于c和b是同一個(gè)對象,由于== 操作符只有當兩個(gè)變量指向同一對象時(shí)返回真,故C是正確的。

  5. 下面選項中,哪個(gè)選項的內容可以作為FilEinputStream類(lèi)的構造方法的參數

  A.File B.String C.InputStream D.FileOutputStream

  主要參考FileInputStream的構造方法,FileInputStream類(lèi)的構造方法有3個(gè),可接受的參數分別是:File、FileDescriptor、String類(lèi)的一個(gè)對象

  6. 在下面程序標明的位置處插入哪條語(yǔ)句會(huì )導致編譯錯誤

  public class FinalUse {

  public static void main(String[] args) {

  int x = 0;

  final int y = 1;

  int[] z = { 2 };

  final int[] n = { 3 };

  Use(x, y, z, n);

  }

  static void Use(final int x, int y, final int[] z, int[] n) {

  // 插入內容

  }

  }

  請選擇兩個(gè)正確的答案:

  A.x++ B.y++ C.y=x D.z[0]++ E.n[0]++ F.z=n

  【試題分析】聲明形參的時(shí)候可以在方法調用的參數調用之前加上關(guān)鍵字final。final參數也可以叫做空白最終變量,也可以當作常量。即在對其賦值之前(例如方法調用之前),該變量為空(為初始化),賦值之后,在該變量的生存周期內只能調用再也不能改變變量的值。final變量只可以被賦值一次。在方法調用時(shí),final形式參數被賦予實(shí)際參數的值。在方法內部,不能對final參數進(jìn)行重新賦值或者是修改。

  

  在Use方法中,x是final類(lèi)型的,因此A選項中x++表示是可以改變x的值的,所以A會(huì )導致編譯錯誤。y,n[0]是int變量,所以y, n[0]值是可以變化的,因此插入B和E選項都會(huì )編譯通過(guò)的。C選項是把x的值賦給y,改變是y的內容,不會(huì )改變x的值,所以插入C選項會(huì )編譯通過(guò)的。在 D選項中,由于z是個(gè)int型數組,它是屬于復合類(lèi)型,在進(jìn)行值傳遞的時(shí)候,傳給形參的是地址值,而不是內容,因此final int[] z就表示z數組不能在指向其他的數組對象,但是z數組中的內容是可以改變的,因此z[0]++表示的是內容上的改變,所以是沒(méi)有錯誤的,可以編譯通過(guò)的。 F選項正好與D選項相反,同理,F就是錯誤的。

  【參考答案】AF

  7.下面程序運行后的結果是什么

  Public class Test{

  Static Boolean foo(char c){

  System.out.print(c);

  Return true;

  }

  Public static void main(String[] argv){

  int i=0;

  For(foo(‘A’);foo(‘B’)&&(i<2);foo(‘C’)){

  i++;

  foo(‘D’);

  }

  }

  }

  A.ABDCBDCB B.ABCDABCD

  C.Compilation fails. D.An exception is thrown at runtime.

  二、代碼查錯

  1.abstract class Name {

  private String name;

  public abstract boolean isStupidName(String name) {}

  }

  解釋何錯誤 并更正

  大括號錯誤

  2. public class Something {

  public static void main(String[] args) {

  Something s = new Something();

  System.out.println("s.doSomething() returns " + doSomething());

  }

  public String doSomething() {

  return "Do something ...";

  }

  }

  答案: 錯?瓷先ピ趍ain里call doSomething沒(méi)有什么問(wèn)題,畢竟兩個(gè)methods都在同一個(gè)class里。但仔細看,main是static的。static method不能直接call non-static methods?筛某"System.out.println("s.doSomething() returns " + s.doSomething());"。同理,static method不能訪(fǎng)問(wèn)non-static instant variable。

  三、簡(jiǎn)答題

  1、談?wù)凜ollection 和Collections

  2、請說(shuō)出String與StringBuffer、StringBuilder的區別

  String的`長(cháng)度是不可變的,StringBuffer的長(cháng)度是可變的。如果你對字符串中的內容經(jīng)常進(jìn)行操作,特別是內容要修改時(shí),那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法。

  3、abstract class(抽象類(lèi))和interface(接口)有什么區別

  【試題分析】抽象類(lèi)的特征如下:

  抽象類(lèi)和抽象方法都必須用abstract關(guān)鍵字來(lái)修飾。

  抽象類(lèi)不能被實(shí)例化,也就是不能用new關(guān)鍵字去產(chǎn)生對象。

  抽象方法只需聲明,而不需實(shí)現。

  抽象方法必須定義在抽象類(lèi)中,抽象類(lèi)的子類(lèi)必須實(shí)現父類(lèi)中的抽象方法,否則這個(gè)子類(lèi)還是個(gè)抽象類(lèi)。

  接口的特征如下:

  接口沒(méi)有構造方法。

  接口中聲明變量均為終極(final)的、靜態(tài)(static)的和公共(public)的。

  接口是定義的方法均為抽象的和公共的。

  接口里的數據成員必須初始化,且數據成員均為常量。

  【參考答案】聲明方法的存在而不去實(shí)現它的類(lèi)被叫做抽象類(lèi)(abstract class),它用于要創(chuàng )建一個(gè)體現某些基本行為的類(lèi),并為該類(lèi)聲明方法,但不能在該類(lèi)中實(shí)現該類(lèi)的情況。不能創(chuàng )建abstract 類(lèi)的實(shí)例。然而可以創(chuàng )建一個(gè)變量,其類(lèi)型是一個(gè)抽象類(lèi),并讓它指向具體子類(lèi)的一個(gè)實(shí)例。不能有抽象構造函數或抽象靜態(tài)方法。Abstract 類(lèi)的子類(lèi)為它們父類(lèi)中的所有抽象方法提供實(shí)現,否則它們也是抽象類(lèi)為。取而代之,在子類(lèi)中實(shí)現該方法。知道其行為的其它類(lèi)可以在類(lèi)中實(shí)現這些方法。

  

  接口(interface)是抽象類(lèi)的變體。在接口中,所有方法都是抽象的。多繼承性可通過(guò)實(shí)現這樣的接口而獲得。接口中的所有方法都是抽象的,沒(méi)有一個(gè)有程序體。接口只可以定義static final成員變量。接口的實(shí)現與子類(lèi)相似,除了該實(shí)現類(lèi)不能從接口定義中繼承行為。當類(lèi)實(shí)現特殊接口時(shí),它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實(shí)現了該接口的類(lèi)的任何對象上調用接口的方法。由于有抽象類(lèi),它允許使用接口名作為引用變量的類(lèi)型。通常的動(dòng)態(tài)聯(lián)編將生效

  4、request.getAttribute() 和 request.getParameter() 有何區別

  5、簡(jiǎn)述下Servlet生命周期

  6、 談?wù)勀沩椖恐杏玫降脑O計模式及如何使用的

  7、你一般用spring、hibernate、struts做什么

  四、代碼實(shí)現

  1、編寫(xiě)SQL語(yǔ)句

  Student(S#,Sname,Sage,Ssex) 學(xué)生表

  Course(C#,Cname,T#) 課程表

  SC(S#,C#,score) 成績(jì)表

  Teacher(T#,Tname) 教師表

  1) 查詢(xún)平均成績(jì)大于60分的同學(xué)的學(xué)號和平均成績(jì)

  select S#,avg(score)

  from sc

  group by S# having avg(score) >60;

  2) 查詢(xún)所有同學(xué)的學(xué)號、姓名、選課數、總成績(jì);

  select Student.S#,Student.Sname,count(SC.C#),sum(score)

  from Student left Outer join SC on Student.S#=SC.S#

  group by Student.S#,Sname

  3) 查詢(xún)沒(méi)學(xué)過(guò)“葉平”老師課的同學(xué)的學(xué)號、姓名

  select Student.S#,Student.Sname

  from Student

  where S# not in (select distinct( SC.S#) from SC,Course,Teacher where SC.C#=Course.C# and Teacher.T#=Course.T# and Teacher.Tname=’葉平’);

  2、第1個(gè)人10,第2個(gè)比第1個(gè)人大2歲,依次遞推,請用遞歸方式計算出第8個(gè)人多大

  用java語(yǔ)言實(shí)現,,請編一段程序實(shí)現!

  package cn.itcast;

  import java.util.Date;

  publicclass A1 {

  public static voidmain(String [] args)

  {

  System.out.println(computeAge(8));

  }

  public static int computeAge(intn)

  {

  if(n==1)return 10;

  returncomputeAge(n-1) + 2;

  }

  }

  public static voidtoBinary(int n,StringBuffer result)

  {

  if(n/2 != 0)

  toBinary(n/2,result);

  result.append(n%2);

  }

  3、實(shí)現一個(gè)快速排序

  本人只研究過(guò)冒泡排序、選擇排序和快速排序,下面是快速排序的代碼:

  public class QuickSort {

  /**

  * 快速排序

  * @param strDate

  * @param left

  * @param right

  */

  public void quickSort(String[] strDate,int left,int right){

  String middle,tempDate;

  int i,j;

  i=left;

  j=right;

  middle=strDate[(i+j)/2];

  do{

  while(strDate[i].compareTo(middle)<0&& i

  i++; //找出左邊比中間值大的數

  while(strDate[j].compareTo(middle)>0&& j>left)

  j--; //找出右邊比中間值小的數

  if(i<=j){ //將左邊大的數和右邊小的數進(jìn)行替換

  tempDate=strDate[i];

  strDate[i]=strDate[j];

  strDate[j]=tempDate;

  i++;

  j--;

  }

  }while(i<=j); //當兩者交錯時(shí)停止

  if(i

  quickSort(strDate,i,right);//從

  }

  if(j>left){

  quickSort(strDate,left,j);

  }

  }

  /**

  * @param args

  */

  public static void main(String[] args){

  String[] strVoid=newString[]{"11","66","22","0","55","22","0","32"};

  QuickSort sort=new QuickSort();

  sort.quickSort(strVoid,0,strVoid.length-1);

  for(int i=0;i

  System.out.println(strVoid[i]+" ");

  軟件研發(fā)工程師筆試題目及答案分享 2

  一、編程語(yǔ)言類(lèi)

  題目 1:以下 C++ 代碼輸出結果是什么?

  #include

  using namespace std;

  int main() {

  int a = 10;

  int &b = a;

  b = 20;

  cout << a << endl;

  return 0;

  }

  答案:20。因為 b 是 a 的引用,對 b 的操作就是對 a 的操作。

  題目 2:在 Java 中,以下代碼有什么問(wèn)題?

  java

  public class Main {

  public static void main(String[] args) {

  int[] array = new int[5];

  System.out.println(array[5]);

  }

  }

  答案:這段代碼會(huì )拋出 ArrayIndexOutOfBoundsException,因為數組索引是從 0 開(kāi)始的,長(cháng)度為 5 的數組最大索引為 4。

  二、數據結構類(lèi)

  題目 1:簡(jiǎn)述二叉搜索樹(shù)(BST)的特點(diǎn)。

  答案:

  若它的左子樹(shù)不空,則左子樹(shù)上所有結點(diǎn)的值均小于它的根結點(diǎn)的值。

  若它的右子樹(shù)不空,則右子樹(shù)上所有結點(diǎn)的值均大于它的根結點(diǎn)的值。

  它的左、右子樹(shù)也分別為二叉搜索樹(shù)。

  題目 2:請用代碼實(shí)現一個(gè)簡(jiǎn)單的棧(以數組實(shí)現為例,使用 Java)。

  java

  class Stack {

  private int[] stackArray;

  private int top;

  public Stack(int capacity) {

  stackArray = new int[capacity];

  top = -1;

  }

  public void push(int element) {

  if (top < stackArray.length - 1) {

  stackArray[++top] = element;

  } else {

  // 可以選擇擴展數組或拋出異常表示棧滿(mǎn)

  System.out.println("Stack is full.");

  }

  }

  public int pop() {

  if (top >= 0) {

  return stackArray[top--];

  }

  // 可以選擇拋出異常表示?

  System.out.println("Stack is empty.");

  return -1;

  }

  }

  三、算法類(lèi)

  題目 1:用 Python 實(shí)現快速排序算法。

  python

  def quick_sort(lst):

  if len(lst) <= 1:

  return lst

  pivot = lst[0]

  less = [element for element in lst[1:] if element <= pivot]

  greater = [element for element in lst[1:] if element > pivot]

  return quick_sort(less) + [pivot] + quick_sort(greater)

  題目 2:有一個(gè)有序數組,其中某個(gè)元素出現次數超過(guò)數組長(cháng)度的一半,請找出這個(gè)元素(時(shí)間復雜度盡量低,使用 C++)。

  #include

  using namespace std;

  class Solution {

  public:

  int majorityElement(vector& nums) {

  int count = 0;

  int candidate;

  for (int num : nums) {

  if (count == 0) {

  candidate = num;

  }

  if (num == candidate) {

  count++;

  } else {

  count--;

  }

  }

  return candidate;

  }

  };

  四、操作系統類(lèi)

  題目 1:進(jìn)程和線(xiàn)程的區別是什么?

  答案:

  進(jìn)程:是資源分配的'基本單位,擁有獨立的地址空間、代碼段、數據段等資源。進(jìn)程間通信相對復雜,如管道、消息隊列等。不同進(jìn)程間相互獨立,一個(gè)進(jìn)程崩潰一般不會(huì )影響其他進(jìn)程。

  線(xiàn)程:是 CPU 調度的基本單位,共享所屬進(jìn)程的資源,如內存空間、文件描述符等。線(xiàn)程間通信相對簡(jiǎn)單,可通過(guò)共享變量等方式。一個(gè)線(xiàn)程崩潰可能會(huì )導致整個(gè)進(jìn)程崩潰。

  題目 2:什么是虛擬內存?

  答案:虛擬內存是計算機系統內存管理的一種技術(shù)。它使得應用程序認為它擁有連續的可用內存(一個(gè)連續完整的地址空間),而實(shí)際上,它通常是被分隔成多個(gè)物理內存碎片,還有部分暫時(shí)存儲在外部磁盤(pán)存儲器上,在需要時(shí)進(jìn)行數據交換。這種技術(shù)可以讓系統運行比實(shí)際物理內存大得多的程序,提高內存利用率和系統的多任務(wù)處理能力。

【軟件研發(fā)工程師筆試題目及答案分享】相關(guān)文章:

熱門(mén)IT軟件的筆試題目分享08-19

思科筆試題,題目答案分享06-16

軟件測試筆試題目分享07-06

醫藥研發(fā)總監輝瑞筆試題目分享10-04

中興筆試題目分享有答案02-14

史上最全軟件筆試題目及答案10-09

中創(chuàng )軟件筆試主考題目分享07-25

軟件測試筆試面試題目分享04-07

邁瑞筆試題目硬件研發(fā)工程師09-03

激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频