第一篇:黑馬程序員基礎(chǔ)測試題
黑馬程序員基礎(chǔ)測試題
1、已知一個(gè)int數(shù)組, 編程從數(shù)組中獲取最大數(shù).2、編寫一個(gè)方法(名字自定,但要符合Java編碼規(guī)范),方法內(nèi)打印一字符串,并在main()方法內(nèi)調(diào)用它。
3、環(huán)境變量path和classpath的作用是什么?
系統(tǒng)環(huán)境 path 為了更方便應(yīng)用java 開發(fā)工具 將要執(zhí)行命令的所在路徑給系統(tǒng)、讓系統(tǒng)去尋找 方便執(zhí)行、必須是可執(zhí)行文件先找當(dāng)前路徑再找path 路徑 臨時(shí)配置方式 通過set 命令完成、設(shè)置查看環(huán)境變量的值 在path環(huán)境變量的基礎(chǔ)上添加新的目錄 在任意目錄下執(zhí)行java 執(zhí)行程序 專門給類文件設(shè)置路徑 將class 文件所在目錄 告訴系統(tǒng),讓系統(tǒng)去尋找 虛擬機(jī)先從classpath 尋找
4、UDP協(xié)議與TCP協(xié)議有什么不同?
5、編寫一個(gè)類Person,為Person類定義年齡、姓名兩個(gè)屬性,并且定義一個(gè)SayHello方法,方法執(zhí)行時(shí)輸出“我是***我的年齡是***”;定義一個(gè)Chinese類從Person類繼承。
6、創(chuàng)建一個(gè)包含有private的屬性和private方法的類。然后創(chuàng)建一個(gè)內(nèi)部類,它有一個(gè)方法可用來修改外部類的屬性,并調(diào)用外部類的方法。在外部類的另一個(gè)方法中,創(chuàng)建此內(nèi)部類的對象,并且調(diào)用它的方法。
7、用控制臺程序輸出九九乘法表;輸出結(jié)果按下圖所示:
1*1=1
1*2=22*2=4
1*3=32*3=63*3=9
.........8、編寫程序拷貝一個(gè)文件, 盡量使用效率高的方式.9、編寫HTML注冊表單, 需要字段: 用戶名, 密碼, 確認(rèn)密碼, 性別(單選), 城市(下拉列表), 興趣愛好(多選), 個(gè)人簡介(文本域).10、定義一個(gè)學(xué)生類, 需要有姓名, 年齡, 考試成績?nèi)齻€(gè)成員屬性,創(chuàng)建5個(gè)對象, 屬性可為任意值.編程對這5個(gè)對象按成績排序,并將結(jié)果輸出。(提示,用TreeSet和Comparator實(shí)現(xiàn))
第二篇:【黑馬程序員】Java基礎(chǔ)總結(jié)
【黑馬程序員】Java基礎(chǔ)總結(jié)
黑馬程序員的javaEE課程主要分為2個(gè)部分:java基礎(chǔ)+java就業(yè)。今天就簡單的給大家總結(jié)一下咱們java基礎(chǔ)的知識。
注:Java采用Unicode符號集,每個(gè)字符占2個(gè)字節(jié),無論英文還是中文還是其他字符。
標(biāo)識符
為變量、類或方法起的名稱 以字母,下劃線、或者$符號開頭 由字母、數(shù)字、下劃線或者$符號開頭 區(qū)分大小寫,沒有長度限制,不能使用關(guān)鍵字 盡量取得容易辨識,見名知意
如:identifier、userName、user_Name、_sys_varl、$change
基本數(shù)據(jù)類型
Java定義了8中基本數(shù)據(jù)類型
[AppleScript] 純文本查看 復(fù)制代碼
?
/**
* @author 傳智播客 1 */ 2 布爾值----boolean(只有true和false兩種類型)3 字符-------char(16 位的Unicode字符 用單引號('')標(biāo)注;'a'表示字母4 a
't' 表示制表符
'u'中?用確切的代替
申明5 并且初始化: char c = 'A'
申明變量 char ch1,ch2)6 整數(shù)--------byte(8位)short(16)int(32)long(64)【以0開7 頭表示八進(jìn)制 ;以0x開始表示16進(jìn)制】 浮點(diǎn)型-----float double
變量
必須在類的內(nèi)部【可以在方法外也可以在方法類】 在方法類定義的變量叫做局部變量,需要顯示的初始化
黑馬程序員合肥中心 編著
成員變量和類變量【對象】自動(dòng)初始化【數(shù)字初始化為0,對象初始化為null】
常量
在程序運(yùn)行中,其值保持不變的量
不同數(shù)據(jù)類型間的相互轉(zhuǎn)換【封裝Wrapper類】 Java中類的定義:
[AppleScript] 純文本查看 復(fù)制代碼
? /**
2* @author 傳智播客
3*/ 4 <修飾符> Class <類名>{ <屬性申明>;6
<構(gòu)造器申明>;7
<方法申明>;8 }
成員變量申明:
[AppleScript] 純文本查看 復(fù)制代碼
? <修飾符> <類型> <名稱>;修飾符:
[AppleScript] 純文本查看 復(fù)制代碼
? /** 2
* @author 傳智播客 3
*/ 4 final:修飾常量,常量的值不能被修改【例如 final int CONSTANT = 50;】 5 static:申明靜態(tài)變量[類變量] static int nCount;方法的申明:
[AppleScript] 純文本查看 復(fù)制代碼
? /** 2
* @author 傳智播客
黑馬程序員合肥中心 編著
3*/ 4 <修飾符> <返回值類型> <名稱>[參數(shù)列表]{ 5
語句;6 }
方法參數(shù)的傳遞方式:
1、值傳遞:形參是基本數(shù)據(jù)類型,方法調(diào)用時(shí),實(shí)際參數(shù)把值傳遞給形式參數(shù),形式參數(shù)只是用實(shí)際參數(shù)的值初始化自己的存儲單元內(nèi)容;是兩個(gè)不同的存儲單元,所以方法執(zhí)行中,形式參數(shù)值的改變不會影響實(shí)際參數(shù)的值。
2、引用傳遞:形參類型是引用數(shù)據(jù)類型【傳遞地址】,方法調(diào)用時(shí),實(shí)際參數(shù)是對象或者數(shù)組,這時(shí),形式參數(shù)和實(shí)際參數(shù)指向的是同一地址,方法執(zhí)行中,對形式參數(shù)的操作實(shí)際上是對實(shí)際參數(shù)的操作,這個(gè)結(jié)果在方法結(jié)束后被保留了下來,所以對形式參數(shù)的操作實(shí)際上就是對實(shí)際參數(shù)的操作。構(gòu)造器申明:
[AppleScript] 純文本查看 復(fù)制代碼
?
/** 1 * @author 傳智播客 2 */ 3 <修飾符> <類名>[參數(shù)列表]{ 4
語句;5 } 6 注釋:構(gòu)造器沒有返回值,void也不行;如果有返回值,方法會被當(dāng)做普通函7 數(shù)執(zhí)行; 構(gòu)造器函數(shù)特點(diǎn):
1、作用:完成對類對象的初始化
2、名稱必須和類名相同
3、不能有返回值,不能有 return 語句
4、一般申明為Public類型 構(gòu)造器的使用:
黑馬程序員合肥中心 編著
1、不能現(xiàn)實(shí)的調(diào)用
2、在創(chuàng)建一個(gè)類的對象時(shí),系統(tǒng)自動(dòng)調(diào)用構(gòu)造器為該對象初始化
3、構(gòu)造器只能和new關(guān)鍵字一起使用
格式:
類名 對象名 = new 構(gòu)造函數(shù)名稱(成員變量的初始值);
默認(rèn)構(gòu)造器:
1、每個(gè)類至少有一個(gè)構(gòu)造器
2、如果不編寫構(gòu)造函數(shù),系統(tǒng)自動(dòng)添加默認(rèn)的構(gòu)造函數(shù)【默認(rèn)構(gòu)造函數(shù)不帶參數(shù),默認(rèn)構(gòu)造函數(shù)函數(shù)體為空】
3、不必編寫構(gòu)造函數(shù)就能使用new XXX()
創(chuàng)建實(shí)例
對象創(chuàng)建格式:
<對象名> = new <類名>(實(shí)參)
對象的清除:
對象為null時(shí),Java自動(dòng)調(diào)用垃圾回收機(jī)制清除對象,釋放對象占用的內(nèi)存空間 手動(dòng)編寫finalize()方法撤銷對象--不提倡
對象的內(nèi)存模型:
棧內(nèi)存:方法中定義的變量(基本類型和引用類型)。超過變量的作用域,自動(dòng)釋放變量的內(nèi)存
堆內(nèi)存:new 創(chuàng)建的對象(包括數(shù)組),由系統(tǒng)自動(dòng)回收
類的繼承【僅支持單繼承】
[AppleScript] 純文本查看 復(fù)制代碼
? /**
2* @author 傳智播客
3*/ 4 <修飾符> class <名稱> extends <父類>{ 申明;6 }
黑馬程序員合肥中心 編著
子類可以繼承父類中非private的方法和屬性;子類可以添加新的屬性和方法;【程序代碼重,減少冗余】 方法的重載(overload):
1、一個(gè)類中有多個(gè)同名的方法
2、條件:參數(shù)的個(gè)數(shù)不同;參數(shù)的類型不同
3、如果兩個(gè)方法只有返回值不一樣,不是重載,會報(bào)錯(cuò)
方法的覆蓋(override):
1、子類可以修改父類繼承過來的行為
2、子類可以創(chuàng)建和父類的方法不同功能的方法,但是下面必須相同:【方法名、返回值、參數(shù)列表】
super關(guān)鍵字:
往往在覆蓋方法時(shí),真正不目的不是代替現(xiàn)有的行為,而是在某些方面擴(kuò)展那些行為; 類中使用super關(guān)鍵字指向父類的成員 包括數(shù)據(jù)和方法; 3中使用方法:
super.方法名([參數(shù)表]);----調(diào)用父類的方法 super.成員變量名;----訪問父類的成員變量 super([參數(shù)表]);----調(diào)用父類的構(gòu)造函數(shù)
構(gòu)造函數(shù)不能被繼承:
子類從父類繼承所有的方法和變量 子類不能繼承父類的構(gòu)造函數(shù)
有兩種方式可以獲取構(gòu)造函數(shù):
1、使用默認(rèn)的構(gòu)造函數(shù)
2、編寫1個(gè)或者多個(gè)構(gòu)造函數(shù)
調(diào)用父類的構(gòu)造函數(shù):
要調(diào)用父類的構(gòu)造函數(shù),必須在子類構(gòu)造函數(shù)的第一行使用super關(guān)鍵字
黑馬程序員合肥中心 編著
要調(diào)用特定的父類的構(gòu)造函數(shù),必須為super提供參數(shù)
如果沒有this或者super調(diào)用,編譯器會插入一個(gè)對父類無參數(shù)構(gòu)造函數(shù)的隱式調(diào)用: super();
變量的多態(tài):
類型為X的參考變量,指向的對象類型既可以是X,也可以是X的子類; 如: Employee x = new Manager();Employee y = new Employee();
實(shí)例方法能夠被覆蓋,靜態(tài)(static)方法不能被覆蓋 原因:
靜態(tài)方法在編譯時(shí)候,根據(jù)調(diào)用該方法的類或者對象所屬的類決定 實(shí)例方法在運(yùn)行時(shí)根據(jù)對象所屬的類決定
如:Super s = new Sub();編譯時(shí)候S是Super類的對象,運(yùn)行時(shí) S 指向Sub類的對象;
instanceof操作符:
可以根據(jù)對象所屬的類進(jìn)行不同的處理 抽象類:只能被繼承,不能被實(shí)例化的類 定義格式:
[AppleScript] 純文本查看 復(fù)制代碼
? /**
2* @author 傳智播客
3*/ 4 abstract class 類名{ abstract 返回值類型
方法名[參數(shù)列表];6
...7 } 說明:
抽象類中可以包含抽象方法和非抽象方法,也可以不包含抽象方法和非抽象方法;只要有一個(gè)抽象方法,就屬于抽象類;
[AppleScript] 純文本查看 復(fù)制代碼
黑馬程序員合肥中心 編著
?
01 /** 02
* @author 傳智播客 03
*/ 04 abstract class Animal{ 05
public abstract void eat();06
} 07
class Dog extends Animal{ 08
public void eat(){System.out.println(“狗吃骨頭”);} 09
} 10class Cat extends Animal{ 12
public void eat(){System.out.println(“貓吃老鼠”);} 13 } 115 class Wolf extends Animal{ 16
public void eat(){System.out.println(“狼吃羊”);} 17 } 說明:不能創(chuàng)建抽象類的對象,即不能被實(shí)例化;
使用時(shí),必須用起創(chuàng)建子類
子類可以定義自己的成員變量和方法,但是必須將父類的所有抽象方法代碼寫完;
如果子類只是實(shí)現(xiàn)了部分抽象的方法,那么,該類仍然是抽象類; 最終類:
final 類不能被子類化;如Java.lang.String 是final 類,這樣做是基于安全的考慮; 標(biāo)記為final的方法不能被覆蓋;處于安全的考慮,如果方法的實(shí)現(xiàn)不應(yīng)改變,而且對對象的一致性要求比較高,則可以創(chuàng)建一個(gè)final方法。
標(biāo)記為final的變量代表常量,只能一次賦值; 接口:
使用interface關(guān)鍵字申明,可以支持多重繼承 接口中只能包含: 抽象方法;
黑馬程序員合肥中心 編著
常量(默認(rèn)為 public static final)【用得較少】 說明:
1、接口本身只是提供定義,使用時(shí),必須通過類實(shí)現(xiàn)接口(implements)實(shí)現(xiàn)接口時(shí),必須實(shí)現(xiàn)所有的方法。否則該類還是抽象類(abstract class)。
2、一個(gè)雷尅實(shí)現(xiàn)多個(gè)接口。
3、擴(kuò)展子句(extends)必須在實(shí)現(xiàn)子句(implements)之前
包:
package <頂層包名>[.<子包名>]*;
如:package shipping.domain;說明:
1、如果有包申明,必須在源文件開始處申明。他的前面只能有空白和注釋,不能有其他語句;
2、每個(gè)源文件只能有一個(gè)包申明;
3、如果沒有包申明,則該類屬于“默認(rèn)”包(沒有名稱的包)
4、包的名稱有層次,且用.分開;
import語句: 基本語法:
import <包名>[.<子包名>].<類名> 或者import <包名>[.<子包名>].*;
其實(shí)在學(xué)習(xí)java過程中基礎(chǔ)還是比較容易,如果大家想學(xué)習(xí)java基礎(chǔ)的知識,歡迎大家可以去傳智播客官網(wǎng)http://004km.cn/去了解java基礎(chǔ)知識!
黑馬程序員合肥中心 編著
第三篇:【黑馬程序員】Java基礎(chǔ) : Java語句筆記
【黑馬程序員】Java基礎(chǔ) : Java語句筆記
摘要: Java基礎(chǔ)—java語句這些是黑馬程序員java基礎(chǔ)入門的一個(gè)很重要的內(nèi)容。今天主要給大家簡單講解一下Java基礎(chǔ)—java語句,以后會慢慢講解黑馬程序員的課程內(nèi)容!
關(guān)鍵語句介紹
一、while 語句 一般形式:
whi l e(條件表達(dá)式){ 語句體 ……… } 執(zhí)行過程:
條件表達(dá)式為真,執(zhí)行語句體。否則,退出!
二、do while 語句 一般形式: do { 語句體 …….} while(條件表達(dá)式);執(zhí)行過程:
先執(zhí)行一次語句體,判斷 條件表達(dá)式是否為真,為真再執(zhí)行do語句中的語句體。為假,退出。
需要注意:與whi l e語句區(qū)別
黑馬程序員合肥中心 編著
1.while(條件表達(dá)式)后面有分號;2.不管條件表達(dá)式是否為真,語句體均會執(zhí)行一次。
三、for 語句 一般形式:
for(子句 1;子句 2;子句 3){ 語句體 …… } 執(zhí)行過程:
四、break、cont inue 語句 break 退出所在循環(huán) : int stopHere = 5;for(int i=1;i<8;i++){ if(i == stopHere){ break;} System.out.println(“i = ” + i);
黑馬程序員合肥中心 編著
} //打印結(jié)果:5,6,7,8均沒有打印出來。
需要注意的一個(gè)問題: int stopHere = 5;for(int i = 1;i < 8;i + +){ if(i = = stopHere){ / /語句體 } break;System.out.println(“i = ” + i);} 這個(gè)時(shí)候編譯器會報(bào)錯(cuò):無效的 System.out 輸出語句。冷靜分析一下:
break 語句會結(jié)束循環(huán),所以不會再去執(zhí)行 System.out 輸出語句。編譯會認(rèn)為你在多此一舉,sorry 報(bào)個(gè)錯(cuò)!
continue 退出本次循環(huán),不會退出整個(gè)循環(huán): int skipHere = 5;for(int i = 1;i < 8;i + +){ if(i = = skipHere){ continue;}
黑馬程序員合肥中心 編著
System.out.println(“i = ” + i);} / /打印結(jié)果:除了5沒有打印出來。
i = 1 i = 2
五、switch 語句 一般形式: switch(常量){ case 表達(dá)式1:語句體1;break;case 表達(dá)式2:語句體2;break;.....default : 語句體n;break;}
執(zhí)行過程: 執(zhí)行過程:
case 根據(jù)自己的表達(dá)式看是否匹配常量,如果匹配就執(zhí)行語句體,否則執(zhí)行 default 語句。
case 執(zhí)行類似于并行操作,不是順序操作。所以各個(gè)表達(dá)式的值不可以相同。
黑馬程序員合肥中心 編著
哪個(gè) case 匹配常量就會執(zhí)行自己的語句體,不會再去尋找其他 case 語句。注意:
<1> case 穿透:省去break關(guān)鍵字
[AppleScript] 純文本查看 復(fù)制代碼 ?
01 /**
02 * @author 傳智播客 03 */
04 int i = 10;05 switch(i){ 06 case 10:
07 System.out.println(“ A”);08 //break;09 case 5: System.out.println(“ B”);11 //break;12 case 7: System.out.println(“ C”);14 //break;15 default : System.out.println(“ error”);17 break;18 }//打印結(jié)果:A B C error
<2> 在 Java 編程中 switch 括號中的常量的數(shù)據(jù)類型只可以為 int 類型或者是 byte、char、short(因?yàn)?byte、char、short 可以自動(dòng)提升為 int),常量類型不可以是 long、float 和 double 等數(shù)據(jù)類型。<3> 多個(gè) case 可以合并 , 相當(dāng)于 “ 或 ”,例如下面 i 等于 10、5、7 都可以執(zhí)行打印語句。
[AppleScript] 純文本查看 復(fù)制代碼 ?
01 /**
02 * @author 傳智播客 03 */
04 int i = 5;05 switch(i){ 06 case 10: 07 case 5: 08 case 7:
09 System.out.println(“ C”);10 break;11 default : System.out.println(“ error”);13 break;
黑馬程序員合肥中心 編著 }//打印結(jié)果:C <4> default 語句可以省,但是不推薦,他后面的 break 可省 <5> case 或者 default 子句中可以寫多條語句 case 7: System.out.println(“ C”);if(i == 5){ System.out.println(“ i = ” +i);} break;<6> case 或者 default 子句中還可以嵌套 switch 或者其他語句
六、return 語句
終止方法的運(yùn)行并指定要返回的數(shù)據(jù)。兩種形式:
<1> return 表達(dá)式;
<2> return ;沒有任何數(shù)據(jù)直接返回,結(jié)束函數(shù)(方法)的執(zhí)行。
七、if 語句
一般形式:
1.if(條件表達(dá)式){ 語句體} 2.if(條件表達(dá)式){ 語句體} else{語句體 } 3. if(條件表達(dá)式1){ 語句體} else if(條件表達(dá)式2){語句體 } else {語句體 }
特別注意:形式3,else與其最近的上個(gè)if 配對。例子:
[AppleScript] 純文本查看 復(fù)制代碼 ?
黑馬程序員合肥中心 編著
01 /**
02 * @author 傳智播客 03 */
04 public class TestIF {
05 public static void main(String[] args){ 06 int i = 30;07 if(i < 20){
08 System.out.println(“<20”);09 } else if(i < 50){ System.out.println(“<50”);11 } else if(i < 80){ System.out.println(“<80”);13 } else System.out.println(“>=80”);15 System.out.println(“黑馬程序員!”);16 }
如果大家想學(xué)習(xí)java基礎(chǔ)的知識,歡迎大家可以去傳智播客官網(wǎng)http://004km.cn/去了解java基礎(chǔ)知識!
黑馬程序員合肥中心 編著
第四篇:黑馬程序員自薦信
自薦信_XXX_151********
姓名:XXX
電話:151********
郵箱:********n2009@126.com
尊敬的老師:
你好,我叫XXX,今年24歲,就讀于XXXX,XXXX專業(yè),將于2012年畢業(yè)。性格稍內(nèi)向,善于交流,看待事情能夠理性認(rèn)識,善于思考,有團(tuán)隊(duì)合作精神。在學(xué)校的這三年多的時(shí)間里,由于專業(yè)需要,對計(jì)算機(jī)接觸較多。在開設(shè)的課程中學(xué)過C語言、C#、java等編程語言,對編程語言有一定的了解。在接觸java程序語言和J2ME手機(jī)游戲開發(fā)的學(xué)習(xí)中,對java產(chǎn)生了強(qiáng)烈的興趣,并對java學(xué)習(xí)有了一定的基礎(chǔ)。通過“黑馬程序員訓(xùn)練營”的官網(wǎng),我了解到了javaee+3G課程體系所包含的知識面廣,是經(jīng)過對java前景分析和現(xiàn)在就業(yè)所需技術(shù)要求而制定的,對我們這些即將參加就業(yè)、想?yún)⒓觠ava方面工作的人來說是最好的強(qiáng)心劑。課程安排科學(xué)合理,有助于學(xué)員深化對java的學(xué)習(xí),使學(xué)員掌握到真正前沿的技術(shù)。我深信,“黑馬程序員訓(xùn)練營”的講師是java培訓(xùn)和開發(fā)方面最棒的,這也是我鐘情于“黑馬程序訓(xùn)練營”的原因之一。由于家里生活拮據(jù),不想讓父母操心、給家里增加經(jīng)濟(jì)負(fù)擔(dān),是“黑馬程序員”給了我一個(gè)機(jī)會、給了我一份保證。
作為一名理科生,我有著很強(qiáng)的求知欲,勤奮,有上進(jìn)心,對于堅(jiān)信的事情能夠堅(jiān)持到底。在平時(shí)學(xué)習(xí)過程中,善于獨(dú)立思考,遇到問題會嘗試各種方法去解決(網(wǎng)絡(luò)、老師、同學(xué)都是我的獲得知識的途徑)。平時(shí)喜歡看一些和自己專業(yè)的書籍,樂于了解一些最前沿的科技和未來的發(fā)展趨勢。注重的基礎(chǔ)知識的同時(shí),喜歡探索新知識,在收獲知識的同時(shí)也收獲著樂趣。學(xué)習(xí)是一輩子的事情,也是一件樂事,就算將來學(xué)校的生活結(jié)束了,學(xué)習(xí)也永遠(yuǎn)不會落下。
我非常期待能成為“黑馬程序員訓(xùn)練營”的一員,如果這個(gè)愿望能實(shí)現(xiàn),我將以最大的熱情投入到“黑馬程序員訓(xùn)練營”的學(xué)習(xí)中去,用自己的努力去實(shí)現(xiàn)的自身價(jià)值,用自己的成績回報(bào)“黑馬程序員訓(xùn)練營”。我堅(jiān)定工作后的第一件事就是努力工作,用工資償還培訓(xùn)期間的費(fèi)用,絕不辜負(fù)“黑馬程序員訓(xùn)練營”對我的信任和老師的培養(yǎng)!請給我一份信任,我將以自己的自己的行動(dòng)去回報(bào)。
擇是我的期望,給我一次機(jī)會還你一份驚喜。
非常感激你能在百忙之中翻閱我的自薦信。祝你工作順利,事業(yè)蒸蒸日上!
此致
敬禮
自薦人:XXX
2012年02月17號
第五篇:黑馬程序員:PHP零基礎(chǔ)同學(xué)如何學(xué)習(xí)
零基礎(chǔ)大學(xué)生們該如何學(xué)習(xí)php?
我們都知道,php語言作為一種專業(yè)建站的語言,沒有華而不實(shí),而是經(jīng)受住了時(shí)間考驗(yàn),成為一種值得學(xué)習(xí)的語言。現(xiàn)在國內(nèi)眾多的php學(xué)校也說明,php語言在當(dāng)今有著廣泛的市場需求。那么零基礎(chǔ)的大學(xué)生們?nèi)绾螌W(xué)習(xí)php呢?
對于零基礎(chǔ)的大學(xué)生們來說,學(xué)習(xí)php肯定是非常需要毅力的。任何語言的學(xué)習(xí)都不可能一蹴而就,而是需要花大量時(shí)間,消耗大量精力才能學(xué)會的。也并不是報(bào)了某個(gè)班就一定能夠?qū)W會。這絕不是打消想立志從事php從業(yè)的同學(xué)的積極性。想想學(xué)會php,要接觸的東西實(shí)在是太多,不僅html標(biāo)記,div+css,js這些前臺知識需要懂得,而且php語言,samrty模版,ajax,jquery,mysql,linux等等也都需要學(xué)習(xí)和了解,就是應(yīng)用工具如框架,也不是一天兩天就能夠掌握的。
學(xué)php難嗎?難!但是任何一門技術(shù),如果輕易就能夠讓人學(xué)會,那也不會稱作為技術(shù),因?yàn)槟菢?,工作的可替代性太?qiáng)了。技術(shù),只有難學(xué)才會更有價(jià)值。學(xué)php有沒有技巧,當(dāng)然有,這也是我在這篇文章想說明的。
php學(xué)習(xí)第一要點(diǎn):心態(tài)。雖然目前php語言市場火爆,而且php語言相對于其他的語言來說也更容易學(xué)習(xí),但是千萬別把php想的太簡單,不要全信培訓(xùn)學(xué)校的宣傳,仿佛零基礎(chǔ)的人也能夠隨隨便便就將php學(xué)會。失敗的案例肯定不少。當(dāng)然我們也不要把php想的太難,既然你想從事這方面的工作,那么就要準(zhǔn)備全力以赴,破釜沉舟。4個(gè)月學(xué)會不會,那就堅(jiān)持到5個(gè)月,5個(gè)月還不會,那就堅(jiān)持到6個(gè)月??傆幸惶?,你會全面掌握php知識,拿到自己滿意的薪酬。
php學(xué)習(xí)的第二要點(diǎn):就是學(xué)習(xí)方法。在這里,建議大家還是報(bào)一個(gè)班。一個(gè)人學(xué)習(xí)php,太難,如果說有一群人一起來學(xué)習(xí),就能夠營造出一種學(xué)習(xí)php的氛圍,有老師教,學(xué)習(xí)php碰到的問題也可以得到解決。在這里,就會碰到一個(gè)問題,那就是一個(gè)班,有零基礎(chǔ)的,有從事過這方面工作的,php水平可謂是參差不齊,如果是一個(gè)零基礎(chǔ)的同學(xué)學(xué)習(xí)php,你如何跟上學(xué)校的講課進(jìn)度? 這里就是我要講的學(xué)習(xí)方法,在我們報(bào)班前,可以先去網(wǎng)上下載php學(xué)習(xí)的相關(guān)視頻,比如網(wǎng)上非常流行的韓順平的php系列視頻(聲明:韓老師沒給我啥好處費(fèi),我也不是托,隔著大老遠(yuǎn),我連他老兄的面都沒見過的說-_-),就講的非常好。韓老師的視頻講的很深入、生動(dòng),而且有筆記可供下載學(xué)習(xí)。如果我們把韓老師的視頻都看了一兩遍再去報(bào)班學(xué)習(xí)php,效果肯定和沒看視頻效果不一樣。
php學(xué)習(xí)的第三要點(diǎn):那就是堅(jiān)持堅(jiān)持再堅(jiān)持。抵御誘惑,ASP/PHP/JSP/.NET的對比也許會讓我們新手無所適從,也許學(xué)了一半PHP,我們又開始打C#的主意,或者有人說JAVA很強(qiáng),這個(gè)時(shí)候的我們絕對不能動(dòng)搖,哪怕我們真想學(xué),也得學(xué)會了PHP,然后再學(xué)。見異思遷是最不可取的,狗熊掰玉米就是這個(gè)道理,如果經(jīng)常中途放棄,只能是一無所獲,還浪費(fèi)了N多的時(shí)間和經(jīng)歷。當(dāng)我們花費(fèi)了大量精力后卻又放棄了php,相信我們的心里面會很難過,對未來又會陷入到迷茫中。如果不想有這種體驗(yàn),那就堅(jiān)持學(xué)會php吧。