2023年java語(yǔ)言基礎(chǔ)知識(shí)總結(jié)(五篇)

格式:DOC 上傳日期:2023-04-14 22:02:05
2023年java語(yǔ)言基礎(chǔ)知識(shí)總結(jié)(五篇)
時(shí)間:2023-04-14 22:02:05     小編:zdfb

總結(jié)是寫(xiě)給人看的,條理不清,人們就看不下去,即使看了也不知其所以然,這樣就達(dá)不到總結(jié)的目的。相信許多人會(huì)覺(jué)得總結(jié)很難寫(xiě)?以下是小編為大家收集的總結(jié)范文,僅供參考,大家一起來(lái)看看吧。

java語(yǔ)言基礎(chǔ)知識(shí)總結(jié)篇一

java編程語(yǔ)言面試題

一、簡(jiǎn)答題

1、簡(jiǎn)述用java編程語(yǔ)言編寫(xiě)、編譯、解釋和執(zhí)行過(guò)程。

2、簡(jiǎn)述在java jdk中,程序的作用。

3、簡(jiǎn)述java編程語(yǔ)言中的數(shù)組和c編程語(yǔ)言中定義數(shù)組有什么區(qū)別。

4、簡(jiǎn)述類與對(duì)象的關(guān)系。對(duì)象的方法和類的方法是否為一回事?

5、jvm在解析代碼person p1=new person()和new person()時(shí)有什么區(qū)別?

6、簡(jiǎn)述this關(guān)鍵字的四中用途。

7、簡(jiǎn)述構(gòu)造函數(shù)的作用。

8、分別簡(jiǎn)述static和final關(guān)鍵字的意義。

9、簡(jiǎn)述抽象類和接口的區(qū)別,并闡明抽象類和接口的用途。

10、簡(jiǎn)述多態(tài)的概念和意義。

11、簡(jiǎn)述異常和錯(cuò)誤的區(qū)別。

12、簡(jiǎn)述如何創(chuàng)建和啟動(dòng)一個(gè)線程的兩種方法

13、簡(jiǎn)述棧內(nèi)存和堆內(nèi)存分別用來(lái)做什么。

14、簡(jiǎn)述throw關(guān)鍵字在程序中拋出的是什么。

15、在一個(gè)類的public static void method()中,能夠直接使用該類什么類型的成員。

二、計(jì)算題

1、在類runner中定義一個(gè)方法move(),要求這個(gè)方法的參數(shù)是一個(gè)實(shí)現(xiàn)了接口runnable的匿名內(nèi)部類的對(duì)象,該接口中的方法中的內(nèi)容自己可以決定。

2、類outer中與方法屬性平行定義的內(nèi)部類為inner{ public void dostuff(){}},寫(xiě)出在另一個(gè)類testinner的public static void main(string s)中調(diào)用方法dostuff()的代碼。

3、類book{ public void insert(string id)throws exception{…}}中的方法被類testbook中public void testinser()方法調(diào)用,寫(xiě)出該方法中的主要代碼。

4、兩個(gè)頂級(jí)包test1和test2,,再用winrar打開(kāi)時(shí),會(huì)在瀏覽器上看到下列層次;

◎meta-inf

◎test1

◎test2

注:◎?yàn)槲募A

請(qǐng)寫(xiě)出操作過(guò)程,并寫(xiě)出運(yùn)行的命令行程序(提示:用jar.......).5、同一個(gè)線程類threadtest中定義了:

public synchronized void sale(){...}

synchronized(str){...}

寫(xiě)出能使這兩個(gè)類成員保持同步的改進(jìn)代碼。

6、解釋類class q{

private string name=“李四”;

private string sex=“女”;

boolean bfull=false;

public synchronized void put(string name,string sex){

if(bfull)

try{

wait();

=name;

}catch(interruptedexception e){}

try{

(10);

}catch(exception e){

n(sage());

}

=sex;

bfull=true;

notify();

}

public synchronized void get()

{

if(!bfull)

try{

wait();

}catch(interruptedexception e){}

n(name + “----” + sex);

bfull=false;

notify();

}

}

中wait()、notify()、sleep()諸方法的作用。

7、在類class testinteger{

public static void main(string[] args){

int w =。。。。。。。。。。。。。。。。。。。。// 將args[0]轉(zhuǎn)換int型的方法

int h =。。。。。。。。。。。。。。。。。。。。//將args[1]轉(zhuǎn)換int型的另一種方法//int h = f(args[1]).intvalue();//第三種方法

for(int i=0;i

stringbuffer sb=new stringbuffer();

for(int j=0;j

('*');

}

n(ng());

}

}

}

中,args[0]的值為:“1234”,args[1]的值為:“5678”,請(qǐng)上面代碼塊中的……………處填寫(xiě)代碼。

8、下面類

import .*;

public class testvector{

public static void main(string [] args){

int b=0;

vector v=new vector();n(“please enter number:”);

while(true){

try{

b= ();//……….} catch(exception e){

n(sage());

}

if(b=='r' || b== 'n')

break;

else{

int num=b-'0';

ment(new integer(num));//………..}

}

int sum=0;

enumeration e=ts();//…………………

while(eelements()){

integer intobj=(integer)ement();//………………..sum += ue();

}

n(sum);

}

}

中,請(qǐng)?jiān)谥T單行注釋//。。。。中解釋其左邊一行代碼的意義。

9、下面類

import .*;

public class datastreamtest{

public static void main(string[] args){

try{

fileoutputstream fos=new fileoutputstream(“c:”);//…….bufferedoutputstream bos= new bufferedoutputstream(fos);//……

dataoutputstream dos= new dataoutputstream(bos);//……..tf(“ab中國(guó)”);//………

ytes(“ab中國(guó)”);

hars(“ab中國(guó)”);

();//…………

fileinputstream fis=new fileinputstream(“”);//…….bufferedinputstream bis=new bufferedinputstream(fis);//…….datainputstream dis=new datainputstream(bis);//…….n(f());

();

}catch(exception e){

n(sage());

}

}

}

中,請(qǐng)?jiān)谥T單行注釋//。。。。中解釋其左邊一行代碼的意義。

10、已知接口:interface pci {

voidstart();

voidstop();

}

要求:寫(xiě)兩個(gè)類:networkcard,soundcard分別實(shí)現(xiàn)上面接口的方法(內(nèi)容自編),并寫(xiě)第三個(gè)類mainboard,該類中的方法install(pci p)應(yīng)用networkcard,soundcard兩個(gè)類對(duì)象的方法。根據(jù)上面的要求,填寫(xiě)下面的代碼:

class assembler

