java基礎考試
⑴ java基礎題
使用switch結構的話、針對你的這種場景會有一些問題。switch中得case後面只能跟常量表達式。如:
switch(表達式)
{
case 常量表達式1:語句1;
....
case 常量表達式2:語句2;
default:語句;
}
而你的:==100,>=90,>=60都是變化表達式, 所以語法是通不過的。
建議直接採用:if和else的方法就好了
⑵ JAVA面試的時候一般考什麼
Java程序員應聘一般要經過筆試和面試。作為一個技術人員,特別是剛出道的,筆試的成績是比較重要。以下是我經過幾次筆試總結的一些經驗教訓。
一般來說,試題會分為三個部分,Java基礎、資料庫基礎和綜合題。
首先是Java基礎,這個很簡單,也就是考考你對Java語言本身的理解,包括語法,類庫的使用等。有選擇題,也會有寫代碼題。寫代碼的時候認真仔細就是了。基礎題答案一般都比較死,所以盡量不要錯。在這,出一道我遇到的題考考大家,Java編程:把American,Japan,China,France,Brazil按英文字母排序。說說思路就行了:)
其次是資料庫。准確的說,考的不是資料庫,而是SQL語句。一般題型是,給兩三個表,然後讓你根據需求寫SQL。最普通的就是學生表、選課表和成績表。要掌握的就是連接查詢,還有就是一些函數(建表、表操作等就不說了哈)。其實這些都相當簡單,但是往往被新手忽略。我就遭過,因為有半年沒寫過SQL了,連接查詢搞忘完了,有兩次筆試都空起,結果可想而知。這些是必備技術,千萬不能空起啊!
然後是綜合題。之所以說是綜合題,是因為包含的內容比較多,一般都是主觀題。這里,人家是想看看你對Java高級技術以及周邊技術的了解程度和運用能力,說白了,就是考概念和考應用題。這里說的Java高級技術,也就是J2EE架構中的技術,這些不會的話,人家是不得要你的。如果你會一些流行的技術框架,那就更好了。所謂Java周邊技術,包括HTTP,HTML,XML,UML,JavaScript,CSS等,要求一般不是很高,要了解,比如讓你用HTML寫個表單你要會。關於剛才提到的技術或者框架,希望要了解其工作的原理和機制,一般要考,比如讓你說說Struts的MVC。關於應用題,可能出一道網路應用來考。
以上就是我筆試的經驗,一般是這樣,不過我也遇到過變態的。一次筆試,就被徹底甩翻,C/C++、資料庫、Java技術、Shell編程、網路協議、Unix、軟體工程全部上了。
如果筆試做的好,那就成功大半了,不過不要輕視面試哦!
關於面試技巧,網上太多了,我就不多說。作為技術人員,雖說以技術為主,但溝通能力同樣重要,面試時要主動,表達要清楚,要微笑,要誠實,要穩重。
關於價錢,說實話,我們中國的程序員是世界上最好的程序員,我們拿最少的錢,干最多的活。剛出道的程序員,在成都,一般來說,試用不會超過2000,多半是1500左右,做好被資本家剝削的心理准備吧
⑶ java基礎測試題
答案為 C。
public Test(){
x=35;
}
public Test(String s){}
為構造方法,構造方法規定是不需要用void之類的修飾,也沒有返回值
public void Test(double f){
this.x=(int)f;
},這個則是與類名同名的方法,但這樣的做法不贊同。
⑷ java基礎總復習資料
通過Java認證 SCJP 考試之精闢總結
1.switch裡面只能是short,int,char,byte的.
2.if (a="a") 編譯錯, if(a=false)編譯ok,原因是a=false的a代表了個boolean值
3.這種寫法Outer.Inner i = new Outer().new Inner(); OK!
4.文件里, 8 默認是int, 8.0默認是double
5.八進制是 0開頭,不是O(英文o)
6.byte -128~127 ,-128是二進制的多少?
7. -1>>32還是-1, -1>>>32為什麼還是-1?
8. char c='c'; String s ="s"; s+=c;結果是 sc!!!
9. boolean b1=true; boolean b2=true; System.out.println(b1b2); 結果是true.編譯沒錯!
10.java的默認import包有哪些?
類和對象(Class and Object)
0.最外層的類可以聲明成final:final class a{} ok!,但是不能是private和static的.
1.overload是同類里同樣的方法名,override是父子的繼承
2.override的返回結果必須一樣,否則編譯錯哦
The return type of an overriding method is identical to the return type of the method it overrides.
3.super.super(),靠,錯的,沒這么寫的
4.static和非static之間永遠無法override!
5. 看程序
以下是引用片段:
public class A{
void test1() throws baseEx{hi();}
void hi(){System.out.println("say hi,a");}
}
class AA extends A{
void hi(){System.out.println("say hi,aa");}
}
class test{
static void main(String b[]) throws Exception{
A a = new AA();
a.test1();
}
}
結果是,"say hi,aa",這說明什麼?說明,方法永遠跟著類的原來面目走;而,變數恰恰相反!
6.一個非抽象方法死活也別想override成一個抽象方法
7.override的子類的方法拋出的的異常只能是父類方法拋出異常的子異常類,或者無!
8.構造器不能是native,final,static,synchronized的,可以是public,private,什麼都沒有的,呵呵
9.構造器函數里還可以寫return呢,但後面什麼都不許有,甚至null(這不是廢話嗎,哈哈)
10.構造器不能返回值.這大家都知道,但如果有個"構造器"反值了,別緊張,它就不是構造器嘍,只是個普通函數
11.super();this();這兩個函數只能在構造函數里調用.
12,成員變數聲明時候賦值,比構造函數還早.int i=1; ealier than Test(){}
13.方法的參數變數可以是final.
14. hashCode返回一個int
15. void wait() throws InterruptException wait扔InterruptException異常
16. java.lang.Void 是void的包裝類
17. Byte,Interger,Double...所有的跟數有關的包裝類都是繼承於Number
介面Interface)
1.介面的所有方法默認都是public,abstract和non-static的
2.介面的所有變數默認都是public,static,final的.所以,介面的變數不能改值,在它的實現類里.
3.介面的實現類實現的方法必須和介面的方法拋出同樣的異常,不許是子類,這和override不一樣!同樣,如果介面方法沒有拋,實現方法也不能拋
4.實現類實現的方法必須顯式的聲明成public,什麼都不寫都不行,啊!!!
5.介面不能聲明成final,要不它怎麼被實現呢(這好像又是廢話啊
6.一個類實現兩個介面,如果兩個介面有相同的方法,實現類就實現這個方法,沒問題的.
更多JAVA技術信息請咨詢美 國矽谷SVSE徐東校區 http://www.xdsvse.com
⑸ java基礎知識
1. PATH環境變數。
作用是指定命令搜索路徑,在命令行下面執行命令如javac編譯java程序時,它會到PATH變數所指定的路徑中查找看是否能找到相應的命令程序。我們需要把jdk安裝目錄下的bin目錄增加到現有的PATH變數中,bin目錄中包含經常要用到的可執行文件如javac/java/javadoc等待,設置好PATH變數後,就可以在任何目錄下執行javac/java等工具了。
CLASSPATH環境變數。
作用是指定類搜索路徑,要使用已經編寫好的類,前提當然是能夠找到它們了,JVM就是通過CLASSPATH來尋找類的。我們需要把jdk安裝目錄下的lib子目錄中的dt.jar和tools.jar設置到CLASSPATH中,當然,當前目錄「.」也必須加入到該變數中。
2、public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int sum=0;//設定一個變數,求和的值
for(int i=1;i<=100;i++){
sum=sum+i;
}
System.out.println("1+2+3+....+100的和:"+sum);
}
}
3、import java.util.Arrays;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int str[]={1,3,9,5,4,8,2};
Arrays.sort(str);
System.out.println("數組中最大數:"+str[str.length-1]);
}
}
4、public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str="abc.java.txt";//定義一個變數設置文件名稱
System.out.println(str.substring(str.lastIndexOf(".")+1));
}
}
5、public class Student {
private String name;//姓名
private int age;//年齡
private double score;//成績
public Student(String name,int age,double score){
this.name=name;
this.age=age;
this.score=score;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
}
6、我就不貼代碼了。你自己創建借個對象。然後把五個對象的成績放在一個數組中,直接調用Arrays.sort(數組名) 這個方法排序輸出就ok了。
7、方法:可以使用文件流來讀寫。樓主可根據文件的類型選擇是位元組流還是字元流來實現。如果樓主還需要,可以把代碼寫出來
8、TCP(Transmission Control Protocol,傳輸控制協議)是基於連接的協議,也就是說,在正式收發數據前,必須和對方建立可靠的連接。一個TCP連接必須要經過三次「對話」才能建立起來,其中的過程非常復雜,我們這里只做簡單、形象的介紹,你只要做到能夠理解這個過程即可。我們來看看這三次對話的簡單過程:主機A向主機B發出連接請求數據包:「我想給你發數據,可以嗎?」,這是第一次對話;主機B向主機A發送同意連接和要求同步(同步就是兩台主機一個在發送,一個在接收,協調工作)的數據包:「可以,你什麼時候發?」,這是第二次對話;主機A再發出一個數據包確認主機B的要求同步:「我現在就發,你接著吧!」,這是第三次對話。三次「對話」的目的是使數據包的發送和接收同步,經過三次「對話」之後,主機A才向主機B正式發送數據。
TCP協議能為應用程序提供可靠的通信連接,使一台計算機發出的位元組流無差錯地發往網路上的其他計算機,對可靠性要求高的數據通信系統往往使用TCP協議傳輸數據。
面向非連接的UDP協議
「面向非連接」就是在正式通信前不必與對方先建立連接,不管對方狀態就直接發送。這與現在風行的手機簡訊非常相似:你在發簡訊的時候,只需要輸入對方手機號就OK了。
UDP(User Data Protocol,用戶數據報協議)是與TCP相對應的協議。它是面向非連接的協議,它不與對方建立連接,而是直接就把數據包發送過去!
UDP適用於一次只傳送少量數據、對可靠性要求不高的應用環境。比如,我們經常使用「ping」命令來測試兩台主機之間TCP/IP通信是否正常,其實「ping」命令的原理就是向對方主機發送UDP數據包,然後對方主機確認收到數據包,如果數據包是否到達的消息及時反饋回來,那麼網路就是通的。例如,在默認狀態下,一次「ping」操作發送4個數據包(如圖2所示)。大家可以看到,發送的數據包數量是4包,收到的也是4包(因為對方主機收到後會發回一個確認收到的數據包)。這充分說明了UDP協議是面向非連接的協議,沒有建立連接的過程。正因為UDP協議沒有連接的過程,所以它的通信效果高;但也正因為如此,它的可靠性不如TCP協議高。QQ就使用UDP發消息,因此有時會出現收不到消息的情況。
TCP協議和UDP協議各有所長、各有所短,適用於不同要求的通信環境。
9、<form id="register" name="register" method="post" action="">
<table width="380" border="0">
<tr>
<td width="93" height="37">用戶名:</td>
<td width="271">
<input type="text" name="username" id="username" />
</td>
</tr>
<tr>
<td height="30">密碼:</td>
<td><input type="password" name="pwd" id="pwd" /></td>
</tr>
<tr>
<td height="26">確認密碼:</td>
<td><input type="password" name="confirmpwd" id="confirmpwd" /></td>
</tr>
<tr>
<td height="33">性別:</td>
<td>
<input type="radio" name="sex" value="女" />
男
<input type="radio" name="sex" value="男" />
女</td>
</tr>
<tr>
<td>城市:</td>
<td>
<select name="city" id="city">
<option value="" selected="selected"></option>
<option value="深圳市">深圳市</option>
<option value="上海市">上海市</option>
</select>
</td>
</tr>
<tr>
<td>興趣愛好:</td>
<td><label>
<input type="checkbox" name="hobby" id="mountain" value="mountain" />
爬山
<input type="checkbox" name="hobby" id="basketball" value="basketball" />
籃球
<input type="checkbox" name="hobby" id="swimming" value="swimming" />
游泳</label></td>
</tr>
<tr>
<td>簡介:</td>
<td>
<textarea name="introce" cols="30" id="introce" rows="3"></textarea>
</td>
</tr>
<tr>
<td></td>
<td><label>
<input type="button" name="Submit" value="提交" onclick="check()"/>
</label></td>
</tr>
</table>
</form>
10、我給你寫個js,你在代碼中調用這個方法
<script language="javascript" type="text/javascript">
function check(){
//判斷用戶名
var username=document.getElementById("username").value;
//定義正則表達式,用戶名必須是字母數字或下劃線, 不能以數字開頭
var regex1=/^[A-Za-z_][0-9A-Za-z_]$/
var s=document.getElementById("username").value;
alert(regex1.test(s));
return;
if(regex1.test(username)){
alert("用戶名必須是字母數字或下劃線, 不能以數字開頭");
return;
}
//判斷密碼
//定義正則表達式,密碼必須6-16位字母數字下劃線
var regex2=/^[0-9A-Za-z_]{6,16}$/
var pwd=document.getElementById("pwd").value;
if(regex2.test(pwd)==false){
alert("密碼必須6-16位字母數字下劃線");
return;
}
//判斷確認密碼
var confirmpwd=document.getElementById("confirmpwd");
if(pwd.value!=confirmpwd.value){
alert("兩次密碼輸入不一致,請重新輸入!");
return;
}
//判斷性別、城市、愛好、簡介
var sex=document.getElementsByName("sex");
var city=document.getElementById("city");
var hobby=document.getElementsByName("hobby");
var introce=document.getElementById("introce");
var t=0;
for(var i=0;i<sex.length;i++){
if(sex[i].checked==true){
t++;
}
}
if(t==0){
alert("請選擇性別!");
return;
}
t=0;
for(var i=0;i<hobby.length;i++){
if(hobby[i].checked==true){
t++;
}
}
if(t==0){
alert("請選擇愛好!");
return;
}
if(city.value==""){
alert("城市不能為空,請選擇城市");
return;
}
if(introce.value==""||introce.value.length==0){
alert("個人簡介不能為空");
return;
}
}
</script>
以上有不對的地方盡請指出,謝謝
⑹ 2015全國計算機二級java考試
二級(Java語言程序設計)考試大綱
公共基礎知識
基本要求
1. 掌握演算法的基本概念。
2. 掌握基本數據結構及其操作。
3. 掌握基本排序和查找演算法。
4. 掌握逐步求精的結構化程序設計方法。
5. 掌握軟體工程的基本方法,具有初步應用相關技術進行軟體開發的能力。
6. 掌握資料庫的基本知識,了解關系資料庫的設計。
考試內容
一、基本數據結構與演算法
1. 演算法的基本概念;演算法復雜度的概念和意義(時間復雜度與空間復雜度)。
2. 數據結構的定義;數據的邏輯結構與存儲結構;數據結構的圖形表示;線性結構與非線性結構的概念。
3. 線性表的定義;線性表的順序存儲結構及其插入與刪除運算。
4. 棧和隊列的定義;棧和隊列的順序存儲結構及其基本運算。
5. 線性單鏈表、雙向鏈表與循環鏈表的結構及其基本運算。
6. 樹的基本概念;二叉樹的定義及其存儲結構;二叉樹的前序、中序和後序遍歷。
7. 順序查找與二分法查找演算法;基本排序演算法(交換類排序,選擇類排序,插入類排序)。
二、程序設計基礎
1. 程序設計方法與風格。
2. 結構化程序設計。
3. 面向對象的程序設計方法,對象,方法,屬性及繼承與多態性。
三、軟體工程基礎
1. 軟體工程基本概念,軟體生命周期概念,軟體工具與軟體開發環境。
2. 結構化分析方法,數據流圖,數據字典,軟體需求規格說明書。
3. 結構化設計方法,總體設計與詳細設計。
4. 軟體測試的方法,白盒測試與黑盒測試,測試用例設計,軟體測試的實施,單元測試、集成測試和系統測試。
5. 程序的調試,靜態調試與動態調試。
四、資料庫設計基礎
1. 資料庫的基本概念:資料庫,資料庫管理系統,資料庫系統。
2. 數據模型,實體聯系模型及E-R圖,從E-R圖導出關系數據模型。
3. 關系代數運算,包括集合運算及選擇、投影、連接運算,資料庫規范化理論。
4. 資料庫設計方法和步驟:需求分析、概念設計、邏輯設計和物理設計的相關策略。
考試方式
1. 公共基礎知識的考試方式為筆試,與JAVA語言程序設計的筆試部分合為一張試卷。公共基礎知識部分佔全卷的30分。
2. 公共基礎知識有10道選擇題和5道填空題。
JAVA語言程序設計
基本要求
1. 掌握Java語言的特點,實現機制和體系結構。
2. 掌握Java語言中面向對象的特性。
3. 掌握Java語言提供的數據類型和結構。
4. 掌握Java語言編程的基本技術。
5. 會編寫Java用戶界面程序。
6. 會編寫Java簡單應用程序。
7. 會編寫Java小應用程序(Applet)。
8. 了解Java的應用。
考試內容
一、Java語言的特點和實現機制
二、Java體系結構
1. JDK目錄結構。
2. Java的API結構。
3. 開發環境設置。
4. Java程序結構。
三、Java語言中面向對象的特性
1. 面向對象編程的基本概念和特徵。
2. 類的基本組成和使用。
3. 對象的生成、使用和刪除。
4. 介面與包。
5. Java類庫的常用類和介面。
四、Java簡單數據類型及運算
1. 變數和常量。
2. 基本數據類型及轉換。
3. Java類庫中對簡單數據類型的類包裝。
4. 運算符和表達式運算。
5. 數組和字元串。
五、Java語言的基本語句
1. 表達式語句。
2. 條件語句。
3. 循環語句。
4. 注釋語句。
5. 異常處理。
六、Java編程技術基礎
1. 線程的概念和使用。
2. 同步與共享。
3. 串列化概念和目的。
4. 串列化方法。
5. 串列化的舉例。
6. 基於文本的應用。
7. 文件和文件I/O。
8.
匯集(collections)介面。
七、編寫用戶界面程序
1. 圖形用戶界面。
2. AWT庫簡介。
3. Swing簡介。
4. AWT與Swing比較。
八、編寫小應用程序(Applet)
1. 小應用程序概念。
2. 安全機制。
3. Applet執行過程。
4. Applet的圖形繪制。
5. Applet的窗口。
6. Applet的工作環境。
7. Java Application和Applet。
九、Java的應用
十、J2DK的下載和操作
考試方式
1. 筆試:90分鍾,滿分100分,其中含公共基礎知識部分的30分。
2. 上機操作:90分鍾,滿分100分。
(1)基本操作。
(2)簡單應用。
(3)綜合應用。
⑺ 計算機2級JAVA都考些什麼
國計算機等級考試2級JAVA語言 考試大綱2008年最新版
基本要求:
1. 掌握Java語言的特點,實現機制和體系結構。
2. 掌握Java語言中面向對象的特性。
3. 掌握Java語言提供的數據類型和結構。
4. 掌握Java語言編程的基本技術。
5. 會編寫Java用戶界面程序。
6. 會編寫Java簡單應用程序。
7. 會編寫Java小應用程序(Applet)。
8. 了解Java的應用。
考試內容:
一、 Java語言的特點和實現機制
二、 Java體系結構
1. JDK目錄結構。
2. Java的API結構。
3. 開發環境設置。
4. Java程序結構。
三、 Java語言中面向對象的特性。
1. 面向對象編程的基本概念和特徵。
2. 類的基本組成和使用。
3. 對象的生成、使用和刪除。
4. 介面與包。
5. Java類庫中常用類和介面。
四、 Java簡單數據類型及運算
1. 變數和常量。
2. 基本數據類型及轉換。
3. Java類庫中對簡單數據類型的類包裝。
4. 運算符和表達式運算。
5. 數組和字元串。
五、 Java語言的基本語句
1. 表達式語句。
2. 條件語句。
3. 循環語句。
4. 注釋語句。
5. 異常處理。
六、 Java編程技術基礎
1. 線程的概念和使用。
2. 同步與共享。
3. 串列化概念和目的。
4. 串列化方法。
5. 串列化的舉例。
6. 基於文本的應用。
7. 文件和文件I/O。
8. 匯集(collections)介面。
七、 編寫用戶界面程序
1. 圖形用戶界面。
2. AWT庫簡介。
3. Swing簡介。
4. AWT與Swing比較。
八、 編寫小應用程序(Applet)
1. 小應用程序概念。
2. 安全機制。
3. Applet執行過程。
4. Applet的圖形繪制。
5. Applet的窗口。
6. Applet的工作環境。
7. Java Application 和Applet。
九、 Java的應用
十、 J2DK的下載和操作。
考試方式:
筆試:90分鍾,滿分100分,其中含公共基礎知識部分的30分。
上機操作:90分鍾,滿分100分。
上機題目類型要求:
(1) 基本操作。
(2) 簡單應用。
(3) 綜合應用。
⑻ Java 基礎考試題及答案
http://wenku..com/view/152eb48b6529647d27285223.html
⑼ java基礎知識試題
java基礎試題一般都不難,
都是上課講的東西,就是一基礎點,
比如說繼承、多態、方法重寫、重構數據類型轉換等等一些小的知識點,這些都要靠平常積累!
⑽ 自學 Java 怎麼入門
自學的困難就是,不知道該從哪裡開始,才怎麼學,沒有一個系統的學習路徑,現在黑馬程序員最新上線了java學習路線圖,非常好的解決了一個難題,可以去搜索看一下。
一、java基礎
學習任何一門編程語言,首先要學習的是基礎語法,開啟Java學習的第一步,當然就是深入掌握計算機基礎、編程基礎語法,面向對象,集合、IO流、線程、並發、異常及網路編程,這些我們稱之為JavaSE基礎。當你掌握了這些內容之後,你就可以做出諸如:電腦上安裝的迅雷下載軟體、QQ聊天客戶端、考勤管理系統等桌面端軟體。