久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

java程序員辭職報告

2023-03-19下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了這篇《java程序員辭職報告》及擴展資料,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《java程序員辭職報告》。

java程序員辭職報告

java程序員辭職報告1

敬愛的.it部經理:

您好!我是it專員xx-x,很遺憾在年底向公司提出辭職申請,遞交辭職報告我也是迫于無奈。

一方面,it部門在公司確實是一個比較不受重視的部門,經費有限,信息化程序不高,很多時間都是被白白浪費了。

二方面,由于到了談婚論嫁的年齡,在北京又買不起房子,所以選擇考慮回老家發展。

三方面,公司的工資實在是低得可憐,福利也不咱樣。

希望公司以后要想發展更好一些,這些方面還是為員工多考慮一些,可能會好一些的吧。

此致

敬禮!

辭職申請人:XXX

20xx年x月xx日

java程序員辭職報告2

大家好,我是XXX項目組的XXX,我于20xx年7月進入公司做JAVA程序開發,至今已近快一年時間了。初來公司,曾經很擔心不知該怎么與人共處,該如何做好工作;但是公司融洽的工作氛圍、團結向上的企業文化讓我較快適應了公司的工作環境。在本部的工作中,我一直嚴格要求自己,認真及時做好領導布置的每一項任務。不懂的問題虛心向同事請教,不斷提高充實自己,希望可以為公司做出更大的貢獻。當然,剛做這個項目的時候,難免出現一些小差小錯需領導指正;但前事之鑒,后事之師,這些經歷也讓我不斷成熟,在處理各種問題時考慮得更全面,杜絕類似失誤的發生。在此,我要特地感謝部門的領導和同事對我的指引和幫助,感謝他們對我工作中出現的失誤的提醒和指正。總結經驗是一個人迅速成長的.有利催化劑,為了更快地成為一名優秀的員工,現將我20xx年上半年的學習、工作情況總結如下:

20xx年初時,我們進銷存項目通過了一期客戶驗收。但是,隨著客戶業務的變化,項目需要做很大的改動和調整。現進銷存系統進入了二期的設計開發階段。初入公司的時候,我只負責財務模塊的存貨核算開發工作。隨著公司人員的變動,現在我負責財務管理整個模塊的開發工作。很明顯的能感覺的身上的壓力越來越大,也許是因為我的個性使然吧,越挫越勇,迎難而上。不斷的學習財務業務知識和本系統框架,現基本了解掌握了財務的整個業務邏輯及業務流程。因為沒有參與一期的原型、需求、設計、數據庫等文檔的設計。在開發過程中發現,有好多原型、需求文檔、設計文檔,只知其然,不知其所以然。總結一期經驗,避免二期開發中遇到同樣的問題和困難。從原型設計、談二期需求、整理需求文檔、數據庫設計、開發,一條龍負責到底。這樣對業務邏輯及業務流程有了更深的理解。從“我問”,到“我講”,有了很大的個人提高。提高軟件知識和技術只是問題的表面,本質是要提高自己認識問題、分析問題、解決問題的思想高度。在能勝任工作的基礎上,立即去涉獵其它領域的專業知識,豐富自己的知識體系、提高自己的綜合素質。我相信付出肯定會有收獲,在我們的努力下,進銷存系統一定會給客戶及公司一個滿意的答案。

在這一年里,我看到公司的迅速發展,各項制度的不斷完善,我很慶幸我是公司的一員,我會用謙虛的態度和飽滿的熱情做好我的本職工作,為公司創造價值,同公司一起創造美好的未來。

此致

敬禮!

辭職申請人:XXX

20xx年x月xx日

java程序員辭職報告3

尊敬的領導:

您好!我是XXX,于20xx年4月20日進入公司,并于7月20日轉為正式員工。屈指算來,入職已經將近大半年了。認真回顧過去的這大半年,我在公司學到了很多東西,無論是專業技能還是為人處事方面都有很大的提高,我也非常熱愛我的這份工作。

感謝公司在這一年里對我的培養和照顧,感謝您和其他同事們的傾心指導及熱情幫助。我在這里收獲很多,同時也為自己的離開給公司所帶來的'損失和不便感到深深的歉疚。

現在,本著對公司負責、對自己負責的原則,我將我辭職的原因(僅為我個人原因),簡要說明如下,請領導們審閱批準:

1。加班近兩個月,每天加班至少一個小時,沒有加班費,沒有餐補。可能有些人會不在意那頓飯,不在意那15塊錢。可是當你拿著數千甚至上萬的工資,吃著熱乎乎的飯時,有沒有想過您的那些低工資的員工們是怎么過的;