{

public static void main(string []args)

{

//在下面寫(xiě)代碼….}

}

class networkcard ….{

}

class soundcard…………{

}

class mainboard…………………………………..{

install(pci p){

}

}

java語(yǔ)言基礎(chǔ)知識(shí)總結(jié)篇二

第一章初識(shí)java 1.程序是為了讓計(jì)算機(jī)執(zhí)行某些操作或解決某個(gè)問(wèn)題而編寫(xiě)的一系列有序指令的集合。

包括編程語(yǔ)言和相關(guān)的技術(shù)。

主要用于開(kāi)發(fā),桌面應(yīng)用程序和internet應(yīng)用程序。4.開(kāi)發(fā)一個(gè)java應(yīng)用程序的基本步驟:編寫(xiě)源程序,編譯程序和運(yùn)行程序。為擴(kuò)展名,為擴(kuò)展名。文件,文件。

5.編寫(xiě)java程序要符合java編碼規(guī)范,為程序編寫(xiě)注釋可大大增加程序的閱讀性。

ise是一個(gè)功能強(qiáng)大的集成開(kāi)發(fā)環(huán)境(ide)。它的各種窗口便于java程序的開(kāi)發(fā),調(diào)試和管理。

第二章變量、數(shù)據(jù)類型和運(yùn)算符

1.變量是一個(gè)數(shù)據(jù)存儲(chǔ)空間的表示,它是存儲(chǔ)數(shù)據(jù)的基本單元。變量的命名規(guī)則:

(1)必須以字母,“_”,“$”開(kāi)頭。(2)可以包括數(shù)字,但不能以數(shù)字開(kāi)頭(3)不能包括除“_”,“$”以外的特殊符號(hào)(4)不能使用java語(yǔ)言關(guān)鍵字或者保留字(goto)

中數(shù)據(jù)類型分為基本數(shù)據(jù)類型和引用數(shù)據(jù)類型,基本數(shù)據(jù)類型有整型(int),雙精度浮點(diǎn)型(double),字符型(char)和字符串(string)。3.變量要先聲明并賦值,才能使用。提供各種類型的運(yùn)算符,具體如下。

(1)賦值運(yùn)算(=)(2)算術(shù)運(yùn)算符(+,-,*,/,%)(3)關(guān)系運(yùn)算符(>,>=,<,<=,==,!=)(4)條件運(yùn)算符(條件?表達(dá)式1:表達(dá)式2)(5)邏輯運(yùn)算符(&& , || ,!, & , |)&&(短路與)與&的區(qū)別:&&進(jìn)行判斷時(shí),當(dāng)?shù)谝粋€(gè)條件為假,則不需要判斷第二個(gè)條件,結(jié)果為假。&進(jìn)行判斷時(shí),即使第一個(gè)條件為假時(shí),也需要判斷完第二個(gè)條件才能給出結(jié)果為假。||(短路或)與|的區(qū)別:與上同理(5)位運(yùn)算符(&, | , << , >> , >>>)5.數(shù)據(jù)類型轉(zhuǎn)換是為了方便不同類型的數(shù)據(jù)之間進(jìn)行運(yùn)算

6.數(shù)據(jù)類型轉(zhuǎn)換包括了自動(dòng)類型轉(zhuǎn)換和強(qiáng)制類型轉(zhuǎn)換,自動(dòng)類型轉(zhuǎn)換需要滿足類型兼容且目標(biāo)類型大于源類型的條件

中使用boolean類型表示真假,boolean類型的兩個(gè)值為true和false。

中的關(guān)系運(yùn)算符可以用于來(lái)比較大小,高低,多少等,比較厚的結(jié)果是boolean類型。

提供scanner類,可以實(shí)現(xiàn)從控制臺(tái)獲取鍵盤(pán)上輸入的信息

第三章選擇結(jié)構(gòu)(一)java中的if選擇結(jié)構(gòu),包括以下形式

(1)基本的if選擇結(jié)構(gòu):可以處理單一或組合條件的情況(2)if-else選擇結(jié)構(gòu):可以處理簡(jiǎn)單的條件分支情況(3)多重if選擇結(jié)構(gòu):可以處理連續(xù)區(qū)間的條件分支情況(4)嵌套if選擇結(jié)構(gòu):可以處理復(fù)雜的條件分支情況

第四章選擇結(jié)構(gòu)(二)選擇結(jié)構(gòu)適用于進(jìn)行等值判斷

關(guān)鍵字后面小括號(hào)里表達(dá)式的值可以是int , short , byte , char , 枚舉 , string(jdk1.7開(kāi)始支持)

第五章循環(huán)結(jié)構(gòu)(一)1.循環(huán)結(jié)構(gòu)由循環(huán)結(jié)構(gòu)和循環(huán)操作構(gòu)成,只要滿足循環(huán)條件,循環(huán)操作就會(huì)反復(fù)執(zhí)行

2.使用循環(huán)結(jié)構(gòu)解決問(wèn)題問(wèn)題的步驟:分析循環(huán)條件和循環(huán)操作,套用循環(huán)結(jié)構(gòu)的語(yǔ)法寫(xiě)出代碼,檢查循環(huán)能否退出

循環(huán)結(jié)構(gòu)是先判斷后執(zhí)行,do-while是先執(zhí)行,后判斷。do-while至少執(zhí)行一次。

調(diào)試:設(shè)置斷點(diǎn),單步運(yùn)行,觀察變量

第六章循環(huán)結(jié)構(gòu)(二)循環(huán)結(jié)構(gòu)的語(yǔ)法結(jié)構(gòu)如下

for(表達(dá)式1:表達(dá)式2:表達(dá)式3){

} //循環(huán)體

表達(dá)式1:循環(huán)結(jié)構(gòu)的初始部分,為循環(huán)變量賦初值 表達(dá)式2:循環(huán)結(jié)構(gòu)的循環(huán)條件

表達(dá)式3:循環(huán)條件的迭代部分,通常用來(lái)修改循環(huán)變量的值 2.用break和continue語(yǔ)句控制流程

(1)break語(yǔ)句用于終止某個(gè)循環(huán),程序跳轉(zhuǎn)到循環(huán)體外的下一條語(yǔ)句。break也可以在switch語(yǔ)句中使用

(2)continue語(yǔ)句用于跳出本次循環(huán),進(jìn)入下一次循環(huán)

(3)return可以結(jié)束當(dāng)前方法的執(zhí)行并退出,返回調(diào)用該方法的語(yǔ)句處

第七章數(shù)組

1.數(shù)組是可以在內(nèi)存中連續(xù)存儲(chǔ)多個(gè)元素的結(jié)構(gòu),數(shù)組中的所有元素必須屬于相同的數(shù)據(jù)類型

2.數(shù)組中的元素通過(guò)數(shù)組的下標(biāo)進(jìn)行訪問(wèn),數(shù)組的下標(biāo)從0開(kāi)始 3數(shù)組可用一個(gè)循環(huán)為元素賦值,或用一個(gè)循環(huán)輸出數(shù)組中的元素信息

