JAVA基礎(chǔ)快速從入門到精通
java程序基本結(jié)構(gòu)
java程序的源碼文件是Xxx.java,Xxx代碼類名和文件名一致(一般要求首字母大寫,從第二個單詞首字母大寫。
新建一個類,類名User
class User{
}
新建一個User類,執(zhí)行代碼在控制臺打印出"hello 中國"的效果
class User{
public static void main(String[] arg){
System.out.print("hello 中國");
}
}
javac User.java 意思是編譯User.java文件,-encoding utf-8是設(shè)置字符集防止亂碼。java User是執(zhí)行編譯后的文件
程序注釋
單行注釋:
// 單行注釋
多行注釋:
/*
多行注釋
*/
文檔注釋,主要依賴于javadoc.exe,提取java源代碼文件中的注解結(jié)構(gòu),生成html-api 參考文件
/**
* 文件注釋
* 類注釋
* 屬性注釋
* 方法注釋
*/
案例:
package com;
/**
* 這里主要寫本文件的注釋信息,比如作者,文件名之類的注釋
* @author webrx
* javac -d . Hello.java
* java com.Hello
*/
public class Hello {
/*
*多行注釋
*/
public static void main(String[] args) {
// 單行注釋
System.out.println("Hello com");
}
}變量 常量
變量
變量是指值在程序運行期間可以被改變的量。變量用于儲存信息。它指向內(nèi)存的某個單元,而且指明了這塊內(nèi)存有多大。java是強類型,變量必須先聲明初始化才可以使用。java程序中,變量名是區(qū)分大小寫。
public class User {
// 在這里聲明的變量屬于全局變量,在整個類中都可以用
//聲明靜態(tài)變量,并初始化
static int a = 3;
//聲明變量
int b;
public static void main(String[] args) {
//在方法里聲明的變量只能在這個方法中用,在其他方法中不能用。
//聲明變量,并初始化
int c=111;
//輸出變量a和c
System.out.println(a);
System.out.println(c);
}我這里是在WIN10的控制臺執(zhí)行的,用IDEA或者其他工具可以直接點運行程序就可以

常量
在開發(fā)領(lǐng)域常量一般都要求全大寫
指在程序執(zhí)行期間其值不能發(fā)生變化的數(shù)據(jù)。例如數(shù)學(xué)中的π= 3.1415……又如:整數(shù)123,小數(shù)1.23,字符’A’,布爾常量 true、false等,程序開發(fā)中,常量名一般規(guī)則全部大寫,聲明常量時必須賦值,以后只能使用,不能再賦值,java語言聲明常量使用final。
class User{
// 聲明全局常量
static final int a=3;
public static void main(String[] arg){
// 聲明局部常量
final int c=111;
System.out.println(a);
System.out.println(c);
}
}
- 這樣看是不是兩個沒什么區(qū)別?
常量是不可以變的,并且創(chuàng)建的時候必須賦值。而變量可以不賦值,用的時候再賦值。
這里聲明常量a沒有賦值,后面用的時候再賦值
class User{
static final int a;
public static void main(String[] arg){
final int c=111;
System.out.println(a);
System.out.println(c);
}
}運行報錯

變量a聲明的時候沒賦值,運行之前賦值
class User{
static int a;
public static void main(String[] arg){
int c=111;
a=11;
System.out.println(a);
System.out.println(c);
}
}正常運行

數(shù)據(jù)類型與類型轉(zhuǎn)換
(1)基本數(shù)據(jù)類型 byte short int long float double char boolean (8大類型)
? 1、整型 byte short int long
? 2、浮點型 float double
? 3、字符型 char a = ‘y’;
? 4、布爾 boolean
(2)引用數(shù)據(jù)類型(對象 類 接口 數(shù)組)

常用數(shù)據(jù)類型
常用數(shù)據(jù)類型,其他的基本數(shù)據(jù)類型看上面的表。用法都一樣
class User{
public static void main(String[] arg){
// int類型 賦值只能是整數(shù),長度適中,一般都夠用
int a=1;
// String 字符串類型,數(shù)字,字母,漢字都屬于字符串都可以用
String b="hello";
// boolean 一般用于判斷對錯,因為這個類型的變量只有兩個值,true和false 要么對要么錯
boolean c=true;
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
}
類型轉(zhuǎn)換
// 聲明int類型
int i = 30;
//轉(zhuǎn)換成short類型
short n = (short)i;
package cn;
public class Var2 {
public static void main(String[] args) {
int a = 5;
a += 1;
a = a + 1;
System.out.println(a);//7
short b = (short) a;//7
b += 1;//b 8 (+=可以實現(xiàn)自動的類型轉(zhuǎn)換)
a = b + 1;//a = 9 b=8 (b+1 結(jié)果類型為int 此)
System.out.println(a);//9
System.out.println(b);//8
}
}自動隱式轉(zhuǎn)換

運算符表達(dá)式
運算符:是一種特殊符號,用以表示數(shù)據(jù)的運算、賦值和比較。
表達(dá)式:使用運算符將運算數(shù)據(jù)連接起來的符合Java語法規(guī)則的式子。
int i = 20*30;
(1)、算術(shù)運算符
+ - * / % ++ --
int i = 5;
++i; //自身加1
i++;
System.out.println(--i); //自身減1 如果++ -- 在變量前,先執(zhí)行再使用,如果在后,先使用再自執(zhí)行。
public class Var4 {
public static void main(String[] args) {
int i = 5;
++i;
int b = i--;//b=6 i=5
System.out.println(i);//5
System.out.println(b);//6
System.out.println(6%2);//0 取余數(shù)
System.out.println(3/2);//1 取整商
System.out.printf("%.3f%n",3/2f);//1.500
System.out.printf("%.3f",3/2.0);//1.500
}
}(2)、賦值運算符
= += -= *= /= %=

(3)、比較運算符
? == != > >= < <=
== 和 = 結(jié)果不一樣,==是判斷等不等,=是賦值
注1:比較運算符的結(jié)果都是boolean型,也就是要么是true,要么是false。
注2:比較運算符“==”不能誤寫成“=” ,切記!切記!

(4)、邏輯運算符
&&邏輯與 ||邏輯域 !邏輯非

標(biāo)識符 關(guān)鍵字 保留字
- 標(biāo)識符(identifier)是指用來標(biāo)識某個實體的一個符號,在不同的應(yīng)用環(huán)境下有不同的含義。在計算機編程語言中,標(biāo)識符是用戶編程時使用的名字,用于給變量、常量、函數(shù)、語句塊等命名,以建立起名稱與使用之間的關(guān)系。
- 標(biāo)識符通常由字母和數(shù)字以及其它字符構(gòu)成。標(biāo)識符是由字母 數(shù)字 下滑線 $組成的,不能數(shù)字開頭,不能使用空格和特殊的符號,如下紅框內(nèi)的是非法

- 保留字(reserved word),指在高級語言中已經(jīng)定義過的字,使用者不能再將這些字作為變量名或過程名使用。 保留字包括關(guān)鍵字和未使用的保留字。
- 關(guān)鍵字則指在語言中有特定含義,成為語法中一部分的那些字。在一些語言中,一些保留字可能并沒有應(yīng)用于當(dāng)前的語法中,這就成了保留字與關(guān)鍵字的區(qū)別。一般出現(xiàn)這種情況可能是由于考慮擴展性。例如,Javascript有一些未來保留字,如abstract、double、goto等等。
| 關(guān)鍵字 | 含義 |
|---|---|
| abstract | 表明類或者成員方法具有抽象屬性 |
| assert | 斷言,用來進行程序調(diào)試 |
| boolean | 基本數(shù)據(jù)類型之一,聲明布爾類型的關(guān)鍵字 |
| break | 提前跳出一個塊 |
| byte | 基本數(shù)據(jù)類型之一,字節(jié)類型 |
| case | 用在switch語句之中,表示其中的一個分支 |
| catch | 用在異常處理中,用來捕捉異常 |
| char | 基本數(shù)據(jù)類型之一,字符類型 |
| class | 聲明一個類 |
| const | 保留關(guān)鍵字,沒有具體含義 |
| continue | 回到一個塊的開始處 |
| default | 默認(rèn),例如,用在switch語句中,表明一個默認(rèn)的分支。Java8 中也作用于聲明接口函數(shù)的默認(rèn)實現(xiàn) |
| do | 用在do-while循環(huán)結(jié)構(gòu)中 |
| double | 基本數(shù)據(jù)類型之一,雙精度浮點數(shù)類型 |
| else | 用在條件語句中,表明當(dāng)條件不成立時的分支 |
| enum | 枚舉 |
| extends | 表明一個類型是另一個類型的子類型。對于類,可以是另一個類或者抽象類;對于接口,可以是另一個接口 |
| final | 用來說明最終屬性,表明一個類不能派生出子類,或者成員方法不能被覆蓋,或者成員域的值不能被改變,用來定義常量 |
| finally | 用于處理異常情況,用來聲明一個基本肯定會被執(zhí)行到的語句塊 |
| float | 基本數(shù)據(jù)類型之一,單精度浮點數(shù)類型 |
| for | 一種循環(huán)結(jié)構(gòu)的引導(dǎo)詞 |
| goto | 保留關(guān)鍵字,沒有具體含義 |
| if | 條件語句的引導(dǎo)詞 |
| implements | 表明一個類實現(xiàn)了給定的接口 |
| import | 表明要訪問指定的類或包 |
| instanceof | 用來測試一個對象是否是指定類型的實例對象 |
| int | 基本數(shù)據(jù)類型之一,整數(shù)類型 |
| interface | 接口 |
| long | 基本數(shù)據(jù)類型之一,長整數(shù)類型 |
| native | 用來聲明一個方法是由與計算機相關(guān)的語言(如C/C++/FORTRAN語言)實現(xiàn)的 |
| new | 用來創(chuàng)建新實例對象 |
| package | 包 |
| private | 一種訪問控制方式:私用模式 |
| protected | 一種訪問控制方式:保護模式 |
| public | 一種訪問控制方式:共用模式 |
| return | 從成員方法中返回數(shù)據(jù) |
| short | 基本數(shù)據(jù)類型之一,短整數(shù)類型 |
| static | 表明具有靜態(tài)屬性 |
| strictfp | 用來聲明FP_strict(單精度或雙精度浮點數(shù))表達(dá)式遵循[IEEE 754](https://baike.baidu.com/item/IEEE 754)算術(shù)規(guī)范 |
| super | 表明當(dāng)前對象的父類型的引用或者父類型的構(gòu)造方法 |
| switch | 分支語句結(jié)構(gòu)的引導(dǎo)詞 |
| synchronized | 表明一段代碼需要同步執(zhí)行 |
| this | 指向當(dāng)前實例對象的引用 |
| throw | 拋出一個異常 |
| throws | 聲明在當(dāng)前定義的成員方法中所有需要拋出的異常 |
| transient | 聲明不用序列化的成員域 |
| try | 嘗試一個可能拋出異常的程序塊 |
| void | 聲明當(dāng)前成員方法沒有返回值 |
| volatile | 表明兩個或者多個變量必須同步地發(fā)生變化 |
| var | java10新增的關(guān)鍵字,用來推斷類型 var i = 20; |
| while | 用在循環(huán)結(jié)構(gòu)中 |
小常識
java是嚴(yán)格區(qū)分大小寫的
(1)類,接口和枚舉或?qū)ο笫鞘鬃帜复髮?,如果有多個單詞第二個單詞首字母大寫:User.java UserBook.java
System Scanner Date String 。
(2)變量名,常量名嚴(yán)格區(qū)分大小寫 java中常量名要求全部大寫 AGE。
(3)方法名一般是
setXxx getXxx isXxxx getUserName() 動詞開頭,從第二個單詞開始使用大寫。
到此這篇關(guān)于JAVA基礎(chǔ)快速從入門到精通的文章就介紹到這了,更多相關(guān)JAVA 基礎(chǔ)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java使用FilenameFilter查找出目錄下指定后綴的文件示例
這篇文章主要介紹了Java使用FilenameFilter查找出目錄下指定后綴的文件,結(jié)合實例形式分析了java基于FilenameFilter類的文件遍歷、查找相關(guān)操作技巧,需要的朋友可以參考下2019-10-10
如何在spring boot中進行參數(shù)校驗示例詳解
這篇文章主要介紹了如何在spring-boot中進行參數(shù)校驗及l(fā)ombok的使用詳解,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05
Java ArrayList的基本概念和作用及動態(tài)數(shù)組的機制與性能
在Java中,ArrayList是一個實現(xiàn)了List接口的動態(tài)數(shù)組,它可以根據(jù)需要自動增加大小,因此可以存儲任意數(shù)量的元素,這篇文章主要介紹了探秘Java ArrayList的基本概念和作用及動態(tài)數(shù)組的機制與性能,需要的朋友可以參考下2023-12-12

