1、學(xué)好基本語法,弄清Java的特點(diǎn)
十載的隆林網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整隆林建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“隆林網(wǎng)站設(shè)計(jì)”,“隆林網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
學(xué)習(xí)Java,說白了,就是學(xué)習(xí)它的語法、功能、結(jié)構(gòu)等。然后按照它的語法編寫代碼。Java語法是學(xué)習(xí)的根本。開始學(xué)習(xí)時(shí),可能有些難懂。沒關(guān)系,這很正常。多看多問,多實(shí)踐,慢慢的你就入門了。
2、學(xué)習(xí)編程規(guī)范,編程中堅(jiān)持遵守
俗話說,無規(guī)矩不成方圓。編程是一個(gè)將思維邏輯變?yōu)榇a,讓計(jì)算機(jī)來執(zhí)行的過程。特別需要規(guī)范。無論是變量、函數(shù)命名還是代碼格式,都需要一致規(guī)范。這樣便于代碼的閱讀和修改。代碼的規(guī)范性,在代碼質(zhì)量中占據(jù)著重要的比重。
3、代碼盡量寫的簡單,易于理解
代碼的簡單性、正確性是最重要的。不要為了追求高效率而寫出晦澀難懂的代碼。后續(xù)閱讀和修改代碼時(shí),你會(huì)為晦澀的代碼付出很多代價(jià)。記住,盡量將代碼寫成初學(xué) Java就能讀懂的,那么你的代碼就十分的優(yōu)美了。
4、多看別人的代碼
對(duì)同一種功能的實(shí)現(xiàn),可以有很多種編碼方式。多讀別人的代碼,非常有利用開拓思路,提高編碼的靈活性。甚至經(jīng)??梢詮膭e人的代碼中得到啟發(fā),產(chǎn)生靈感,創(chuàng)作出優(yōu)秀的代碼。
5、選擇一套體系完善的課程
在完善的課程體系中學(xué)習(xí)非常重要,這有助于你掌握系統(tǒng)的Java編程知識(shí)和技能,而且好的課程會(huì)幫助你前期打好基礎(chǔ),后期有針對(duì)性地使你快速提升,這對(duì)Java新手來說十分有效。
6、沒有捷徑,一定要多動(dòng)手實(shí)踐
學(xué)習(xí)Java,和學(xué)數(shù)學(xué)一樣,在學(xué)懂理論后,一定要實(shí)踐。學(xué)習(xí)Java不能搭便車。有時(shí)候,語法和例子很簡單,很容易看懂,但到自己動(dòng)手寫的時(shí)候,又是另一種感覺。只有多動(dòng)手編程,哪怕是簡單的小程序,重復(fù)實(shí)現(xiàn)書上簡單的例子,也是在積累和提高。動(dòng)手編碼離不開編程工具的支持。
怎么看代碼都不完整,五個(gè)大括號(hào)就只有一個(gè)閉合了。其實(shí)也是定義的方法,和普通一般方法不一樣的地方是,很多參數(shù)用final修飾了,就代表賦值一次之后不可變而已,另外,你這里面還用到了不少封裝的方法,你得結(jié)合具體功能去理解,不然只看表面,是搞不清楚業(yè)務(wù)邏輯的
這個(gè)interface叫接口。這個(gè)跟類長的很像的東西其實(shí)跟虛基類差不多。里面的成員也都是只聲明不實(shí)現(xiàn)。為什么要這樣?
我靠這個(gè)問題要說清楚估計(jì)得花幾頁紙才夠勁,長話短說吧。
接口其實(shí)是用來解決C++里面的多重繼承產(chǎn)生的奇義性和二義性。java和C#都是不允許多重繼承的,也就是說一個(gè)類的基類只能有一個(gè),但是可以繼承多個(gè)接口,這樣就相當(dāng)于間接實(shí)現(xiàn)了多重繼承。
接口的成員在每個(gè)繼承它的類中都是需要去實(shí)現(xiàn)的,因?yàn)榻涌诒旧碇宦暶?,不?shí)現(xiàn)。
所以你的上面的代碼就是定義了一個(gè)接口LoginService,然后聲明了一個(gè)方法login,有三個(gè)參數(shù),返回值是String類型,大概明白了嗎?
用的IDE是Eclipse么?建議用加斷點(diǎn)自己跟蹤調(diào)試,看看循環(huán)里的每一步都干了些什么,如下圖:
你的第一段代碼:
public?static?void?main(String?args[])?{
int?layer?=?4;
for?(int?i?=?1;?i?=?layer;?i++)?{
for?(int?k?=?1;?k?=?layer?-?i;?k++)?{
System.out.print("?");
}
for?(int?j?=?1;?j?=?(i?-?1)?*?2?+?1;?j++)?{
System.out.print("*");
}
System.out.println();
}
int?layer1?=?3;
for?(int?i?=?1;?i?=?layer1;?i++)?{
for?(int?k?=?1;?k?=?(layer1?-?i)?+?1;?k++)?{
System.out.print("?");
}
//這里j++,j會(huì)越來越大,死循環(huán)了
for?(int?j?=?5;?j?=?(i?+?1)?*?2?+?1;?j++)?{
System.out.print("*");
}
System.out.println();
}
}
}
第二段代碼:
public?class?Hello{
public?static?void?main(String?args[])?{
int?i1,?j1;
for?(i1?=?1;?i1?=?7;?i1++)?{
for?(j1?=?1;?j1?=?7;?j1++)?{
//循環(huán)體空,不知道你想干什么
}
if?(j1?+?i1?==?5?||?j1?-?i1?==?3?||?i1?-?j1?==?3?||?i1?+?j1?==?11)?{
System.out.print("*");
}?
else?{
System.out.print("");
}
}
System.out.println();
}
}
第三段代碼:
import?java.util.Scanner;
public?class?Hello{
private?int?maxNum;
public?Hello(int?maxNum)?{
this.maxNum?=?maxNum;
}
public?void?print()?{
//第一層for循環(huán),打印maxNum行
for?(int?i?=?1;?i?=?maxNum;?i++)?{
//第二層for循環(huán),每次執(zhí)行i次
for?(int?j?=?1;?j?=?i;?j++)?{
System.out.print(j);
System.out.print("*");
System.out.print(i);
System.out.print("=");
System.out.print(i?*?j);
System.out.print("\t");
}
System.out.println();
}
}
public?static?void?main(String[]?args)?{
System.out.print("錄入一個(gè)整數(shù):");
Scanner?input?=?new?Scanner(System.in);
//?沒有考慮判斷輸入的是否是整數(shù)。
int?maxNum?=?input.nextInt();
new?Hello(maxNum).print();
}
}
在網(wǎng)上搜搜Eclipse怎么斷點(diǎn)調(diào)試,你就可以看到每次循環(huán)都干了什么,一一給你解釋太麻煩了。
public static void main(String[] args) {
// TODO 自動(dòng)生成方法存根
File[] files;
Filter_java fj=new Filter_java(); //這是后面的一個(gè)類的對(duì)象
boolean hasFiles_java=false; //標(biāo)識(shí)變量
System.out.print("請(qǐng)輸入目錄名:");
Scanner scan=new Scanner(System.in); //接受一個(gè)輸入
String str=scan.next(); //讀取輸入的字符串
File Dir=new File(str); //字符串認(rèn)為是一個(gè)路徑
if(Dir.exists()) //如果這個(gè)文件夾存在
{
files=Dir.listFiles(); //列出文件夾下所有文件的對(duì)象
for(int i=0;ifiles.length;i++) //迭代這些文件
if(fj.accept(files[i])) //通過下面自定義的文件類型過濾器判斷這個(gè)文件是不是符合要求的文件
{
hasFiles_java=true; //標(biāo)識(shí)變量設(shè)為true
getAndSave(files[i]); //這個(gè)..保存
}
if(hasFiles_java) //如果為true
System.out.println("已將所有.java文件成功寫入指定目錄!");
else
System.out.println("該目錄下無.java文件");
}
else
System.out.println("目錄不存在,請(qǐng)重新輸入!");
}
public static void getAndSave(File file_java)
{
try {
File dir=new File("E:\\test"); //要存在這個(gè)路徑下
if(!dir.exists())
dir.mkdir(); //如果文件夾不存在則創(chuàng)建
byte[] FileData=new byte[2000]; //緩沖字節(jié)數(shù)組 2000大小
FileInputStream fis=new FileInputStream(file_java); //文件輸入流
FileOutputStream fos=new FileOutputStream("E:\\test\\"+file_java.getName()); //文件輸出流,要?jiǎng)?chuàng)建新文件
while(fis.read(FileData, 0, FileData.length)!=-1) //從原來的文件讀取字節(jié)
fos.write(FileData, 0, FileData.length); //循環(huán)寫入字節(jié)
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class Filter_java implements FileFilter //自定義文件過濾器
{
public boolean accept(File pathname) {
// TODO Auto-generated method stub
if(pathname.getName().endsWith(".java")) //如果文件是java類型的,返回true
return true;
else
return false;
}
代碼是從上到下運(yùn)行的
一、前面的x已經(jīng)被賦值為整型了,數(shù)據(jù)類型只要賦值一次就行了,所以后面的x都不用賦值了;
二、while(x!=password){
System.out.println("pleas input the password");
x=sc.nextInt();
}
判斷條件是 x != password,只要輸入的數(shù)據(jù)不等于password,也就是20030708,就會(huì)一直進(jìn)入while循環(huán),直到password正確才不進(jìn)入,然后輸出correct,結(jié)束程序;
三、代碼是從上至下運(yùn)行的,Scanner sc=new Scanner(System.in)一定是要在int x=sc.nextInt()前面的,因?yàn)橐刃陆ㄒ粋€(gè)Scanner類,后面才能引用;
System.out.println("pleas input the password")意思輸出到控制臺(tái),所以順序放哪都行,只是它輸出pleas input the password,提醒你下一步要輸入密碼,放在int x=sc.nextInt()前面起到提醒你輸入的作用;
x = sc.nexInt(),接收鍵盤輸入賦值給x,然后回到while循環(huán)的判斷條件x != password ,如果輸入的不等于20030708,就再重新接收鍵盤輸入,然后重新賦值給x,一直循環(huán),直到x等于20030708才不循環(huán)了;
Scanner是Java中接收鍵盤輸入的一個(gè)類;
sc.nextInt, sc 是你新建Scanner類的實(shí)例;nextInt是Scanner中的一個(gè)方法,意思接收下個(gè)輸入的Int類型數(shù)據(jù);sc.nextInt意思是sc這個(gè)實(shí)例調(diào)用nextInt這個(gè)方法
新聞名稱:看不懂的java代碼,java是代碼嗎
鏈接URL:http://www.ekvhdxd.cn/article12/dsesogc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、微信小程序、網(wǎng)站維護(hù)、企業(yè)建站、網(wǎng)站營銷、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)