可獲得數(shù)組長(zhǎng)度

5.利用arrays.提供的sort()方法可以方便的對(duì)數(shù)組中的元素進(jìn)行排序 6.二維數(shù)組實(shí)際上就是一個(gè)一維數(shù)組,他的每個(gè)元素又是一個(gè)一維數(shù)組。

第八章循環(huán)結(jié)構(gòu)進(jìn)階

1.數(shù)組的輸入排序,選擇排序,冒泡排序

2.在二重循環(huán)中可以使用break、continue語(yǔ)句控制程序的執(zhí)行 選擇排序:

思路:每次循環(huán)得到最小值的下標(biāo),然后交換數(shù)據(jù)。如果交換的位置等于原來(lái)的位置,則不交換。插入排序:

思路:將數(shù)據(jù)插入到已排序的數(shù)組中。

java語(yǔ)言基礎(chǔ)知識(shí)總結(jié)篇三

【程序1】

題目:古典問(wèn)題:有一對(duì)兔子,從出生后第3個(gè)月起每個(gè)月都生一對(duì)兔子,小兔子長(zhǎng)到第三個(gè)月后每個(gè)月又生一對(duì)兔子,假如兔子都不死,問(wèn)每個(gè)月的兔子總數(shù)為多少?

1.程序分析: 兔子的規(guī)律為數(shù)列1,1,2,3,5,8,13,21....【程序2】

題目:判斷101-200之間有多少個(gè)素?cái)?shù),并輸出所有素?cái)?shù)。

1.程序分析:判斷素?cái)?shù)的方法:用一個(gè)數(shù)分別去除2到sqrt(這個(gè)數(shù)),如果能被整除,則表明此數(shù)不是素?cái)?shù),反之是素?cái)?shù)。

【程序3】

題目:打印出所有的“水仙花數(shù)”,所謂“水仙花數(shù)”是指一個(gè)三位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如:153是一個(gè)“水仙花數(shù)”,因?yàn)?53=1的三次方+5的三次方+3的三次方。

1.程序分析:利用for循環(huán)控制100-999個(gè)數(shù),每個(gè)數(shù)分解出個(gè)位,十位,百位。

【程序4】

題目:將一個(gè)正整數(shù)分解質(zhì)因數(shù)。例如:輸入90,打印出90=2*3*3*5。

程序分析:對(duì)n進(jìn)行分解質(zhì)因數(shù),應(yīng)先找到一個(gè)最小的質(zhì)數(shù)k,然后按下述步驟完成:

(1)如果這個(gè)質(zhì)數(shù)恰等于n,則說(shuō)明分解質(zhì)因數(shù)的過(guò)程已經(jīng)結(jié)束,打印出即可。

(2)如果n<>k,但n能被k整除,則應(yīng)打印出k的值,并用n除以k的商,作為新的正整數(shù)你n,重復(fù)執(zhí)行第一步。

(3)如果n不能被k整除,則用k+1作為k的值,重復(fù)執(zhí)行第一步。

【程序5】

題目:利用條件運(yùn)算符的嵌套來(lái)完成此題:學(xué)習(xí)成績(jī)>=90分的同學(xué)用a表示,60-89分之間的用b表示,60分以下的用c表示。

1.程序分析:(a>b)?a:b這是條件運(yùn)算符的基本例子。

【程序6】

題目:輸入兩個(gè)正整數(shù)m和n,求其最大公約數(shù)和最小公倍數(shù)。

1.程序分析:利用輾除法。

【程序7】

題目:輸入一行字符,分別統(tǒng)計(jì)出其中英文字母、空格、數(shù)字和其它字符的個(gè)數(shù)。

1.程序分析:利用while語(yǔ)句,條件為輸入的字符不為'n'.【程序8】

題目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一個(gè)數(shù)字。例如2+22+222+2222+22222(此時(shí)共有5個(gè)數(shù)相加),幾個(gè)數(shù)相加有鍵盤(pán)控制。

1.程序分析:關(guān)鍵是計(jì)算出每一項(xiàng)的值。

【程序9】

題目:一個(gè)數(shù)如果恰好等于它的因子之和,這個(gè)數(shù)就稱為“完數(shù)”。例如6=1+2+3.編程 找出1000以內(nèi)的所有完數(shù)。

【程序10】

題目:一球從100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地時(shí),共經(jīng)過(guò)多少米?第10次反彈多高?

【程序11】

題目:有1、2、3、4個(gè)數(shù)字,能組成多少個(gè)互不相同且無(wú)重復(fù)數(shù)字的三位數(shù)?都是多少?

1.程序分析:可填在百位、十位、個(gè)位的數(shù)字都是1、2、3、4。組成所有的排列后再去 掉不滿足條件的排列。

【程序12】

題目:企業(yè)發(fā)放的獎(jiǎng)金根據(jù)利潤(rùn)提成。利潤(rùn)(i)低于或等于10萬(wàn)元時(shí),獎(jiǎng)金可提10%;利潤(rùn)高于10萬(wàn)元,低于20萬(wàn)元時(shí),低于10萬(wàn)元的部分按10%提成,高于10萬(wàn)元的部分,可可提成7.5%;20萬(wàn)到40萬(wàn)之間時(shí),高于20萬(wàn)元的部分,可提成5%;40萬(wàn)到60萬(wàn)之間時(shí)高于40萬(wàn)元的部分,可提成3%;60萬(wàn)到100萬(wàn)之間時(shí),高于60萬(wàn)元的部分,可提成1.5%,高于100萬(wàn)元時(shí),超過(guò)100萬(wàn)元的部分按1%提成,從鍵盤(pán)輸入當(dāng)月利潤(rùn)i,求應(yīng)發(fā)放獎(jiǎng)金總數(shù)?

1.程序分析:請(qǐng)利用數(shù)軸來(lái)分界,定位。注意定義時(shí)需把獎(jiǎng)金定義成長(zhǎng)整型。

【程序13】

題目:一個(gè)整數(shù),它加上100后是一個(gè)完全平方數(shù),再加上168又是一個(gè)完全平方數(shù),請(qǐng)問(wèn)該數(shù)是多少?

1.程序分析:在10萬(wàn)以內(nèi)判斷,先將該數(shù)加上100后再開(kāi)方,再將該數(shù)加上268后再開(kāi)方,如果開(kāi)方后的結(jié)果滿足如下條件,即是結(jié)果。請(qǐng)看具體分析:

【程序14】

題目:輸入某年某月某日,判斷這一天是這一年的第幾天?

1.程序分析:以3月5日為例,應(yīng)該先把前兩個(gè)月的加起來(lái),然后再加上5天即本年的第幾天,特殊情況,閏年且輸入月份大于3時(shí)需考慮多加一天。

【程序15】

題目:輸入三個(gè)整數(shù)x,y,z,請(qǐng)把這三個(gè)數(shù)由小到大輸出。

