黑马程序员_java开发前缀
基礎(chǔ)常識(shí)
?
軟件開發(fā)
---------------------- android培訓(xùn)、 java培訓(xùn)、期待與您交流! ----------------------?
軟件:按照特定的順序組織的計(jì)算機(jī)數(shù)據(jù)和指令。
注:要成為真正的軟件,一定要開發(fā)完成之后能夠供給人們使用才能算是軟件,不是寫點(diǎn)程序就算軟件。軟件開發(fā)是有個(gè)過程的,如果軟件開發(fā)完成了但還不能用就不算。
?
軟件的種類
●系統(tǒng)軟件:
????????? Linux? ,windows 等
?
●應(yīng)用軟件:
????????? QQ ,迅雷等
?
人機(jī)交互
●圖形界面的交互方式
●DOS窗口下的交互方式
?
DOS命令
打開DOS窗口的三種方法
●開始---附件---命令提示符
●開始----運(yùn)行---輸入cmd----回車
●Win+R---輸入cmd---回車
常用的命令提示符
?
Java的概述
Java是一種面向?qū)ο蟮木幊陶Z言,現(xiàn)在更多的就是面向internet的編程語言。它有特定的規(guī)范和要求,在用Java編寫時(shí)必須按照它本身的規(guī)范來寫,它和人的語言一樣,人的語言是用來表達(dá)人們要說什么,是什么意思,它是告訴計(jì)算機(jī)要做的是什么。
Java的誕生
Java誕生于1995年,由SUN(Stanford Universty Network)斯坦福大學(xué)網(wǎng)絡(luò)公司推出的一門高級(jí)語言。它是由c,c++發(fā)展過來的,是一種純面向?qū)ο蟮拈_發(fā)語言,摒棄了C,C++一些缺點(diǎn),彌補(bǔ)了很多以前低級(jí)語言的不足。增加了許多優(yōu)點(diǎn)。
Java的特點(diǎn)
Java具有跨平臺(tái)(一次編譯,到處運(yùn)行),簡(jiǎn)單易學(xué),高效,健壯,安全,可移植等特點(diǎn)。
跨平臺(tái):
指的是只要是用Java語言編寫的程序,在任意操作系統(tǒng)下安裝了JVM就可以了,也就是不管在LINUX, WINDOWS等系統(tǒng)下都可以。這里就和C,C++比較下,C,c++就要依賴于某個(gè)平臺(tái),如果在WINDOWS平臺(tái)下用C編寫好的程序用在UNIX下執(zhí)行局不能通過,而Java語言則可以達(dá)到這個(gè)目的。
?
Java的三大開發(fā)平臺(tái)
javaEE(Java Platform Enterprice Edition)企業(yè)級(jí)
javaSE(Java Platform Standard Edition)標(biāo)準(zhǔn)級(jí)
javaMe(Java Platform Macro Edition)小型級(jí)
?
JVM? JRE? JDK的作用
JVM:
JVM((java virtual Machine)JAVA虛擬機(jī)(假象計(jì)算機(jī)),也稱為模擬機(jī),它不是跨平臺(tái)的,它是模擬執(zhí)行java文件的機(jī)器,所以在任意一臺(tái)計(jì)算機(jī)上安裝了JVM就可以執(zhí)行了。
JRE:
:JRE((Java Runtime Environment)Java運(yùn)行環(huán)境,如果只是要執(zhí)行已經(jīng)編寫好的程序,那就安裝JRE就可以運(yùn)行,它包含了JVM虛擬機(jī)。
JDK:
JDK(Java Development Kit)Java開發(fā)工具,它包含了JRE和開發(fā)工具,如果安裝了JDK就可以開發(fā)程序和執(zhí)行程序了。
注意:使用JDK開發(fā)程序,讓JRE來執(zhí)行。
?
Path和classpath的配置
Path變量:
Path的作用:在命令窗口可以直接執(zhí)行Path值所指定的目錄下的文件。
?
配置path的三種方式:
Classpath變量:
Classpath的作用:在命令窗口可以直接執(zhí)行classpath指定目錄下的類文件。
配置classpath的方式
1.cd D:\Program Files\Java\jdk1.6.0_24\jre\lib
2.set classpath=D:\Program Files\Java\jdk1.6.0_24\jre\lib
3. 右擊我的電腦----屬性-----高級(jí)-----環(huán)境變量----系統(tǒng)變量-----新建------變量名(classpath)----值(D:\Program Files\Java\jdk1.6.0_24\jre\lib)----確定
注:如果配置了classpath并且末尾處加了";"號(hào),這個(gè)時(shí)候,classpath目錄下沒有的東西,會(huì)繼續(xù)在當(dāng)前目錄下找,如果還沒找到則報(bào)錯(cuò)。建議,不要添加";"號(hào)。
?
?
測(cè)試環(huán)境變量
?
打開命令窗口輸入javac,如果沒有出現(xiàn)什么異常則成功。
:\Documents and Settings\Administrator>javac
用法:javac <選項(xiàng)> <源文件>
其中,可能的選項(xiàng)包括:
?-g????????????????????????生成所有調(diào)試信息
?-g:none???????????????????不生成任何調(diào)試信息
?-g:{lines,vars,source}????只生成某些調(diào)試信息
?-nowarn???????????????????不生成任何警告
?-verbose??????????????????輸出有關(guān)編譯器正在執(zhí)行的操作的消息
?-deprecation??????????????輸出使用已過時(shí)的 API的源位置
?-classpath <路徑>???????????指定查找用戶類文件和注釋處理程序的位置
?-cp <路徑>??????????????????指定查找用戶類文件和注釋處理程序的位置
?-sourcepath <路徑>??????????指定查找輸入源文件的位置
?-bootclasspath <路徑>???????覆蓋引導(dǎo)類文件的位置
?-extdirs <目錄>?????????????覆蓋安裝的擴(kuò)展目錄的位置
?-endorseddirs <目錄>????????覆蓋簽名的標(biāo)準(zhǔn)路徑的位置
?-proc:{none,only}?????????控制是否執(zhí)行注釋處理和/或編譯。
?-processor <class1>[,<class2>,<class3>...]要運(yùn)行的注釋處理程序的名
的搜索進(jìn)程
?-processorpath <路徑>???????指定查找注釋處理程序的位置
?-d <目錄>????? ??????????????指定存放生成的類文件的位置
?-s <目錄>???????????????????指定存放生成的源文件的位置
?-implicit:{none,class}????指定是否為隱式引用文件生成類文件
?-encoding <編碼>????????????指定源文件使用的字符編碼
?-source <版本>??????????????提供與指定版本的源兼容性
?-target <版本>??????????????生成特定 VM版本的類文件
?-version?????? ????????????版本信息
?-help?????????????????????輸出標(biāo)準(zhǔn)選項(xiàng)的提要
?-Akey[=value]?????????????傳遞給注釋處理程序的選項(xiàng)
?-X????????????????????????輸出非標(biāo)準(zhǔn)選項(xiàng)的提要
?-J<標(biāo)志>????????????????????直接將 <標(biāo)志>傳遞給運(yùn)行時(shí)系統(tǒng)
?
?
打開命令窗口輸入java如果沒有出現(xiàn)什么異常則成功。
C:\Documents and Settings\Administrator>java
Usage: java [-options] class [args...]
?????????? (to execute a class)
?? or? java [-options] -jar jarfile [args...]
?????????? (to execute a jar file)
?
where options include:
??? -client?????? to select the "client" VM
??? -server?????? to select the "server" VM
??? -hotspot????? is a synonym for the "client" VM? [deprecated
????????????????? The default VM is client.
?
??? -cp <class search path of directories and zip/jar files>
??? -classpath <class search path of directories and zip/jar fi
????????????????? A ; separated list of directories, JAR archiv
????????????????? and ZIP archives to search for class files.
??? -D<name>=<value>
????????????????? set a system property
??? -verbose[:class|gc|jni]
????????????????? enable verbose output
??? -version????? print product version and exit
??? -version:<value>
????????????????? require the specified version to run
??? -showversion? print product version and continue
??? -jre-restrict-search | -jre-no-restrict-search
????????????????? include/exclude user private JREs in the vers
??? -? -help????? print this help message
??? -X??????????? print help on non-standard options
??? -ea[:<packagename>...|:<classname>]
??? -enableassertions[:<packagename>...|:<classname>]
????????????????? enable assertions
??? -da[:<packagename>...|:<classname>]
??? -disableassertions[:<packagename>...|:<classname>]
????????????????? disable assertions
??? -esa | -enablesystemassertions
????????????????? enable system assertions
??? -dsa | -disablesystemassertions
???? ?????????????disable system assertions
??? -agentlib:<libname>[=<options>]
????????????????? load native agent library <libname>, e.g. -ag
??????????????????? see also, -agentlib:jdwp=help and -agentlib
??? -agentpath:<pathname>[=<options>]
?????????????? ???load native agent library by full pathname
??? -javaagent:<jarpath>[=<options>]
????????????????? load Java programming language agent, see jav
?
??? -splash:<imagepath>
????????????????? show splash screen with specified image
類的基本結(jié)構(gòu)
1. class Xxx
{
成員變量
實(shí)例方法
類方法
內(nèi)部類
}
?
?
第一個(gè)java程序
/*
*Demo.java
*聲明一個(gè)Demo類
*在類中定義main方法
*在控制臺(tái)打印出longqiankun
*/
class Demo
{
public static void main(String[] args)
{
//打印出括號(hào)里的內(nèi)容
System.out.println("longqiankun");
}
}
?
/*
1. class作為關(guān)鍵字,用來聲明一個(gè)類的。
2.Demo是要聲明的類名
3.{}是用來表示程序的開始于結(jié)束
4.public static void都是Java中的關(guān)鍵字
5.main是定義的方法名
6.String[]是一個(gè)字符串?dāng)?shù)組,
7.args是數(shù)組名
8.System是Java中的一個(gè)系統(tǒng)類
9.out是System中的一個(gè)屬性
10.println()是PrintWriter類中用來輸出的方法
?
編譯:在命令窗口輸入:javac Demo.java
運(yùn)行:在命令窗口輸入:java Demo
輸出:longqiankun
*/
?
編譯和運(yùn)行時(shí)可能要出現(xiàn)的問題
1.
javac: 找不到文件: Demo.java
用法: javac <options> <source files>
-help 用于列出可能的選項(xiàng)
?
解決方法:這里有兩種可能,
a.文件名寫錯(cuò)了,
b.此路徑下根本就沒有這個(gè)文件
?
2.
?Exception in thread "main" java.lang.NoSuchMethodError: main
?
解決方法:
這里的意思是沒有main這樣的方法,因?yàn)樵?span style="font-family:Times New Roman">Java中如果要讓類能獨(dú)立運(yùn)行就得必須有main方法作為人口點(diǎn),要么把main方法名寫錯(cuò),要么沒有定義main方法。
(編譯時(shí)通過的,只是在運(yùn)行的時(shí)侯出現(xiàn)這個(gè)異常)
?
3.
?Demo.java:5:軟件包 system不存在
system.out.println("longqiankun");
(提示:Demo.java后面的5的意思是錯(cuò)誤出現(xiàn)在第5行)
????? ^
1 錯(cuò)誤
?
解決方法:
因?yàn)樵?span style="font-family:Times New Roman">Java中式區(qū)分大小寫的,而且類的首字母要大寫,所以這里的system要該為System.
?
4.
?Exception in thread "main" java.lang.NoClassDefFoundError: Demo
Caused by: java.lang.ClassNotFoundException: Demo
??????? at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
??????? at java.security.AccessController.doPrivileged(Native Method)
??????? at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
? ??????at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
??????? at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
??????? at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: Demo.? Program will exit.
?
解決方法:
a.類名寫錯(cuò)。
b.此路徑下根本就沒有這個(gè)類
?
5.
Demo.java:5:需要 ';'
System.out.println("longqiankun")
???????????????????????????????? ^
1 錯(cuò)誤
?
解決方法:
就是在第五行末尾需要分號(hào)。
---------------------- android培訓(xùn)、 java培訓(xùn)、期待與您交流! ----------------------詳細(xì)請(qǐng)查看: http://edu.csdn.net/heima?
?
總結(jié)
以上是生活随笔為你收集整理的黑马程序员_java开发前缀的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用Excel导入数据库的几种实现方式
- 下一篇: conda空间清理