2。動不動就需要周六日來加班(加一天班,結算工資15塊,而請一天假扣工資卻是一百多,甚至更多!還不能調休(要是能調休,那為什么還要計薪,為什么不聽聽員工的心聲…);

3。公司成立數個月后,所謂的公司文化有所變動(中午開始做操,看著同事們做操感覺像是在看真實版的植物大戰僵尸,不過我也是其中一個),說同事們認同這項公司文化吧,可做操怎么就…;

4。中午吃飯連同休息時間也就1個小時,做個操還要占用休息時間,領導們都去遠的地方吃飯,回來甚至操都快做完了,而我們只能門口路邊攤,飯吃完了還沒休息幾分鐘就要做操了,感覺真累;

5。很少加薪,公司工資低。我都來公司這么久了,總聽領導說,你們某某(我也不知道說誰呢)都加薪了,可我怎么就沒加過薪,即使是100也是對員工心靈的一種安慰,或許是我還不夠優秀;

6。領導對員工的關心太少,也可能是領導們都忙,疏忽了對我們員工的關心(我們下午義務加班,而領導動不動就早早下班了,領導有事,我們員工天天都沒事嗎?);

7。公司不夠人性化(比如飲水機,禁網,工資算法)。

當然,在辭職請求未獲批準以前,我依然會把自己當成是公司的一員,依然會認真完成公司交給我的任務。

一直以來我非常珍惜這份工作,也非常想盡自己的最大的努力繼續做好這份工作,但是很多事情并不是跟自己預料的那樣,我現在必須向公司領導提出辭職。在此我表示深深的歉意,并希望能得到公司領導的準許!

此致

敬禮!

申請人:

時間:20xx年XX月XX日

java程序員辭職報告4

尊敬的經理:

您好!我是研發部程序員,今天很遺憾向您提出辭職申請,敬請批準。給貴公司造成麻煩,本人深表歉意。

貴公司工作的'時間里,我有幸得到了各位領導及同事們的傾心指導及熱情幫助,使我得到了很大程度的提高,在此感謝公司提供給我這個良好的平臺。

在這里,特別感謝各位領導在工作、生活中給予的大力支持與幫助;但是因本l人個人原因需要離職,望批準我的申請,在正式離開之前我將認真繼續做好目前的每一項工作。

祝公司事業蓬勃發展,前景燦爛。

此致

敬禮!

申請人:

時間:20xx年XX月XX日

java程序員辭職報告5

尊敬的經理:

您好!我是研發部程序員xxxx,今天很遺憾向您提出辭職申請,對于我的辭職實屬無奈之舉。下面是我的辭職報告內容:

我是畢業就過來公司,三年的編程經歷,雖然使我在各方面都提高了不少,然而離我實際的目標還是有很大的差距,這個跟公司和我自已都有關系,我覺得在公司里短期內不能讓我自己滿意。從目前的情況來看,在公司再待下去也不會有太大的改觀。

第一點、自我感覺職業生涯發展碰到了瓶頸;三年前是個程序員,現在也仍是程序員,雖然希望自己向技術管理方面發展,但是也沒有這樣的機會。從目前情況來看在公司繼續發展也看不到下步該如何走,可能仍是一個程序員。

第二點、技術上沒有太大的提高;三年來做了不少產品,但感覺技術提高仍沒有如自己所愿。三年前獨立做出了軟件,現在仍是吃老本,只是稍熟練點而己。三年來我也在一直不斷地學習,為公司的需要和自身的發展作著準備。從公司目前的產品發展方向來看,下一步能在技術上有大的`突破的機會也多。

第三點、薪資待遇未能如我愿;三年薪資雖然上漲了一些,到現在也可以說跟市場持平。但持平不是我想要的,到了這個階段應該有一個大的提高了,我更希望有一個質變了。在公司再發展下去也不一定能見漲多少。從公司現在的發展來看,現在需要的可能是經驗和薪資要求都適中的程序員。

總之,辭職是有多方面的原因,最主要還是我自已的原因,現在我申請辭職,希望領導能夠批準,我將盡最大努力做好交接工作。

此致

敬禮!

辭職申請人:xxx

20xx年x月xx日

java程序員辭職報告6

敬愛的it部經理:

您好!我是it專員xx—x,很遺憾在年底向公司提出辭職申請,遞交辭職報告我也是迫于無奈。

一方面,it部門在公司確實是一個比較不受重視的'部門,經費有限,信息化程序不高,很多時間都是被白白浪費了。

二方面,由于到了談婚論嫁的年齡,在北京又買不起房子,所以選擇考慮回老家發展。

三方面,公司的工資實在是低得可憐,福利也不咱樣。

希望公司以后要想發展更好一些,這些方面還是為員工多考慮一些,可能會好一些的吧。

此致

敬禮!

申請人:

時間:20xx年XX月XX日

java程序員辭職報告7

尊敬的經理:

您好!我是研發部程序員,今天很遺憾向您提出辭職申請,敬請批準。給貴公司造成麻煩,本人深表歉意。

貴公司工作的時間里,我有幸得到了各位領導及同事們的傾心指導及熱情幫助,使我得到了很大程度的提高,在此感謝公司提供給我這個良好的`平臺。

在這里,特別感謝各位領導在工作、生活中給予的大力支持與幫助;但是因本l人個人原因需要離職,望批準我的申請,在正式離開之前我將認真繼續做好目前的每一項工作。

祝公司事業蓬勃發展,前景燦爛。

此致

敬禮!

辭職申請人:xxx

20xx年x月xx日

JAVA程序員面試題

第一,談談final, finally, finalize的區別。

final?修飾符(關鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為 abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們在使用中不被改變。被聲明為final的變量必須在聲明時給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載。

finally?再異常處理時提供 finally 塊來執行任何清除操作。如果拋出一個異常,那么相匹配的 catch 子句就會執行,然后控制就會進入 finally 塊(如果有的話)。

finalize?方法名。Java 技術允許使用 finalize()方法在垃圾收集器將對象從內存中清除出去之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調用的。它是在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize()方法以整理系統資源或者執行其他清理工作。finalize()方法是在垃圾收集器刪除對象之前對這個對象調用的。

第二,Anonymous Inner Class(匿名內部類)是否可以extends(繼承)其它類,是否可以implements(實現)interface(接口)?

匿名的內部類是沒有名字的內部類。不能extends(繼承)其它類,但一個內部類可以作為一個接口,由另一個內部類實現。

第三,Static Nested Class 和 Inner Class的不同,說得越多越好(面試題有的很籠統)。

Nested Class(一般是C++的說法),Inner Class(一般是JAVA的說法)。Java內部類與C++嵌套類最大的不同就在于是否有指向外部的引用上。注: 靜態內部類(Inner Class)意味著1創建一個static內部類的對象,不需要一個外部類對象,2不能從一個static內部類的一個對象訪問一個外部類對象

第四,&和&&的區別。

&是位運算符。&&是布爾邏輯運算符。

第五,HashMap和Hashtable的區別。

都屬于Map接口的類,實現了將惟一鍵映射到特定的值上。

HashMap 類沒有分類或者排序。它允許一個 null 鍵和多個 null 值。

Hashtable 類似于 HashMap,但是不允許 null 鍵和 null 值。它也比 HashMap 慢,因為它是同步的。

第六,Collection 和 Collections的區別。

Collections是個java.util下的類,它包含有各種有關集合操作的靜態方法。

Collection是個java.util下的接口,它是各種集合結構的父接口。

第七,什么時候用assert。

斷言是一個包含布爾表達式的語句,在執行這個語句時假定該表達式為 true。如果表達式計算為 false,那么系統會報告一個 AssertionError。它用于調試目的:

assert(a > 0);// throws an AssertionError if a <= 0 斷言可以有兩種形式:

assert Expression1;

assert Expression1 : Expression2;Expression1 應該總是產生一個布爾值。

Expression2 可以是得出一個值的任意表達式。這個值用于生成顯示更多調試信息的 String 消息。

斷言在默認情況下是禁用的。要在編譯時啟用斷言,需要使用 source 1.4 標記:

javac-source 1.4 Test.java

要在運行時啟用斷言,可使用-enableassertions 或者-ea 標記。

要在運行時選擇禁用斷言,可使用-da 或者-disableassertions 標記。

要系統類中啟用斷言,可使用-esa 或者-dsa 標記。還可以在包的基礎上啟用或者禁用斷言。可以在預計正常情況下不會到達的任何位置上放置斷言。斷言可以用于驗證傳遞給私有方法的參數。不過,斷言不應該用于驗證傳遞給公有方法的參數,因為不管是否啟用了斷言,公有方法都必須檢查其參數。不過,既可以在公有方法中,也可以在非公有方法中利用斷言測試后置條件。另外,斷言不應該以任何方式改變程序的狀態。

第八,GC是什么? 為什么要有GC?(基礎)。

GC是垃圾收集器。Java 程序員不用擔心內存管理,因為垃圾收集器會自動進行管理。要請求垃圾收集,可以調用下面的方法之一:

System.gc()

Runtime.getRuntime().gc()

第九,String s = new String(“xyz”);創建了幾個String Object?

兩個對象,一個是“xyx”,一個是指向“xyx”的引用對象s。

第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;

第十一,short s1 = 1;s1 = s1 + 1;有什么錯? short s1 = 1;s1 += 1;有什么錯?

short s1 = 1;s1 = s1 + 1;有錯,s1是short型,s1+1是int型,不能顯式轉化為short型。可修改為s1 =(short)(s1 + 1)。short s1 = 1;s1 += 1正確。

第十二,sleep()和 wait()有什么區別? 搞線程的最愛

sleep()方法是使線程停止一段時間的方法。在sleep 時間間隔期滿后,線程不一定立即恢復執行。這是因為在那個時刻,其它線程可能正在運行而且沒有被調度為放棄執行,除非(a)“醒來”的線程具有更高的優先級(b)正在運行的線程因為其它原因而阻塞。

wait()是線程交互時,如果線程對一個同步對象x 發出一個wait()調用,該線程會暫停執行,被調對象進入等待狀態,直到被喚醒或等待時間到。

第十三,Java有沒有goto?

Goto?java中的保留字,現在沒有在java中使用。

第十四,數組有沒有length()這個方法? String有沒有length()這個方法? 數組沒有length()這個方法,有length的屬性。String有length()這個方法。

第十五,Overload和Override的區別。Overloaded的方法是否可以改變返回值的類型?

方法的重寫Overriding和重載Overloading是Java多態性的不同表現。重寫Overriding是父類與子類之間多態性的一種表現,重載Overloading是一個類中多態性的一種表現。如果在子類中定義某方法與其父類有相同的名稱和參數,我們說該方法被重寫(Overriding)。子類的對象使用這個方法時,將調用子類中的定義,對它而言,父類中的定義如同被“屏蔽”了。如果在一個類中定義了多個同名的方法,它們或有不同的參數個數或有不同的參數類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類型。

第十六,Set里的元素是不能重復的,那么用什么方法來區分重復與否呢? 是用==還是equals()? 它們有何區別?

Set里的元素是不能重復的,那么用iterator()方法來區分重復與否。equals()是判讀兩個Set是否相等。

equals()和==方法決定引用值是否指向同一對象equals()在類中被覆蓋,為的是當兩個分離的對象的內容和類型相配的話,返回真值。第十七,給我一個你最常見到的runtime exception。

ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

第十八,error和exception有什么區別?

error 表示恢復不是不可能但很困難的情況下的一種嚴重問題。比如說內存溢出。不可能指望程序能處理這樣的情況。exception 表示一種設計或實現問題。也就是說,它表示如果程序運行正常,從不會發生的情況。

第十九,List, Set, Map是否繼承自Collection接口? List,Set是

Map不是

第二十,abstract class和interface有什么區別?

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

接口(interface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過實現這樣的接口而獲得。接口中的所有方法都是抽象的,沒有一個有程序體。接口只可以定義static final成員變量。接口的實現與子類相似,除了該實現類不能從接口定義中繼承行為。當類實現特殊接口時,它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實現了該接口的類的任何對象上調用接口的方法。由于有抽象類,它允許使用接口名作為引用變量的類型。通常的動態聯編將生效。引用可以轉換到接口類型或從接口類型轉換,instanceof 運算符可以用來決定某對象的類是否實現了接口。

第二十一,abstract的method是否可同時是static,是否可同時是native,是否可同時是synchronized? 都不能

第二十二,接口是否可繼承接口? 抽象類是否可實現(implements)接口? 抽象類是否可繼承實體類(concrete class)?

接口可以繼承接口。抽象類可以實現(implements)接口,抽象類是否可繼承實體類,但前提是實體類必須有明確的構造函數。

第二十三,啟動一個線程是用run()還是start()?

啟動一個線程是調用start()方法,使線程所代表的虛擬處理機處于可運行狀態,這意味著它可以由JVM調度并執行。這并不意味著線程就會立即運行。run()方法可以產生必須退出的標志來停止一個線程。

第二十四,構造器Constructor是否可被override?

構造器Constructor不能被繼承,因此不能重寫Overriding,但可以被重載Overloading。

第二十五,是否可以繼承String類? String類是final類故不可以繼承。

第二十六,當一個線程進入一個對象的一個synchronized方法后,其它線程是否可進入此對象的其它方法?

不能,一個對象的一個synchronized方法只能由一個線程訪問。

第二十七,try {}里有一個return語句,那么緊跟在這個try后的finally {}里的code會不會被執行,什么時候被執行,在return前還是后? 會執行,在return前執行。

第二十八,編程題: 用最有效率的方法算出2乘以8等於幾? 有C背景的程序員特別喜歡問這種問題。<< 3

第二十九,兩個對象值相同(x.equals(y)== true),但卻可有不同的hash code,這句話對不對? 不對,有相同的hash code。

第三十,當一個對象被當作參數傳遞到一個方法后,此方法可改變這個對象的屬性,并可返回變化后的結果,那么這里到底是值傳遞還是引用傳遞?

是值傳遞。Java 編程語言只由值傳遞參數。當一個對象實例作為一個參數被傳遞到方法中時,參數的值就是對該對象的引用。對象的內容可以在被調用的方法中改變,但對象的引用是永遠不會改變的。

第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?

switch(expr1)中,expr1是一個整數表達式。因此傳遞給 switch 和 case 語句的參數應該是 int、short、char 或者 byte。long,string 都不能作用于swtich。

第三十二,編程題: 寫一個Singleton出來。

Singleton模式主要作用是保證在Java應用程序中,一個類Class只有一個實例存在。

一般Singleton模式通常有幾種種形式:

第一種形式: 定義一個類,它的構造函數為private的,它有一個static的private的該類變量,在類初始化時實例話,通過一個public的getInstance方法獲取對它的引用,繼而調用其中的方法。public class Singleton {

private Singleton(){}

//在自己內部定義自己一個實例,是不是很奇怪?

//注意這是private 只供內部調用

private static Singleton instance = new Singleton();

//這里提供了一個供外部訪問本class的靜態方法,可以直接訪問

public static Singleton getInstance(){

return instance;

} }

第二種形式:

public class Singleton {

private static Singleton instance = null;

public static synchronized Singleton getInstance(){

//這個方法比上面有所改進,不用每次都進行生成對象,只是第一次

//使用時生成實例,提高了效率!

if(instance==null)

instance=new Singleton();return instance;

} }

其他形式:

定義一個類,它的構造函數為private的,所有方法為static的。一般認為第一種形式要更加安全些 第三十三 Hashtable和HashMap

Hashtable繼承自Dictionary類,而HashMap是Java1.2引進的Map interface的一個實現

HashMap允許將null作為一個entry的key或者value,而Hashtable不允許

還有就是,HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因為contains方法容易讓人引起誤解。

最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在

多個線程訪問Hashtable時,不需要自己為它的方法實現同步,而HashMap

就必須為之提供外同步。

Hashtable和HashMap采用的hash/rehash算法都大概一樣,所以性能不會有很大的差異。

1:abstract的method是否可同時是static,是否可同時是native,是否可同時是synchronized?

2:當一個對象被當作參數傳遞到一個方法后,此方法可改變這個對象的屬性,并可返回變化后的

結果,那么這里到底是值傳遞還是引用傳遞?

3:Set里的元素是不能重復的,那么用什么方法來區分重復與否呢? 是用==還是equals()? 它們 有何區別?

4:構造器Constructor是否可被override?

5:當一個線程進入一個對象的一個synchronized方法后,其它線程是否可進入此對象的其它方法?

6:兩個對象值相同(x.equals(y)== true),但卻可有不同的hash code,這句話對不對

關于參數傳遞:

其實JAVA里對參數的傳遞在國際上都是一直有爭論的。包括《Think in java》里都提到了,Bruce Eckel 也沒給出定論。我覺得這很大程度上是由于規范不嚴格造成的。因為大家都知道參數傳遞的本質是什么,但描述方式不一樣,以致造成答案不一致。

現給一些參考:

第一,JAVA 里的參數傳遞只有值傳遞,沒有所謂的引用傳遞。(說白了,是因為大家的說法 不統一)

第二,引用一個強人的觀點 jamesfancy()邊城狂人(James Fancy):

“1.首先明白參數的傳遞實質是壓棧和出棧的過程。即在調用一個方法(或說子程序)之前,先將需要傳入的參數壓棧,然后執行代碼的指針跳轉到方法的起始位置,進行出棧操作,原來壓入棧中的參數取出置入方法中的局部變量(這里即參數變量)。

2.對于基本類型,傳遞的參數都是對原變量值的拷貝。每一個基本類型的數據都是以字節形式保存在內存中的(如整型是4個字節,長整型是8個字節等),壓棧時會將內存中的變量值按字節存入棧中,而原變量的值(即保存在原位置的內容)并不改變??內存中的數據是保存在堆中的,參數是保存在棧中的,總不可能把內存塊搬過來是吧......所以一定是拷貝的!

3.先搞明白引用的實質。當一個對象創建后,它的內容(N個字節)被保存在內存中。它的位置,即一個地址址,被返回,保存在一個引用變量中??所以實際上一個引用變量保存的只是某個類的地址,而引用的類型,并不會改變引用變量的大小,它只是說明一個對象的數據大小。這樣,就可以從引用變量找到對象的起始地址,再通過類型,獲取對象數據。而通過引用調用的方法,屬性這些東西,就是通過在這塊內存地址中的位置偏移來尋址的。(當然,實際的操作會比我說的復雜得多,因為還涉及向上向下傳型等問題)

4.引用參數的傳遞,實際上就是傳遞的引用變量的值,這和傳遞基本類型的值原理是一樣的。但由于引用變量其值的特殊性(只是一個地址,這個地址上保存的才是對象的實際數據),所以,引用變量的值傳入參數變量后,通過參數變量對對象的修改(在實際地址上的操作)自然就會影響到同一個對象。??這里,外面的引用變量和參數變量,本身是不同的,但是它們的值相同,都是對象的地址。

第一,談談final, finally, finalize的區別。

final?修飾符(關鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為 abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們在使用中不被改變。被聲明為final的變量必須在聲明時給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載。

finally?再異常處理時提供 finally 塊來執行任何清除操作。如果拋出一個異常,那么相匹配的 catch 子句就會執行,然后控制就會進入 finally 塊(如果有的話)。

finalize?方法名。Java 技術允許使用 finalize()方法在垃圾收集器將對象從內存中清除出去之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調用的。它是在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize()方法以整理系統資源或者執行其他清理工作。finalize()方法是在垃圾收集器刪除對象之前對這個對象調用的。

第二,Anonymous Inner Class(匿名內部類)是否可以extends(繼承)其它類,是否可以implements(實現)interface(接口)?

匿名的內部類是沒有名字的內部類。不能extends(繼承)其它類,但一個內部類可以作為一個接口,由另一個內部類實現。

第三,Static Nested Class 和 Inner Class的不同,說得越多越好(面試題有的很籠統)。

Nested Class(一般是C++的說法),Inner Class(一般是JAVA的說法)。Java內部類與C++嵌套類最大的不同就在于是否有指向外部的引用上。注: 靜態內部類(Inner Class)意味著1創建一個static內部類的對象,不需要一個外部類對象,2不能從一個static內部類的一個對象訪問一個外部類對象

第四,&和&&的區別。

&是位運算符。&&是布爾邏輯運算符。

第五,HashMap和Hashtable的區別。

都屬于Map接口的類,實現了將惟一鍵映射到特定的值上。HashMap 類沒有分類或者排序。它允許一個 null 鍵和多個 null 值。

Hashtable 類似于 HashMap,但是不允許 null 鍵和 null 值。它也比 HashMap 慢,因為它是同步的。

第六,Collection 和 Collections的區別。

Collections是個java.util下的類,它包含有各種有關集合操作的靜態方法。

Collection是個java.util下的接口,它是各種集合結構的父接口。

第七,什么時候用assert。

斷言是一個包含布爾表達式的語句,在執行這個語句時假定該表達式為 true。如果表達式計算為 false,那么系統會報告一個 AssertionError。它用于調試目的:

assert(a > 0);// throws an AssertionError if a <= 0 斷言可以有兩種形式:

assert Expression1;

assert Expression1 : Expression2;Expression1 應該總是產生一個布爾值。

Expression2 可以是得出一個值的任意表達式。這個值用于生成顯示更多調試信息的 String 消息。

斷言在默認情況下是禁用的。要在編譯時啟用斷言,需要使用 source 1.4 標記: javac-source 1.4 Test.java

要在運行時啟用斷言,可使用-enableassertions 或者-ea 標記。

要在運行時選擇禁用斷言,可使用-da 或者-disableassertions 標記。

要系統類中啟用斷言,可使用-esa 或者-dsa 標記。還可以在包的基礎上啟用或者禁用斷言。

可以在預計正常情況下不會到達的任何位置上放置斷言。斷言可以用于驗證傳遞給私有方法的參數。不過,斷言不應該用于驗證傳遞給公有方法的參數,因為不管是否啟用了斷言,公有方法都必須檢查其參數。不過,既可以在公有方法中,也可以在非公有方法中利用斷言測試后置條件。另外,斷言不應該以任何方式改變程序的狀態。

第八,GC是什么? 為什么要有GC?(基礎)。

GC是垃圾收集器。Java 程序員不用擔心內存管理,因為垃圾收集器會自動進行管理。要請求垃圾收集,可以調用下面的方法之一:

System.gc()

Runtime.getRuntime().gc()

第九,String s = new String(”xyz“);創建了幾個String Object?

兩個對象,一個是”xyx“,一個是指向”xyx“的引用對象s。

第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;

第十一,short s1 = 1;s1 = s1 + 1;有什么錯? short s1 = 1;s1 += 1;有什么錯?

short s1 = 1;s1 = s1 + 1;有錯,s1是short型,s1+1是int型,不能顯式轉化為short型。可修改為s1 =(short)(s1 + 1)。short s1 = 1;s1 += 1正確。

第十二,sleep()和 wait()有什么區別? 搞線程的最愛

sleep()方法是使線程停止一段時間的方法。在sleep 時間間隔期滿后,線程不一定立即恢復執行。這是因為在那個時刻,其它線程可能正在運行而且沒有被調度為放棄執行,除非(a)”醒來“的線程具有更高的優先級(b)正在運行的線程因為其它原因而阻塞。

wait()是線程交互時,如果線程對一個同步對象x 發出一個wait()調用,該線程會暫停執行,被調對象進入等待狀態,直到被喚醒或等待時間到。

第十三,Java有沒有goto?

Goto?java中的保留字,現在沒有在java中使用。

第十四,數組有沒有length()這個方法? String有沒有length()這個方法? 數組沒有length()這個方法,有length的屬性。String有length()這個方法。

第十五,Overload和Override的區別。Overloaded的方法是否可以改變返回值的類型?

方法的重寫Overriding和重載Overloading是Java多態性的不同表現。重寫Overriding是父類與子類之間多態性的一種表現,重載Overloading是一個類中多態性的一種表現。如果在子類中定義某方法與其父類有相同的名稱和參數,我們說該方法被重寫(Overriding)。子類的對象使用這個方法時,將調用子類中的定義,對它而言,父類中的定義如同被”屏蔽“了。如果在一個類中定義了多個同名的方法,它們或有不同的參數個數或有不同的參數類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類型。

第十六,Set里的元素是不能重復的,那么用什么方法來區分重復與否呢? 是用==還是equals()? 它們有何區別?

Set里的元素是不能重復的,那么用iterator()方法來區分重復與否。equals()是判讀兩個Set是否相等。

equals()和==方法決定引用值是否指向同一對象equals()在類中被覆蓋,為的是當兩個分離的對象的內容和類型相配的話,返回真值。第十七,給我一個你最常見到的runtime exception。

ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

第十八,error和exception有什么區別?

error 表示恢復不是不可能但很困難的情況下的一種嚴重問題。比如說內存溢出。不可能指望程序能處理這樣的情況。

exception 表示一種設計或實現問題。也就是說,它表示如果程序運行正常,從不會發生的情況。

第十九,List, Set, Map是否繼承自Collection接口? List,Set是

Map不是

第二十,abstract class和interface有什么區別?

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

接口(interface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過實現這樣的接口而獲得。接口中的所有方法都是抽象的,沒有一個有程序體。接口只可以定義static final成員變量。接口的實現與子類相似,除了該實現類不能從接口定義中繼承行為。當類實現特殊接口時,它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實現了該接口的類的任何對象上調用接口的方法。由于有抽象類,它允許使用接口名作為引用變量的類型。通常的動態聯編將生效。引用可以轉換到接口類型或從接口類型轉換,instanceof 運算符可以用來決定某對象的類是否實現了接口。

第二十一,abstract的method是否可同時是static,是否可同時是native,是否可同時是synchronized? 都不能

第二十二,接口是否可繼承接口? 抽象類是否可實現(implements)接口? 抽象類是否可繼承實體類(concrete class)?

接口可以繼承接口。抽象類可以實現(implements)接口,抽象類是否可繼承實體類,但前提是實體類必須有明確的構造函數。

第二十三,啟動一個線程是用run()還是start()?

啟動一個線程是調用start()方法,使線程所代表的虛擬處理機處于可運行狀態,這意味著它可以由JVM調度并執行。這并不意味著線程就會立即運行。run()方法可以產生必須退出的標志來停止一個線程。

第二十四,構造器Constructor是否可被override?

構造器Constructor不能被繼承,因此不能重寫Overriding,但可以被重載Overloading。

第二十五,是否可以繼承String類? String類是final類故不可以繼承。

第二十六,當一個線程進入一個對象的一個synchronized方法后,其它線程是否可進入此對象的其它方法?

不能,一個對象的一個synchronized方法只能由一個線程訪問。

第二十七,try {}里有一個return語句,那么緊跟在這個try后的finally {}里的code會不會被執行,什么時候被執行,在return前還是后? 會執行,在return前執行。

第二十八,編程題: 用最有效率的方法算出2乘以8等於幾? 有C背景的程序員特別喜歡問這種問題。<< 3

第二十九,兩個對象值相同(x.equals(y)== true),但卻可有不同的hash code,這句話對不對? 不對,有相同的hash code。

第三十,當一個對象被當作參數傳遞到一個方法后,此方法可改變這個對象的屬性,并可返回變化后的結果,那么這里到底是值傳遞還是引用傳遞?

是值傳遞。Java 編程語言只由值傳遞參數。當一個對象實例作為一個參數被傳遞到方法中時,參數的值就是對該對象的引用。對象的內容可以在被調用的方法中改變,但對象的引用是永遠不會改變的。

第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?

switch(expr1)中,expr1是一個整數表達式。因此傳遞給 switch 和 case 語句的參數應該是 int、short、char 或者 byte。long,string 都不能作用于swtich。

第三十二,編程題: 寫一個Singleton出來。

Singleton模式主要作用是保證在Java應用程序中,一個類Class只有一個實例存在。

一般Singleton模式通常有幾種種形式:

第一種形式: 定義一個類,它的構造函數為private的,它有一個static的private的該類變量,在類初始化時實例話,通過一個public的getInstance方法獲取對它的引用,繼而調用其中的方法。public class Singleton {

private Singleton(){}

//在自己內部定義自己一個實例,是不是很奇怪?

//注意這是private 只供內部調用

private static Singleton instance = new Singleton();

//這里提供了一個供外部訪問本class的靜態方法,可以直接訪問

public static Singleton getInstance(){

return instance;

} }

第二種形式:

public class Singleton {

private static Singleton instance = null;

public static synchronized Singleton getInstance(){

//這個方法比上面有所改進,不用每次都進行生成對象,只是第一次

//使用時生成實例,提高了效率!

if(instance==null)

instance=new Singleton();return instance;

} }

其他形式:

定義一個類,它的構造函數為private的,所有方法為static的。一般認為第一種形式要更加安全些

第三十三 Hashtable和HashMap

Hashtable繼承自Dictionary類,而HashMap是Java1.2引進的Map interface的一個實現

HashMap允許將null作為一個entry的key或者value,而Hashtable不允許

還有就是,HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因為contains方法容易讓人引起誤解。

最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在

多個線程訪問Hashtable時,不需要自己為它的方法實現同步,而HashMap

就必須為之提供外同步。

Hashtable和HashMap采用的hash/rehash算法都大概一樣,所以性能不會有很大的差異。

1:abstract的method是否可同時是static,是否可同時是native,是否可同時是synchronized?

2:當一個對象被當作參數傳遞到一個方法后,此方法可改變這個對象的屬性,并可返回變化后的

結果,那么這里到底是值傳遞還是引用傳遞?

3:Set里的元素是不能重復的,那么用什么方法來區分重復與否呢? 是用==還是equals()? 它們 有何區別?

4:構造器Constructor是否可被override?

5:當一個線程進入一個對象的一個synchronized方法后,其它線程是否可進入此對象的其它方法?

6:兩個對象值相同(x.equals(y)== true),但卻可有不同的hash code,這句話對不對

關于參數傳遞:

其實JAVA里對參數的傳遞在國際上都是一直有爭論的。包括《Think in java》里都提到了,Bruce Eckel 也沒給出定論。我覺得這很大程度上是由于規范不嚴格造成的。因為大家都知道參數傳遞的本質是什么,但描述方式不一樣,以致造成答案不一致。

現給一些參考:

第一,JAVA 里的參數傳遞只有值傳遞,沒有所謂的引用傳遞。(說白了,是因為大家的說法 不統一)

第二,引用一個強人的觀點 jamesfancy()邊城狂人(James Fancy):

”1.首先明白參數的傳遞實質是壓棧和出棧的過程。即在調用一個方法(或說子程序)之前,先將需要傳入的參數壓棧,然后執行代碼的指針跳轉到方法的起始位置,進行出棧操作,原來壓入棧中的參數取出置入方法中的局部變量(這里即參數變量)。

2.對于基本類型,傳遞的參數都是對原變量值的拷貝。每一個基本類型的數據都是以字節形式保存在內存中的(如整型是4個字節,長整型是8個字節等),壓棧時會將內存中的變量值按字節存入棧中,而原變量的值(即保存在原位置的內容)并不改變??內存中的數據是保存在堆中的,參數是保存在棧中的,總不可能把內存塊搬過來是吧......所以一定是拷貝的!

3.先搞明白引用的實質。當一個對象創建后,它的內容(N個字節)被保存在內存中。它的位置,即一個地址址,被返回,保存在一個引用變量中??所以實際上一個引用變量保存的只是某個類的地址,而引用的類型,并不會改變引用變量的大小,它只是說明一個對象的數據大小。這樣,就可以從引用變量找到對象的起始地址,再通過類型,獲取對象數據。而通過引用調用的方法,屬性這些東西,就是通過在這塊內存地址中的位置偏移來尋址的。(當然,實際的操作會比我說的復雜得多,因為還涉及向上向下傳型等問題)

4.引用參數的傳遞,實際上就是傳遞的引用變量的值,這和傳遞基本類型的值原理是一樣的。但由于引用變量其值的特殊性(只是一個地址,這個地址上保存的才是對象的實際數據),所以,引用變量的值傳入參數變量后,通過參數變量對對象的修改(在實際地址上的操作)自然就會影響到同一個對象。??這里,外面的引用變量和參數變量,本身是不同的,但是它們的值相同,都是對象的地址。

下載java程序員辭職報告word格式文檔
下載java程序員辭職報告.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    java程序員(筆試)

    筆試 一. 選擇題 1. 從“員工”表的“姓名”字段中找出名字包含“瑪麗”的人,下面的哪條select語句正確 A. Select*from 員工 where姓名 =“__瑪麗__” B. Select*from 員工 w......

    java程序員面試題

    1、 你怎樣理解Struts,又那些配置文件,以及作用? 理解:http://ruixin.iteye.com/blog/899289 配置文件:struts.xml 作用:struts 框架mvc 實現低耦合,便于程序的維護~ 配置文件控制......

    java程序員招聘

    職位描述:1、參加基于 JAVA 技術的門戶網站的開發; 2、負責公司的網站開發維護及新產品的研發; 3、書寫技術文檔和制定開發規范; 4、從系統層面去合理析網站產品,并提供開發工程......

    java程序員之路

    JAVA程序員之路- - 每個人的學習方法是不同的,一個人的方法不見得適合另一個人,我只能是談自己的學習方法。因為我學習Java是完全自學的,從來沒有問過別人,所以學習的過程基本......

    JAVA程序員求職信

    JAVA程序員求職信范文 尊敬的領導: 您好!十分感謝您在百忙之中能翻閱我的自薦信。與公司是一種選擇,與我則是一種機會。在上千份大同小異的求職信中,我期望你手中的這份能給您......

    Java程序員簡歷

    個人簡歷 ********************************************************************* 基本信息 ********************************************************************* 姓......

    java程序員面試題

    姓名: 年齡: 工作年限: 1.int和Integer有什么區別?2.抽象類(abstract class)和接口(interface)有什么異同?3.List、Set、Map的區別?4.Spring支持的ORM有哪些,哪些是你用過的?5.使用Spri......

    java程序員簡歷

    x x x 個 人 簡 歷 個人資料: 姓 名:xxx 性 別:男 出生日期:199x年xx月xx日 年 齡:25 電 話:137xxxxxxxx 住 址:xxxxxxx 畢業院校:xxxxxxxxxxxxxxxxxxxxxx 學 歷:本科 E-mail: x xxxx......

主站蜘蛛池模板: 国产一区二区内射最近更新| 久久天天躁狠狠躁夜夜| 亚洲精品久久久久久久久久吃药| 亚洲人成小说网站色| 亚洲熟妇av乱码在线观看| 亚洲日本乱码在线观看| 精品乱码一区二区三区四区| 伊人成色综合网| 国产成人精品久久一区二区三区| 久久久久久亚洲精品不卡| www国产亚洲精品久久网站| 免费久久人人爽人人爽av| 上司人妻互换中文字幕| 国产精品99久久久久久猫咪| 国产69精品久久久久9999apgf| 48沈阳熟女高潮嗷嗷叫| 人妻熟女一区二区aⅴ清水理纱| 狠狠摸狠狠澡| 久久亚洲精品中文字幕无男同| 午夜精品久久久久久久99热| 久草原精品资源视频| 少妇无码av无码一区| 中文激情在线一区二区| 欧美成人精品a∨在线观看| 五级黄高潮片90分钟视频| 国产乱码一区二区三区免费| 夜夜影院未满十八勿进| 人妻丰满熟妇aⅴ无码区| 亚洲精品揄拍自拍首页一| 国产精品污www一区二区三区| 消息称老熟妇乱视频一区二区| av无码人妻波多野结衣| 天天躁日日躁狼狼超碰97| 日本熟妇厨房bbw| 三级国产国语三级在线| 国产亚洲精品久久久久久入口| 国产精品女视频一区二区| 日韩a∨无码中文无码电影| 国产精品久久久久久人妻精品| 少妇私密推油呻吟在线播放| 久久精品国产自清天天线|