1.程序分析:我們想辦法把最小的數(shù)放到x上,先將x與y進(jìn)行比較,如果x>y則將x與y的值進(jìn)行交換,然后再用x與z進(jìn)行比較,如果x>z則將x與z的值進(jìn)行交換,這樣能使x最小。

【程序16】

題目:輸出9*9口訣。

1.程序分析:分行與列考慮,共9行9列,i控制行,j控制列。

【程序17】

題目:猴子吃桃問(wèn)題:猴子第一天摘下若干個(gè)桃子,當(dāng)即吃了一半,還不癮,又多吃了一個(gè) 第二天早上又將剩下的桃子吃掉一半,又多吃了一個(gè)。以后每天早上都吃了前一天剩下 的一半零一個(gè)。到第10天早上想再吃時(shí),見(jiàn)只剩下一個(gè)桃子了。求第一天共摘了多少。

1.程序分析:采取逆向思維的方法,從后往前推斷。

【程序18】

題目:兩個(gè)乒乓球隊(duì)進(jìn)行比賽,各出三人。甲隊(duì)為a,b,c三人,乙隊(duì)為x,y,z三人。已抽簽決定比賽名單。有人向隊(duì)員打聽(tīng)比賽的名單。a說(shuō)他不和x比,c說(shuō)他不和x,z比,請(qǐng)編程序找出三隊(duì)賽手的名單。

1.程序分析:判斷素?cái)?shù)的方法:用一個(gè)數(shù)分別去除2到sqrt(這個(gè)數(shù)),如果能被整除,則表明此數(shù)不是素?cái)?shù),反之是素?cái)?shù)。

【程序19】

題目:打印出如下圖案(菱形)

*

***

******

********

******

***

*

1.程序分析:先把圖形分成兩部分來(lái)看待,前四行一個(gè)規(guī)律,后三行一個(gè)規(guī)律,利用雙重 for循環(huán),第一層控制行,第二層控制列。

【程序20】

題目:有一分?jǐn)?shù)序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個(gè)數(shù)列的前20項(xiàng)之和。

1.程序分析:請(qǐng)抓住分子與分母的變化規(guī)律。

【程序21】

題目:求1+2!+3!+...+20!的和

1.程序分析:此程序只是把累加變成了累乘。

【程序22】

題目:利用遞歸方法求5!。

1.程序分析:遞歸公式:fn=fn_1*4!

【程序23】

題目:有5個(gè)人坐在一起,問(wèn)第五個(gè)人多少歲?他說(shuō)比第4個(gè)人大2歲。問(wèn)第4個(gè)人歲數(shù),他說(shuō)比第3個(gè)人大2歲。問(wèn)第三個(gè)人,又說(shuō)比第2人大兩歲。問(wèn)第2個(gè)人,說(shuō)比第一個(gè)人大兩歲。最后問(wèn)第一個(gè)人,他說(shuō)是10歲。請(qǐng)問(wèn)第五個(gè)人多大?

1.程序分析:利用遞歸的方法,遞歸分為回推和遞推兩個(gè)階段。要想知道第五個(gè)人歲數(shù),需知道第四人的歲數(shù),依次類推,推到第一人(10歲),再往回推。

【程序24】

題目:給一個(gè)不多于5位的正整數(shù),要求:

一、求它是幾位數(shù),二、逆序打印出各位數(shù)字。

【程序25】

題目:一個(gè)5位數(shù),判斷它是不是回文數(shù)。即12321是回文數(shù),個(gè)位與萬(wàn)位相同,十位與千位相同。

【程序26】

題目:請(qǐng)輸入星期幾的第一個(gè)字母來(lái)判斷一下是星期幾,如果第一個(gè)字母一樣,則繼續(xù) 判斷第二個(gè)字母。

1.程序分析:用情況語(yǔ)句比較好,如果第一個(gè)字母一樣,則判斷用情況語(yǔ)句或if語(yǔ)句判斷第二個(gè)字母。

【程序27】

題目:求100之內(nèi)的素?cái)?shù)

【程序28】

題目:對(duì)10個(gè)數(shù)進(jìn)行排序

1.程序分析:可以利用選擇法,即從后9個(gè)比較過(guò)程中,選擇一個(gè)最小的與第一個(gè)元素交換,下次類推,即用第二個(gè)元素與后8個(gè)進(jìn)行比較,并進(jìn)行交換。

【程序29】

題目:求一個(gè)3*3矩陣對(duì)角線元素之和

1.程序分析:利用雙重for循環(huán)控制輸入二維數(shù)組,再將a[i][i]累加后輸出。

【程序30】

題目:有一個(gè)已經(jīng)排好序的數(shù)組?,F(xiàn)輸入一個(gè)數(shù),要求按原來(lái)的規(guī)律將它插入數(shù)組中。

1.程序分析:首先判斷此數(shù)是否大于最后一個(gè)數(shù),然后再考慮插入中間的數(shù)的情況,插入后此元素之后的數(shù),依次后移一個(gè)位置。

【程序31】

題目:將一個(gè)數(shù)組逆序輸出。

1.程序分析:用第一個(gè)與最后一個(gè)交換。

【程序32】

題目:取一個(gè)整數(shù)a從右端開(kāi)始的4~7位。

程序分析:可以這樣考慮:

(1)先使a右移4位。

(2)設(shè)置一個(gè)低4位全為1,其余全為0的數(shù)??捎脋(~0<<4)

(3)將上面二者進(jìn)行&運(yùn)算。

【程序33】

題目:打印出楊輝三角形(要求打印出10行如下圖)

1.程序分析:2 13 3 14 6 4 15 10 10 5 1

【程序34】

題目:輸入3個(gè)數(shù)a,b,c,按大小順序輸出。

1.程序分析:利用指針?lè)椒ā?/p>

【程序35】

題目:輸入數(shù)組,最大的與第一個(gè)元素交換,最小的與最后一個(gè)元素交換,輸出數(shù)組。

【程序36】

題目:有n個(gè)整數(shù),使其前面各數(shù)順序向后移m個(gè)位置,最后m個(gè)數(shù)變成最前面的m個(gè)數(shù)

【程序37】

題目:有n個(gè)人圍成一圈,順序排號(hào)。從第一個(gè)人開(kāi)始報(bào)數(shù)(從1到3報(bào)數(shù)),凡報(bào)到3的人退出圈子,問(wèn)最后留下的是原來(lái)第幾號(hào)的那位。

【程序38】

題目:寫(xiě)一個(gè)函數(shù),求一個(gè)字符串的長(zhǎng)度,在main函數(shù)中輸入字符串,并輸出其長(zhǎng)度。

【程序39】

