隨著“互聯(lián)網(wǎng)+”上升到國家戰(zhàn)略,讓IT行業(yè)很是火爆,同時(shí)作為編程語言很火熱的java也非常受人歡迎。也因?yàn)閖ava開發(fā)人員的薪資待遇優(yōu)厚,吸引著大批的轉(zhuǎn)行人員。那么要想學(xué)習(xí)java如何從入門到精通呢?又需要什么條件呢?
成都創(chuàng)新互聯(lián)公司專注于寬甸網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供寬甸營銷型網(wǎng)站建設(shè),寬甸網(wǎng)站制作、寬甸網(wǎng)頁設(shè)計(jì)、寬甸網(wǎng)站官網(wǎng)定制、小程序設(shè)計(jì)服務(wù),打造寬甸網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供寬甸網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
嗯,這是個(gè)容易但又絕對不能忽略的問題,如果你對JAVA感興趣,而且又有吃苦的準(zhǔn)備,那你才可能學(xué)好JAVA!如果具備這兩個(gè)條件,請繼續(xù)往下看??
如果你沒有JAVA基礎(chǔ),務(wù)必找一個(gè)好點(diǎn)的培訓(xùn)機(jī)構(gòu),這不是坑人的,是良心話,為啥呢?
第一:一般JAVA自學(xué)者,沒有科學(xué)的學(xué)習(xí)路徑,網(wǎng)上這找找那翻翻,豆瓣知乎說這個(gè)知識是必須的,百度說那個(gè)知識是以后的發(fā)展方向??,你得學(xué)學(xué)這個(gè),看看那個(gè),蜻蜓點(diǎn)水,結(jié)果一事無成。
第二:JAVA學(xué)習(xí)過程中會碰到很多疑難問題,不懂問題不知道去請教誰,沒有人能解決你的問題。
第三:沒有合理的學(xué)習(xí)規(guī)劃,沒有清晰明確的學(xué)習(xí)計(jì)劃,今天學(xué)一點(diǎn),明天看一點(diǎn),后天就搞別的事情了,學(xué)習(xí)戰(zhàn)線拉的長,而且還沒結(jié)果。
第四:自學(xué)基本不敲代碼,只是學(xué)知識,即使想敲代碼,也不知道敲什么、怎么敲。
各種搞不定怎么辦?
其實(shí),學(xué)習(xí)JAVA不需要特別高的智商,別去相信什么程序員是野生的,沒有野生的,他們也是專業(yè)學(xué)習(xí)過的,也是家養(yǎng)的,是人類就沒野生的,除非他們是非人類。沒有野生,都是家養(yǎng)。小編推薦您去專業(yè)的培訓(xùn)機(jī)構(gòu)去學(xué)習(xí)!
第一:專業(yè)的培訓(xùn)機(jī)構(gòu)的學(xué)習(xí)路徑是規(guī)劃好了的,并且經(jīng)過反復(fù)實(shí)踐優(yōu)化的,有合理的學(xué)習(xí)路徑,先學(xué)什么后學(xué)什么,都有系統(tǒng)的學(xué)習(xí)規(guī)劃。
第二:現(xiàn)在為了競爭,專業(yè)培訓(xùn)機(jī)構(gòu)的師資很強(qiáng)大,基本上都是大咖,學(xué)習(xí)過程中會遇到各種自己搞不定的問題,都有高人幫你解決,傳道、授業(yè)、解惑。
第三:良好的學(xué)習(xí)氛圍,就是有一批人和你一起干,才有干勁,培訓(xùn)班里有一批志同道合的同學(xué),相互鼓勵(lì)前進(jìn)。
第四:敲代碼,敲什么,怎么敲,敲不下去找誰解決問題,這些老師都可以幫你解決。昆明IT培訓(xùn)認(rèn)為一定要敲代碼,一定要敲代碼,一定要敲代碼,重要的事情說三遍。
先由設(shè)計(jì)師設(shè)計(jì)網(wǎng)頁,在設(shè)計(jì)圖上標(biāo)注相關(guān)信息(比如說顏色,有些顏色肉眼分辨不太清楚。)
再接下來是前臺制作,由網(wǎng)頁制作人員完成,這里要注意以下幾點(diǎn):
1、拿到設(shè)計(jì)稿后不要直接切割,然后到DW里直接敲代碼,首先要認(rèn)真研究,把握大致的框架圖,做到心里有一個(gè)整體的構(gòu)思,其中還可以揣摩一些設(shè)計(jì)的風(fēng)格,有興趣的朋友完全可以讓自己走上設(shè)計(jì)的道路。(設(shè)計(jì)人員比制作人員工資高多了呀!無奈?。?/p>
2、用PS或者FW等繪圖軟件做一些實(shí)體的框架圖,這個(gè)框架的目的是讓你在制作的過程中能夠快速而準(zhǔn)確的進(jìn)行制作和在以后的修改工作中能夠高效,所以框架圖要具體的標(biāo)示出塊狀的id號或者類名,父與子的層次關(guān)系等。
3、接下來就是進(jìn)行重要的一項(xiàng)----制作,也就是敲那該死的代碼,在制作過程時(shí),就要體現(xiàn)你對技術(shù)的熟練程度和技巧運(yùn)用了,比如css的架構(gòu)搭建,類名的選擇和用CSS的簡寫達(dá)到高效的目的等技巧。
4、制作完成后,就是自己的檢驗(yàn)了,爭取做到制作出的網(wǎng)頁同設(shè)計(jì)師給出的設(shè)計(jì)稿如出一轍。最后讓自己的工作得到他們的肯定,當(dāng)然改是難免的,不要急躁。(有些設(shè)計(jì)師太麻煩,總覺得你做出來的東西和他們的設(shè)計(jì)稿不符合!這時(shí)候你可以無視他們,直接找設(shè)計(jì)組的組長評理!還有一點(diǎn)就是向?yàn)榫W(wǎng)頁制作人員應(yīng)該和設(shè)計(jì)師搞好關(guān)系,不然工作中會遇到很多麻煩!汗一記?。?/p>
制作完成后就是程序員的工作了,制作后臺程序,以方便管理網(wǎng)站!如果你在設(shè)計(jì)的時(shí)候用的id,name等都是亂起名字的,這時(shí)候可能需要你和程序員進(jìn)行溝通,告訴他們這個(gè)id是什么,這個(gè)name是什么,麻煩!所以良好的命名習(xí)慣是必不可少的!
后臺的頁面設(shè)計(jì)沒有什么講究,越簡單越好,當(dāng)然簡單不等于簡陋。
這就是一個(gè)網(wǎng)站制作的流程?。ó?dāng)然,在設(shè)計(jì)之前要聽取客戶的意見,整個(gè)網(wǎng)站在表現(xiàn)什么風(fēng)格,比如說:體現(xiàn)嚴(yán)謹(jǐn),高科技,時(shí)尚等元素,這樣設(shè)計(jì)師可以通過顏色表現(xiàn)這種風(fēng)格!在設(shè)計(jì)稿定稿前要給客戶過目,客戶認(rèn)可了才能進(jìn)行制作?。?/p>
附:
CSS的命名規(guī)則
頭:header
內(nèi)容:content/containe
尾:footer
導(dǎo)航:nav
側(cè)欄:sidebar
欄目:column
頁面外圍控制整體布局寬度:wrapper
左右中:left right center
登錄條:loginbar
標(biāo)志:logo
廣告:banner
頁面主體:main
熱點(diǎn):hot
新聞:news
下載:download
子導(dǎo)航:subnav
菜單:menu
子菜單:submenu
搜索:search
友情鏈接:friendlink
頁腳:footer
版權(quán):copyright
滾動(dòng):scroll
內(nèi)容:content
標(biāo)簽頁:tab
文章列表:list
提示信息:msg
小技巧:tips
欄目標(biāo)題:title
加入:joinus
指南:guild
服務(wù):service
注冊:regsiter
狀態(tài):status
投票:vote
合作伙伴:partner
XHTML文件中id的命名
(1)頁面結(jié)構(gòu)
容器: container
頁頭:header
內(nèi)容:content/container
頁面主體:main
頁尾:footer
導(dǎo)航:nav
側(cè)欄:sidebar
欄目:column
頁面外圍控制整體布局寬度:wrapper
左右中:left right center
(2)導(dǎo)航
導(dǎo)航:nav
主導(dǎo)航:mainbav
子導(dǎo)航:subnav
頂導(dǎo)航:topnav
邊導(dǎo)航:sidebar
左導(dǎo)航:leftsidebar
右導(dǎo)航:rightsidebar
菜單:menu
子菜單:submenu
標(biāo)題: title
摘要: summary
(3)功能
標(biāo)志:logo
廣告:banner
登陸:login
登錄條:loginbar
注冊:regsiter
搜索:search
功能區(qū):shop
標(biāo)題:title
加入:joinus
狀態(tài):status
按鈕:btn
滾動(dòng):scroll
標(biāo)簽頁:tab
文章列表:list
提示信息:msg
當(dāng)前的: current
小技巧:tips
圖標(biāo): icon
注釋:note
指南:guild
服務(wù):service
熱點(diǎn):hot
新聞:news
下載:download
投票:vote
合作伙伴:partner
友情鏈接:link
版權(quán):copyright
個(gè)人整理,希望對你有點(diǎn)用!
Java代碼的編譯與反編譯
2017-02-21Hollis數(shù)盟
一、什么是編譯
1、利用編譯程序從源語言編寫的源程序產(chǎn)生目標(biāo)程序的過程。
2、用編譯程序產(chǎn)生目標(biāo)程序的動(dòng)作。編譯就是把高級語言變成計(jì)算機(jī)可以識別的2進(jìn)制語言,計(jì)算機(jī)只認(rèn)識1和0,編譯程序把人們熟悉的語言換成2進(jìn)制的。編譯程序把一個(gè)源程序翻譯成目標(biāo)程序的工作過程分為五個(gè)階段:詞法分析;語法分析;語義檢查和中間代碼生成;代碼優(yōu)化;目標(biāo)代碼生成。主要是進(jìn)行詞法分析和語法分析,又稱為源程序分析,分析過程中發(fā)現(xiàn)有語法錯(cuò)誤,給出提示信息。
二、什么是反編譯
計(jì)算機(jī)軟件反向工程(Reverseengineering)也稱為計(jì)算機(jī)軟件還原工程,是指通過對他人軟件的目標(biāo)程序(可執(zhí)行程序)進(jìn)行“逆向分析、研究”工作,以推導(dǎo)出他人的軟件產(chǎn)品所使用的思路、原理、結(jié)構(gòu)、算法、處理過程、運(yùn)行方法等設(shè)計(jì)要素,某些特定情況下可能推導(dǎo)出源代碼。反編譯作為自己開發(fā)軟件時(shí)的參考,或者直接用于自己的軟件產(chǎn)品中。
三、Java類的編譯與反編譯
我們在最初學(xué)習(xí)Java的時(shí)候,會接觸到兩個(gè)命令:javac和java,那個(gè)時(shí)候我們就知道,javac是用來編譯Java類的,就是將我們寫好的helloworld.java文件編譯成helloworld.class文件。
class文件打破了C或者C++等語言所遵循的傳統(tǒng),使用這些傳統(tǒng)語言寫的程序通常首先被編譯,然后被連接成單獨(dú)的、專門支持特定硬件平臺和操作系統(tǒng)的二進(jìn)制文件。通常情況下,一個(gè)平臺上的二進(jìn)制可執(zhí)行文件不能在其他平臺上工作。而Javaclass文件是可以運(yùn)行在任何支持Java虛擬機(jī)的硬件平臺和操作系統(tǒng)上的二進(jìn)制文件。
那么反編譯呢,就是通過helloworld.class文件得到j(luò)ava文件(或者說是程序員能看懂的Java文件)
四、什么時(shí)候會用到反編譯
1、我們只有一個(gè)類的class文件,但是我們又看不懂Java的class文件,那么我們可以把它反編譯成我們可以看得懂的文件。
2、學(xué)習(xí)Java過程中,JDK的每個(gè)版本都會加入越來越多的語法糖,有些時(shí)候我們想知道Java一些實(shí)現(xiàn)細(xì)節(jié),我們可以借助反編譯。
五、反編譯工具
1、javap
2、Jad:官網(wǎng)(墻裂推薦)
客戶端:
可以在官網(wǎng)下載可執(zhí)行文件,找到對應(yīng)的操作系統(tǒng)的對應(yīng)版本,然后進(jìn)行安裝使用。
因?yàn)槲沂褂玫氖莑inux操作系統(tǒng),所以我下載的是Linux版本的工具,這個(gè)工具下載好之后會有一個(gè)執(zhí)行文件,只要在執(zhí)行文件所在目錄執(zhí)行./jadhelloworld.class就會在當(dāng)前目錄下生成helloworld.jad文件,該文件里就是我們很熟悉的Java代碼
Eclipse插件:
下載地址在官網(wǎng)下載插件的jar包,然后將jar包放到eclipse的plugins目錄下‘在打開Eclipse,Eclipse-Window-Preferences-Java,此時(shí)你會發(fā)現(xiàn)會比原來多了一個(gè)JadClipse的選項(xiàng),單擊,在Pathtodecompiler中輸入你剛才放置jad.exe的位置,也可以制定臨時(shí)文件的目錄。當(dāng)然在JadClipse下還有一些子選項(xiàng),如Debug,Directives等,按照默認(rèn)配置即可?;九渲猛戤吅?,我們可以查看一下class文件的默認(rèn)打開方式,Eclipse-Window-Preferences-General-Editors-FileAssociations我們可以看到class文件的打開方式有兩個(gè),JadClipse和Eclipse自帶的ClassFileViewer,而JadClipse是默認(rèn)的。全部配置完成,下面我們可以查看源碼了,選擇需要查看的類,按F3即可查看源碼
具體如下:
連連看的小源碼
package Lianliankan;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class lianliankan implements ActionListener
{
JFrame mainFrame; //主面板
Container thisContainer;
JPanel centerPanel,southPanel,northPanel; //子面板
JButton diamondsButton[][] = new JButton[6][5];//游戲按鈕數(shù)組
JButton exitButton,resetButton,newlyButton; //退出,重列,重新開始按鈕
JLabel fractionLable=new JLabel("0"); //分?jǐn)?shù)標(biāo)簽
JButton firstButton,secondButton; //
分別記錄兩次62616964757a686964616fe59b9ee7ad9431333335326239被選中的按鈕
int grid[][] = new int[8][7];//儲存游戲按鈕位置
static boolean pressInformation=false; //判斷是否有按鈕被選中
int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戲按鈕的位置坐標(biāo)
int i,j,k,n;//消除方法控制
代碼(code)是程序員用開發(fā)工具所支持的語言寫出來的源文件,是一組由字符、符號或信號碼元以離散形式表示信息的明確的規(guī)則體系。
對于字符和Unicode數(shù)據(jù)的位模式的定義,此模式代表特定字母、數(shù)字或符號(例如 0x20 代表一個(gè)空格,而 0x74 代表字符“t”)。一些數(shù)據(jù)類型每個(gè)字符使用一個(gè)字節(jié);每個(gè)字節(jié)可以具有 256 個(gè)不同的位模式中的一個(gè)模式。
在計(jì)算機(jī)中,字符由不同的位模式(ON 或 OFF)表示。每個(gè)字節(jié)有 8 位,這 8 位可以有 256 種不同的 ON 和 OFF 組合模式。對于使用 1 個(gè)字節(jié)存儲每個(gè)字符的程序,通過給每個(gè)位模式指派字符可表示最多 256 個(gè)不同的字符。2 個(gè)字節(jié)有 16 位,這 16 位可以有 65,536 種唯一的 ON 和 OFF 組合模式。使用 2 個(gè)字節(jié)表示每個(gè)字符的程序可表示最多 65,536 個(gè)字符。
單字節(jié)代碼頁是字符定義,這些字符映射到每個(gè)字節(jié)可能有的 256 種位模式中的每一種。代碼頁定義大小寫字符、數(shù)字、符號以及 !、@、#、% 等特殊字符的位模式。每種歐洲語言(如德語和西班牙語)都有各自的單字節(jié)代碼頁。
雖然用于表示 A 到 Z 拉丁字母表字符的位模式在所有的代碼頁中都相同,但用于表示重音字符(如"é"和"á")的位模式在不同的代碼頁中卻不同。如果在運(yùn)行不同代碼頁的計(jì)算機(jī)間交換數(shù)據(jù),必須將所有字符數(shù)據(jù)由發(fā)送計(jì)算機(jī)的代碼頁轉(zhuǎn)換為接收計(jì)算機(jī)的代碼頁。如果源數(shù)據(jù)中的擴(kuò)展字符在接收計(jì)算機(jī)的代碼頁中未定義,那么數(shù)據(jù)將丟失。
如果某個(gè)數(shù)據(jù)庫為來自許多不同國家的客戶端提供服務(wù),則很難為該數(shù)據(jù)庫選擇這樣一種代碼頁,使其包括所有客戶端計(jì)算機(jī)所需的全部擴(kuò)展字符。而且,在代碼頁間不停地轉(zhuǎn)換需要花費(fèi)大量的處理時(shí)間。
eclipse里一堆待機(jī)的。前言:喜歡編程語言的朋友,想必一定接觸過eclipse這款軟件。eclipse的用途很大,可以針對c/c++,php,java等等語言進(jìn)行編譯。當(dāng)下Java語言非常火爆。使用eclipse的人也越越多。然而在eclipse使用中難免會遇到各種各樣的問題,比如在做JavaWeb工程開發(fā)時(shí),當(dāng)前臺jsp頁面改動(dòng)時(shí),需要重新刷新編譯后才能使用到最新編譯的代碼。后臺Java代碼改動(dòng)時(shí),需要清理緩存(重新編譯Java代碼)才能使用到改動(dòng)后的代碼。今天就給大家詳細(xì)的講解下,關(guān)于eclipse各種緩存的清理方法。
eclipse的刷新分為三種情況?,F(xiàn)在給大家詳細(xì)介紹這三種方法。
1.針對前端頁面改動(dòng)的刷新
當(dāng)前臺jsp頁面改動(dòng)時(shí),需要重新刷新編譯后才能使用到最新編譯的代碼
按照上面步驟即可徹底刷新。
2.后天Java代碼改動(dòng)的刷新
后臺Java代碼改動(dòng)時(shí),需要清理緩存(重新編譯Java代碼)才能使用到改動(dòng)后的代碼
01 打開eclipse之后,在菜單欄下,找到“Project”,選擇“Project”;
02
選擇“Project”之后,接下來,找到“Clean”,點(diǎn)擊“Clean”;
03 找到我們需要清除緩存的項(xiàng)目,勾選項(xiàng)目前面的小框;不過這樣做,只是針對少量項(xiàng)目的刷新
我們此時(shí)如果勾住了Clean all projects就會對所有項(xiàng)目進(jìn)行刷新。
上面的兩種方法都只是手動(dòng)刷新,就是后臺代碼沒改動(dòng)一次,就要進(jìn)行刷新一次。如果僅僅是少量的測試代碼還能接受了,如果是在做一個(gè)大型項(xiàng)目時(shí),隨便改動(dòng)下后臺Java代碼。就需要手動(dòng)清理一次緩存,還不得累死。
于是就出現(xiàn)了另外一種刷新方式:自動(dòng)刷新
按照上面的步驟勾住后,以后每次在改動(dòng)后臺代碼時(shí),eclipse就會進(jìn)行自動(dòng)刷新(清理緩存)。Java代碼就會得到重新編譯
這樣做是不是比手動(dòng)者清理方便多了。你看辦法還是有的吧!
下面是我借鑒大牛的解釋,這里也分享給大家。
eclipse修改代碼后需要clean。
eclipse中clean的作用是將工程中的.class文件刪除,同時(shí)重新編譯工程Java文件。如果沒有clean,修改代碼后會出現(xiàn)部署不上文件的問題。
如果沒有clean,可以點(diǎn)擊Project–Build Automatically,然后這個(gè)選項(xiàng)簽名就自動(dòng)勾選上了,然后你再次運(yùn)行項(xiàng)目,以后每次修改Java代碼,都會部署成功了。
好了前兩種清理緩存的方法都介紹好了,這里給大家介紹最后一種清理緩存的方法。
3 清理Tomcat緩存
01 找到server。這里在扯個(gè)題外話,如果server消失了怎么找到。點(diǎn)擊window–show view 就會找到server。
02 在Console中,點(diǎn)擊紅色四方點(diǎn)先關(guān)閉tomcat服務(wù)器(如果不關(guān)閉Tomcat直接清理緩存,就會遇到很多錯(cuò)誤,這里還是建議先關(guān)閉Tomcat服務(wù)器)
03 找到Apach Tomcat v8.5.32,點(diǎn)擊鼠標(biāo)右鍵,找到clean。點(diǎn)擊clean即可完成刷新。
好了,三種刷新方法已介紹完畢,喜歡大家能喜歡。
最后分享一句話:人類因懶惰而進(jìn)步。合理的懶惰,不要然你的激情浪費(fèi)在無用功上