每日習題

1.101-200之間有多少個素數,打印出這些素數。(編程題)

void main(){
int i,j,c=0; //定義一些變量
for(i=101;i<=200;i++) //循環,以判斷101 到 200 間的質數
{
for(j=2;j<=i;j++)//循環,判斷當前數(i)是否是質數
    {
if(i%j==0) //是否還能被其他數整除
break;//還能被某個數整除,不是質數,退出當前循環
    }
if(j>=i)//如果以上循環是由於reak語句退出的,說明當前數i 還有其他因子,是合數
    {//此時,j < i,如果是滿足循環結束條件退出的,此時說明沒有其他因子,爲
//質數,此時 i == j,爲了保險,程序使用的判斷條件是 j >= i
c++;//計數,主要是用於控制輸出:每行10個
printf("%d ",i);//顯示結果
if(c%10==0)//計數是10的整數倍
printf("\n");//就輸出一個換行符
}
}
}

2.抽象類與接口的區別
抽象類:抽象類是用來捕捉子類的通用特性的,不能被實例化,只能被用作子類的超類。抽象類是被用來創建繼承層級裏子類的模板。
接口:接口是抽象類的集合。如果一個類實現了某個接口,那麼它就繼承了這個接口的抽象方法。這就像契約模式,如果實現了這個接口,那麼就必須確保使用這些方法。接口只是一種形式,接口本身不能做任何事情。

參數 抽象類 接口
默認的方法實現 它可以有默認的方法實現 接口完全是抽象的。它根本不存在方法的實現
實現 子類使用extends關鍵字來繼承抽象類。如果子類不是抽象類的話,它需要提供抽象類中所有聲明的方法的實現。 子類使用關鍵字implements來實現接口。它需要提供接口中所有聲明的方法的實現
構造器 抽象類可以有構造器 接口不能有構造器
與正常java類的區別 除了你不能實例化抽象類之外,它和普通Java類沒有任何區別 接口是完全不同的類型
訪問修飾符 抽象方法可以有public、protected和default這些修飾符 接口方法默認修飾符是public。你不可以使用其它修飾符
main方法 抽象方法可以有main方法並且我們可以運行它 接口沒有main方法,因此我們不能運行它
多繼承 抽象方法可以繼承一個類和實現多個接口 接口只可以繼承一個或多個其它接口
速度 它比接口速度要快 它需要時間去尋找在類中實現的方法
添加新方法 如果你往抽象類中添加新的方法,你可以給它提供默認的實現。因此你不需要改變你現在的代碼。 如果你往接口中添加方法,那麼你必須改變實現該接口的類。

何時使用:
1、如果擁有一些方法並且想讓它們中的一些默認實現,使用抽象類
2、如果想實現多重繼承,就必須使用接口。由於java不支持多繼承,子類不能夠繼承多個類,但可以實現多個接口,因此可以使用接口解決。
3、如果基本功能在不斷改變,就使用抽象類,如果不斷改變基本功能並且是使用接口們就需要改變所有實現該接口的類。
3.private的作用範圍

作用域 當前類 同一包(package) 子孫類 其他類(package)
public
protected ×
default × ×
private × × ×

4.說說你對於Java中容器的理解
容器可以管理對象的生命週期、對象與對象之間的依賴關係,可以使用一個配置文件(通常是XML),在上面定義好對象的名稱、如何產生(Prototype方式或Singletion方式),哪個對象產生之後必須設定爲某個對象的屬性等,在啓動容器後,所有的對象都可以直接取用,不用編寫任何一行程序代碼來產生對象,或是建立對象與對象之間的依賴關係。

數據容器主要分爲兩類:
Collecting:存放獨立元素的序列
Map:存放key-value型的鍵值對
最常用的四個容器:
LinkedList:數據結構採用的是鏈表,次結構的優勢是刪除和添加的效率很高,但隨機訪問元素是效率較ArrayList類低。
ArrayList:其數據結構採用的是線性表,次結構的優勢是訪問和查詢方便,但添加和刪除效率低。
HashSet:Set類不允許其中存在重複的元素(集),無法添加一個重要的元素(Set中已存在)。HasSet利用Hash函數進行了查詢效率上的優化,其contain()方法經常被使用,以用於判斷相關元素是否已被添加過。
HashMap:提供了key-value的鍵值對數據存儲機制,可以方便的通過鍵值查找相應的元素,而且通過Hash散列機制查找十分方便。
5.什麼是spring?談談你對spring的理解?
Spring是一個開源的設計層面框架,爲了解決企業應用程序開發複雜性二創建的。解決的是業務邏輯和其他各層的鬆耦合問題,將面向接口的編程思想貫穿整個系統應用。
其主要優勢是及時分層架構。
核心容器提供Spring框架的基本功能

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章