題目:編寫(xiě)一個(gè)函數(shù),輸入n為偶數(shù)時(shí),調(diào)用函數(shù)求1/2+1/4+...+1/n,當(dāng)輸入n為奇數(shù)時(shí),調(diào)用函數(shù)1/1+1/3+...+1/n(利用指針函數(shù))

【程序40】

題目:字符串排序。

【程序41】

題目:海灘上有一堆桃子,五只猴子來(lái)分。第一只猴子把這堆桃子憑據(jù)分為五份,多了一個(gè),這只猴子把多的一個(gè)扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一個(gè),它同樣把多的一個(gè)扔入海中,拿走了一份,第三、第四、第五只猴子都是這樣做的,問(wèn)海灘上原來(lái)最少有多少個(gè)桃子?

【程序42】

題目:809*??=800*??+9*??+1 其中??代表的兩位數(shù),8*??的結(jié)果為兩位數(shù),9*??的結(jié)果為3位數(shù)。求??代表的兩位數(shù),及809*??后的結(jié)果。

【程序43】

題目:求0—7所能組成的奇數(shù)個(gè)數(shù)。

【程序44】

題目:一個(gè)偶數(shù)總能表示為兩個(gè)素?cái)?shù)之和。

【程序45】

題目:判斷一個(gè)素?cái)?shù)能被幾個(gè)9整除

【程序46】

題目:兩個(gè)字符串連接程序

【程序47】

題目:讀取7個(gè)數(shù)(1—50)的整數(shù)值,每讀取一個(gè)值,程序打印出該值個(gè)數(shù)的*。

【程序48】

題目:某個(gè)公司采用公用電話傳遞數(shù)據(jù),數(shù)據(jù)是四位的整數(shù),在傳遞過(guò)程中是加密的,加密規(guī)則如下:每位數(shù)字都加上5,然后用和除以10的余數(shù)代替該數(shù)字,再將第一位和第四位交換,第二位和第三位交換。

【程序49】

題目:計(jì)算字符串中子串出現(xiàn)的次數(shù)

【程序50】

題目:有五個(gè)學(xué)生,每個(gè)學(xué)生有3門(mén)課的成績(jī),從鍵盤(pán)輸入以上數(shù)據(jù)(包括學(xué)生號(hào),姓名,三門(mén)課成績(jī)),計(jì)算出平均成績(jī),況原有的數(shù)據(jù)和計(jì)算出的平均分?jǐn)?shù)存放在磁盤(pán)文件“stud”中。

java語(yǔ)言基礎(chǔ)知識(shí)總結(jié)篇四

in the following code, which is the earliest statement, where the object originally held in e, may be garbage collected:

class test {

static void main(string args []){

ee e = new employee(“bob”, 48);

atepay();

n(etails());

6.e = null;

7.e = new employee(“denise”, 36);

atepay();

n(etails());

10.}

11.}

only one:

in the following code, which is the earliest statement, where the object originally held in e, may be garbage collected:

class test {

static void main(string args []){

ee e = new employee(“bob”, 48);

atepay();

n(etails());

6.e = null;

7.e = new employee(“denise”, 36);

atepay();

n(etails());

10.}

11.}

only one:

10

11

7

8

2:exhibit :

class test(e static int j = 0;

e static boolean methodb(int k)(5.j += k;

true;

6.)

static void methoda(int i){

n b:

10.b = i < 10 | methodb(4);

11.b = i < 10 || methodb(8);

12.)

static void main(string args[] }(a(0);

n(j);

17.)

18.)

what is the result?

program prints “0”

program prints “4”

program prints “8”

program prints “12”

3:what is written to the standard output given the following statement:n(4|7);

select the right answer:

a.4

b.5

c.6

d.7

4:

select valid identifier of java:

select valid identifier of java:

a.%passwd

b.3d_game

c.$charge

5:設(shè)有變量說(shuō)明語(yǔ)句int a=1,b=0;

則執(zhí)行以下程序段的輸出結(jié)果為()。

switch(a)

{

case 1:

switch(b)

{

case 0:printf(“**0**”);break;

case 1:printf(“**1**”);break;

}

case 2:printf(“**2**”);break;

}

printf(“ ”);

a.**0**

b.**0****2**

c.**0****1****2**

d.有語(yǔ)法錯(cuò)誤

6:in the following pieces of code, which one will compile without any error?

buffer sb1 = “abcd”;

n b = new boolean(“abcd”);

c.c: byte b = 255;

fl = 1.2;

7:

what is the result when you compile and run the following code?

public class throwsdemo

{

static void throwmethod()

{

n(“inside throwmethod.”);

throw new illegalaccessexception(“demo”);

}

public static void main(string args[])

{

try

{

throwmethod();

}

catch(illegalaccessexception e)

{

n(“caught ” + e);

}

}

}

choices:

what is the result when you compile and run the following code?

public class throwsdemo

{

static void throwmethod()

{

n(“inside throwmethod.”);

throw new illegalaccessexception(“demo”);

}

public static void main(string args[])

{

try

{

throwmethod();

}

catch(illegalaccessexception e)

{

n(“caught ” + e);

}

}

}

choices:

ation error

e error

e successfully, nothing is ed by caught:laccessexcption: demo

8:which of the following statements are not legal?

l = 4990;

i = 4l;

d = 34.4;

t = 0.9f.9:

give the following java class:

public class example{

public static void main(string args[]){

static int x[] = new int[15];

n(x[5]);

}

}

which statement is corrected?

give the following java class:

public class example{

public static void main(string args[]){

static int x[] = new int[15];

n(x[5]);

}

}

which statement is corrected?

compile, some error will run, some error will is is null.10:下面關(guān)于變量及其范圍的陳述哪些是錯(cuò)的。

a.實(shí)例變量是類的成員變量。

b.實(shí)例變量用關(guān)鍵字static聲明。

c.在方法中定義的局部變量在該方法被執(zhí)行時(shí)創(chuàng)建

d.局部變量在使用前必須被初始化。

11:

public class x{

public object m(){

object o = new float(3.14f);//line 3

object [] oa = new object[1];//line 4

oa[0] = o;//line 5

o=null;//line 6

return oa[0];//line 7

}

}

when is the float object, created in line 3,eligible for garbage collection?

public class x{

public object m(){

object o = new float(3.14f);//line 3

object [] oa = new object[1];//line 4

oa[0] = o;//line 5

o=null;//line 6

return oa[0];//line 7

}

}

when is the float object, created in line 3,eligible for garbage collection?

after line after line 6

after line 7(that is,as the method returns)

in this method

12:

which is the most appropriate code snippet that can be inserted at line 18 in the following code?

(assume that the code is compiled and run with assertions enabled)

.*;

class asserttest

4.{

e hashmap cctld;

asserttest()

8.{

= new hashmap();

(“in”, “india”);

(“uk”, “united kingdom”);

(“au”, “australia”);

13.// more code...14.}

15.// other methods.... string getcountry(string countrycode)

17.{

18.// what should be inserted here?

country =(string)(countrycode);

country;

21.}

22.}

which is the most appropriate code snippet that can be inserted at line 18 in the following code?

(assume that the code is compiled and run with assertions enabled)

.*;

class asserttest

4.{

e hashmap cctld;

asserttest()

8.{

= new hashmap();

(“in”, “india”);

(“uk”, “united kingdom”);

(“au”, “australia”);

13.// more code...14.}

15.// other methods.... string getcountry(string countrycode)

17.{

18.// what should be inserted here?

country =(string)(countrycode);

country;

21.}

22.}

countrycode!= null;

countrycode!= null : “country code can not be null”;

cctld!= null : “no country code data is available”;

cctld : “no country code data is available”;

13:

give the following code:

public class example{

public static void main(string args[]){

int l=0;

do{

n(“doing it for l is:”+l);

}while(—l>0)

n(“finish”);

}

}

which well be output:

give the following code:

public class example{

public static void main(string args[]){

int l=0;

do{

n(“doing it for l is:”+l);

}while(—l>0)

n(“finish”);

}

}

which well be output:

it for l is 3

it for l is 1

it for l is 2

it for l is 0

14:which statements about java code security are not true?

bytecode verifier loads all classes needed for the execution of a ing code is performed by the runtime runtime the bytecodes are loaded, checked and run in an interpreter. class loader adds security by separating the namespaces for the classes of the local file system from those imported from network sources.15:a class design requires that a member variable should be accessible only by same package, which modifer word should be used?

ted

modifer

e

16:character流與byte流的區(qū)別是

a.每次讀入的字節(jié)數(shù)不同

b.前者帶有緩沖,后者沒(méi)有

c.前者是塊讀寫(xiě),后者是字節(jié)讀寫(xiě)

d.二者沒(méi)有區(qū)別,可以互換使用

簡(jiǎn)答題

17:找出兩個(gè)字符串中最大子字符串,如“abractyeyt”,“dgdsaeactyey”的最大子串為“actyet”

18:假設(shè)你有一個(gè)用1001個(gè)整數(shù)組成的數(shù)組,這些整數(shù)是任意排列的,但是你知道所有的整數(shù)都在1到1000(包括1000)之間。此外,除一個(gè)數(shù)字出現(xiàn)兩次外,其他所有數(shù)字只出現(xiàn)一次。假設(shè)你只能對(duì)這個(gè)數(shù)組做一次處理,用一種算法找出重復(fù)的那個(gè)數(shù)字。如果你在運(yùn)算中使用了輔助的存儲(chǔ)方式,那么你能找到不用這種方式的算法嗎?

19:到底在哪里使用cascade=“...”?

20:使用tomcat部署應(yīng)用程序 emoryerror 嗎?如何解決的。

21:請(qǐng)寫(xiě)一個(gè)java程序?qū)崿F(xiàn)數(shù)據(jù)庫(kù)緩沖池的功能?

22:有200個(gè)正整數(shù),且每個(gè)數(shù)均在1000至9999之間。請(qǐng)編制函數(shù),其函數(shù)的功能是:要求按每個(gè)數(shù)的后三位的大小進(jìn)行升序排列,然后取出滿足此條件的前10個(gè)數(shù)依次存入數(shù)組bb中,如果后三位的數(shù)值相等,則按原先的數(shù)值進(jìn)行降序排列。

23:anonymous inner class(匿名內(nèi)部類)是否可以extends(繼承)其它類,是否可以implements(實(shí)現(xiàn))interface(接口)?

24:找出字符串a(chǎn)中包含的字符可以進(jìn)行的所有不同組合。例如:abccd中,ab,ac,bc,cc,abd等都是可能的組合。

25:下面的代碼在絕大部分時(shí)間內(nèi)都運(yùn)行得很正常,請(qǐng)問(wèn)在什么情況下會(huì)出現(xiàn)問(wèn)題?問(wèn)題的根源在哪里?

import .linkedlist;

public class stack {

linkedlist list = new linkedlist();

public synchronized void push(object x){

synchronized(list){

t(x);

notify();

}

}

public synchronized object pop()

throws exception {

synchronized(list){

if(()<= 0){

wait();

}

return last();

}

}

}

java語(yǔ)言基礎(chǔ)知識(shí)總結(jié)篇五

《java編程》

計(jì)算器

班級(jí):****** 姓名:******

學(xué)號(hào): ******* 指導(dǎo)老師:******

實(shí)驗(yàn)名稱:java計(jì)算器

1實(shí)驗(yàn)?zāi)康? java編程語(yǔ)言在編程方面的具體應(yīng)用,以及使用面向?qū)ο蠓椒?對(duì)小應(yīng)用程序進(jìn)行需求分

析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì),最后使用java編程實(shí)現(xiàn)的全過(guò)程。

2實(shí)驗(yàn)意義:

在編程我們使用的java語(yǔ)言,是目前比較流行的編程語(yǔ)言。在當(dāng)今這個(gè)時(shí)代,java語(yǔ)言在編程方面的優(yōu)勢(shì)使得編程有了更好的選擇。java語(yǔ)言最大的特點(diǎn)是具有跨平臺(tái)性,使其不受平臺(tái)不同的影響,得到了廣泛的應(yīng)用。實(shí)訓(xùn)性質(zhì)

本課程是計(jì)算機(jī)信息管理專業(yè)的一門(mén)實(shí)踐性課程,是《java編程》課程的實(shí)踐性教學(xué)環(huán)節(jié)。實(shí)訓(xùn)目標(biāo)

⑴綜合應(yīng)用java程序設(shè)計(jì)的知識(shí)解決實(shí)際問(wèn)題。

⑵學(xué)會(huì)在應(yīng)用程序的設(shè)計(jì)過(guò)程中,應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。⑶學(xué)會(huì)應(yīng)用jdbc創(chuàng)建數(shù)據(jù)庫(kù)應(yīng)用程序。

⑷學(xué)會(huì)開(kāi)發(fā)基于swing的應(yīng)用程序及多文檔應(yīng)用程序的設(shè)計(jì)。實(shí)訓(xùn)任務(wù)

用java語(yǔ)言開(kāi)發(fā)工具(例如jdk、jcreator、netbeans等)制作一個(gè)簡(jiǎn)單的可運(yùn)行的完整的應(yīng)用程序或小型系統(tǒng),并編制出各階段必要的文檔。

將創(chuàng)建一個(gè)計(jì)算器,可以進(jìn)行常用的加減乘除算術(shù)運(yùn)算。本實(shí)例的知識(shí)點(diǎn)有:窗口布局器gridlayout的應(yīng)用,對(duì)按鈕消息的監(jiān)聽(tīng)和響應(yīng)。

6實(shí)訓(xùn)條件

<軟件:>windows xp,netbeans ide 6.52 7開(kāi)發(fā)背景: java是由sun microsystems公司于1995年5月推出的java程序設(shè)計(jì)語(yǔ)言(以下簡(jiǎn)稱java語(yǔ)言)和java平臺(tái)的總稱。java語(yǔ)言是一個(gè)支持網(wǎng)絡(luò)計(jì)算的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言。java語(yǔ)言吸收了smalltalk語(yǔ)言和c++語(yǔ)言的優(yōu)點(diǎn),并增加了其它特性,如支持并發(fā)程序設(shè)計(jì)、網(wǎng)絡(luò)通信、和多媒體數(shù)據(jù)控制等。

8系統(tǒng)部分分析:

1)java語(yǔ)言是簡(jiǎn)單的。java語(yǔ)言的語(yǔ)法與c語(yǔ)言和c++語(yǔ)言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用java。另一方面,java丟棄了c++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動(dòng)的強(qiáng)制類型轉(zhuǎn)換。

2)java語(yǔ)言是一個(gè)面向?qū)ο蟮摹ava語(yǔ)言提供類、接口和繼承等原語(yǔ),為了簡(jiǎn)單起見(jiàn),只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為implements)。java語(yǔ)言全面支持動(dòng)態(tài)綁定,而c++ 語(yǔ)言只對(duì)虛函數(shù)使用動(dòng)態(tài)綁定

3)java語(yǔ)言是分布式的。java語(yǔ)言支持internet應(yīng)用的開(kāi)發(fā),在基本的java應(yīng)用編程接口中有一個(gè)網(wǎng)絡(luò)應(yīng)用編程接口(),它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫(kù),包括url、urlconnection、socket、serversocket等。java的rmi(遠(yuǎn)程方法激活)機(jī)制也是開(kāi)發(fā)分布式應(yīng)用的重要手段。

4)java語(yǔ)言是健壯的。java的強(qiáng)類型機(jī)制、異常處理、廢料的自動(dòng)收集等是java程序健壯性的重要保證。對(duì)指針的丟棄是java的明智選擇。java的安全檢查機(jī)制使得java更具健壯性。

5)java語(yǔ)言是安全的。java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,java提供了一個(gè)安全機(jī)制以防惡意代碼的攻擊。除了java語(yǔ)言具有的許多安全特性以外,java對(duì)通過(guò)網(wǎng)絡(luò)下載的類具有一個(gè)安全防范機(jī)制(類classloader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機(jī)制.6)java語(yǔ)言是體系結(jié)構(gòu)中立的。java程序(后綴為java的文件)在java平臺(tái)上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件), 然后可以在實(shí)現(xiàn)這個(gè)java平臺(tái)的任何系統(tǒng)中運(yùn)行。

7)java語(yǔ)言是可移植的。這種可移植性來(lái)源于體系結(jié)構(gòu)中立性,另外,java還嚴(yán)格規(guī)定了各個(gè)基本數(shù)據(jù)類型的長(zhǎng)度。java系統(tǒng)本身也具有很強(qiáng)的可移植性,java編譯器是用java實(shí)現(xiàn)的.8)java語(yǔ)言是解釋型的。如前所述,java程序在java平臺(tái)上被編譯為字節(jié)碼格式,然后可以在實(shí)現(xiàn)這個(gè)java平臺(tái)的任何系統(tǒng)中運(yùn)行。

9)java是高性能的。與那些解釋型的高級(jí)腳本語(yǔ)言相比,java的確是高性能的。事實(shí)上,java的運(yùn)行速度隨著jit(just-in-time)編譯器技術(shù)的發(fā)展越來(lái)越接近于c++。

10)java語(yǔ)言是多線程的。在java語(yǔ)言中,線程是一種特殊的對(duì)象,它必須由thread類或其子(孫)類來(lái)創(chuàng)建。

11)java語(yǔ)言是動(dòng)態(tài)的。java語(yǔ)言的設(shè)計(jì)目標(biāo)之一是適應(yīng)于動(dòng)態(tài)變化的環(huán)境。

目錄

課程設(shè)計(jì)題目 ……………………………… p1

課程設(shè)計(jì)簡(jiǎn)介 ……………………………… p2

課程設(shè)計(jì)源代碼…………………………… p5

課程設(shè)計(jì)運(yùn)行結(jié)果 ……………………… p15 課程設(shè)計(jì)心得體會(huì) ………………………

p16

package computerpad;import .*;import .event.*;import .*;import .*;import list;import format;public class computerpad extends frame implements actionlistener {

numberbutton numberbutton[];

operationbutton oprationbutton[];

button 小數(shù)點(diǎn)按鈕,正負(fù)號(hào)按鈕,退格按鈕,求倒數(shù)按鈕,等號(hào)按鈕,清零按鈕;

panel panel;

jtextfield resultshow;

string 運(yùn)算符號(hào)[]={“+”,“-”,“*”,“/”};

linkedlist 鏈表;

boolean 是否按下等號(hào)=false;

public computerpad()

{

super(“計(jì)算器”);

鏈表=new linkedlist();

numberbutton=new numberbutton[10];

for(int i=0;i<=9;i++)

{

numberbutton[i]=new numberbutton(i);

numberbutton[i].addactionlistener(this);

}

oprationbutton=new operationbutton[4];

for(int i=0;i<4;i++)

{

oprationbutton[i]=new operationbutton(運(yùn)算符號(hào)[i]);

oprationbutton[i].addactionlistener(this);

}

小數(shù)點(diǎn)按鈕=new button(“.”);

正負(fù)號(hào)按鈕

=new button(“+/-”);

等號(hào)按鈕=new button(“=”);

求倒數(shù)按鈕=new button(“1/x”);

退格按鈕=new button(“退格”);

清零按鈕=new button(“c”);

eground();

eground();

eground();

eground();

eground();

eground();

ionlistener(this);

ionlistener(this);

ionlistener(this);

ionlistener(this);

ionlistener(this);

ionlistener(this);

resultshow=new jtextfield(10);

izontalalignment();

eground();

t(new font(“timesroman”,,14));

der(new softbevelborder(d));

kground();

table(false);

panel=new panel();

out(new gridlayout(4,5));

(numberbutton[1]);

(numberbutton[2]);

(numberbutton[3]);

(oprationbutton[0]);

(清零按鈕);

(numberbutton[4]);

(numberbutton[5]);

(numberbutton[6]);

(oprationbutton[1]);

(退格按鈕);

(numberbutton[7]);

(numberbutton[8]);

(numberbutton[9]);

(oprationbutton[2]);

(求倒數(shù)按鈕);

(numberbutton[0]);

(正負(fù)號(hào)按鈕);

(小數(shù)點(diǎn)按鈕);

(oprationbutton[3]);

(等號(hào)按鈕);

add(panel,);

add(resultshow,);

addwindowlistener(new windowadapter()

{ public void windowclosing(windowevent e)

{

(0);

}

});

setvisible(true);

setbounds(100,50,240,180);

setresizable(false);

validate();

} public void actionperformed(actionevent e)

{

if(rce()instanceof numberbutton)

{

numberbutton b=(numberbutton)rce();

if(()==0)

{

int number=ber();

(“"+number);

t(”“+number);

是否按下等號(hào)=false;

}

else if(()==1&&是否按下等號(hào)==false)

{

int number=ber();

string num=(string)first();

string s=(”“+number);

(0,s);

t(s);

}

else if(()==1&&是否按下等號(hào)==true)

{

int number=ber();

first();

(”“+number);

是否按下等號(hào)=false;

t(”“+number);

}

else if(()==2)

{

int number=ber();

(”“+number);

t(”“+number);

}

else if(()==3)

{

int number=ber();

string num=(string)t();

string s=(”“+number);

(2,s);

t(s);

}

}

else if(rce()instanceof operationbutton)

{

operationbutton b=(operationbutton)rce();

if(()==1)

{

string fuhao=運(yùn)算符號(hào)();

(fuhao);

}

else if(()==2)

{

string fuhao=運(yùn)算符號(hào)();

(1,fuhao);

}

else if(()==3)

{

string fuhao=運(yùn)算符號(hào)();

string number1=(string)first();

string number2=(string)t();

string 運(yùn)算符號(hào)=(string)(1);

try

{

double n1=ouble(number1);

double n2=ouble(number2);

double n=0;

if((”+“))

{

n=n1+n2;

}

else if((”-“))

{

n=n1-n2;

}

else if((”*“))

{

n=n1*n2;

}

else if((”/“))

{

n=n1/n2;

}

();

(”“+n);

(fuhao);

t(”“+n);

}

catch(exception ee)

{

}

}

}

else if(rce()==等號(hào)按鈕)

{

是否按下等號(hào)=true;

if(()==1||()==2)

{

string num=(string)first();

t(”“+num);

}

else if(()==3)

{

string number1=(string)first();

string number2=(string)t();

string 運(yùn)算符號(hào)=(string)(1);

try

{

double n1=ouble(number1);

double n2=ouble(number2);

double n=0;

if((”+“))

{

n=n1+n2;

}

else if((”-“))

{

n=n1-n2;

}

else if((”*“))

{

n=n1*n2;

}

else if((”/“))

{

n=n1/n2;

}

t(”“+n);

(0,”“+n);

last();

last();

}

catch(exception ee)

{

}

}

}

else if(rce()==小數(shù)點(diǎn)按鈕)

{

if(()==0)

{

是否按下等號(hào)=false;

}

else if(()==1)

{

string dot=el();

string num=(string)first();

string s=null;

if(f(dot)==-1)

{

s=(dot);

(0,s);

}

else

{

s=num;

}

(0,s);

t(s);

}

else if(()==3)

{

string dot=el();

string num=(string)t();

string s=null;

if(f(dot)==-1)

{

s=(dot);

(2,s);

}

else

{

s=num;

}

t(s);

}

}

else if(rce()==退格按鈕)

{

if(()==1)

{

string num=(string)first();

if(()>=1)

{

num=ing(0,()-1);

(0,num);

t(num);

}

else

{

last();

t(”0“);

}

}

else if(()==3)

{

string num=(string)t();

if(()>=1)

{ num=ing(0,()-1);

(2,num);

t(num);

}

else

{

last();

t(”0“);

}

}

}

else if(rce()==正負(fù)號(hào)按鈕)

{

if(()==1)

{

string number1=(string)first();

try

{

double d=ouble(number1);

d=-1*d;

string str=f(d);

(0,str);

t(str);

}

catch(exception ee)

{

}

}

else if(()==3)

{

string number2=(string)t();

try

{

double d=ouble(number2);

d=-1*d;

string str=f(d);

(2,str);

t(str);

}

catch(exception ee){

}

}

}

else if(rce()==求倒數(shù)按鈕)

{

if(()==1||()==2)

{

string number1=(string)first();

try

{

double d=ouble(number1);

d=1.0/d;

string str=f(d);

(0,str);

t(str);

}

catch(exception ee){

}

}

else if(()==3)

{

string number2=(string)t();

try

{

double d=ouble(number2);

d=1.0/d;

string str=f(d);

(0,str);

t(str);

}

catch(exception ee){

}

}

}

else if(rce()==清零按鈕)

{

是否按下等號(hào)=false;

t(”0“);

();

}

} public static void main(string args[])

{

new computerpad();

}

}

package computerpad;import .*;import .event.*;import .*;public class numberbutton extends button {

int number;

public numberbutton(int number)

{

super(”"+number);

=number;

setforeground();

}

public int getnumber()

{

return number;

} }

import .*;import .event.*;import .*;public class operationbutton extends button {

string 運(yùn)算符號(hào);

public operationbutton(string s)

{

super(s);

運(yùn)算符號(hào)=s;

setforeground();

}

public string get運(yùn)算符號(hào)()

{

return 運(yùn)算符號(hào);

} } 14 java實(shí)訓(xùn)心得:

未接觸java之前,聽(tīng)人說(shuō)java這門(mén)語(yǔ)言如何的強(qiáng)大和難以入門(mén),但學(xué)習(xí)之后,給我的感覺(jué)卻是語(yǔ)言沒(méi)有所謂的難于不難,關(guān)鍵是自己有沒(méi)有真正投入去學(xué),有沒(méi)有花時(shí)間去學(xué)。java是一門(mén)很好的語(yǔ)言,經(jīng)過(guò)周?chē)藢?duì)java的宣傳,我一開(kāi)始不敢去學(xué)習(xí)這門(mén)語(yǔ)言,因?yàn)橐婚T(mén)高級(jí)語(yǔ)言總是讓人想到一開(kāi)始的學(xué)習(xí)會(huì)很難,但是后來(lái)在自己的努力和老師同學(xué)的幫助下,我加入了java學(xué)習(xí)者的行列。

老師把我們帶進(jìn)了門(mén),那么,以后漫長(zhǎng)的深入學(xué)習(xí)還是要靠自己。經(jīng)常性的編寫(xiě)一些程序,或則去看懂、研究透別人編寫(xiě)的程序?qū)τ谖覀兇蚝没A(chǔ)是非常有利的。讓我們懷著對(duì)java的一腔熱情,用自己的刻苦努力去把java學(xué)好。將來(lái),用自己的成績(jī)?nèi)セ貓?bào)有恩于我們的社會(huì)、家人和朋友。

【本文地址:http://mlvmservice.com/zuowen/2627510.html】

全文閱讀已結(jié)束,如果需要下載本文請(qǐng)點(diǎn)擊

下載此文檔