Java語言是一種高級編程語言,它采用了面向對象編程的思想,具有跨平臺性和安全性等優點。現如今,Java語言成為了世界上最流行的編程語言之一。
前一段學習Python語言,本文是學習java的第一篇筆記。
1. java運行環境搭建:
運行java程序,首先需要安裝Java Development Kit(JDK)。可以從Oracle官方網站下載適合自己操作系統版本的JDK安裝程序,并安裝即可。
我使用的操作系統是Deepin23Beta3,應用市場中提供lOpenJDK(開發套件),點擊安裝即可。
2.編碼工具:
建議使用IntelliJ IDEA 社區版,安裝后,會提升配置JDK,選擇即可,運行編寫的java代碼。
3.編寫第一個Java程序:
Java程序文件以.java作為文件擴展名。其次,Java使用大括號來表示代碼塊,這意味著大括號必須正確匹配,否則會導致程序出錯。接下來,讓我們看看一個簡單的Java程序。
public class test {public static void main(String[] args) {int a,b,c; // 定義一個變量a,類型為整數a = 5; // 賦值變量a的值為整數5b = 100;c = a + b;System.out.println(c); //打印變量a}
}
以上代碼實現的功能很簡單,就是計算并輸入5+100的值105。在Java中,System.out.println()是一個輸出函數,可以在控制臺或命令行中輸出指定的信息。
4.一個Java程序必須至少包含一個類。
Java是一種面向對象的編程語言,它基于類的概念來構建程序。類(Class)是Java的基本構建塊,它定義了對象的屬性(成員變量)和行為(方法)。
一個Java程序可以包含多個類,但必須有至少一個類。當編譯Java程序時,會生成一個或多個.class
文件,每個文件對應一個類。在運行時,JVM會加載至少一個類,并且從該類中的一個main()
方法開始執行程序。
5.認識Java程序的main()方法:
在Java中,main()
?方法是一個特殊的方法,它是程序的入口點。當運行一個Java應用程序時,Java虛擬機(JVM)會尋找名為?main
?的方法并從那里開始執行程序。
main()
?方法必須遵循以下規則:
- 它必須是?
public
?的,這意味著任何類都可以訪問它。 - 它必須是?
static
?的,這意味著這個方法屬于類本身,而不是類的實例。 - 它的返回類型必須是?
void
,這意味著它不返回任何值。 - 它必須接受一個字符串數組參數,通常命名為?
args
。這個數組包含了從命令行傳遞給程序的參數。
下面是一個典型的?main()
?方法的示例:
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); }
}
在這個例子中,HelloWorld
?類包含了一個?main()
?方法。當你運行這個Java程序時,JVM會調用這個?main()
?方法,并且執行其中的代碼。在這個例子中,main()
?方法中的代碼輸出了一條消息 "Hello, World!" 到控制臺。
要運行這個Java程序,你需要將其保存為一個以?.java
?為擴展名的文件(例如?HelloWorld.java
),然后使用Java編譯器(javac
)編譯它,生成一個或多個?.class
?文件。然后,你可以使用Java解釋器(java
)來運行編譯后的類,并傳遞任何需要的命令行參數。
例如,在命令行中,在終端窗口,分別輸入下面的命令:
>>>javac HelloWorld.java # 編譯Java源文件,會生成一個HelloWorld.class文件
>>>java HelloWorld # 運行編譯后的類(不需要.class后綴)
6.main()方法中參數String[] args:
在Java編程中,main()
?方法的參數?String[]
?,即字符串數組。這是Java語言規范所要求的。String[] args
?表示?main()
?方法接受一個名為?args
?的參數,該參數是一個字符串數組。
這個數組包含了從命令行傳遞給Java程序的參數。例如,如果你通過命令行運行以下命令:
>>>java MyProgram arg1 arg2 arg3
那么?args
?數組在?main()
?方法內部將包含三個元素:args[0]
?是?"arg1"
,args[1]
?是?"arg2"
,args[2]
?是?"arg3",在main()函數中可以使用。
請注意,即使你只傳遞了一個參數或沒有傳遞任何參數,args
?數組仍然是一個有效的字符串數組。如果沒有傳遞任何參數,args
?數組將是空的,但不會是?null
。
String[] args
?是Java應用程序的標準約定,但你也可以選擇使用其他類型的參數或完全省略參數。然而,如果你這樣做,你的程序就不能通過標準的Java命令行方式來接收參數了。
7. 變量和數據類型:
變量可以用來存儲一個值或對象。Java中需要事先聲明變量的類型。Java支持各種數據類型,如整數、浮點數、字符、布爾值等。可以先聲明變量類型,然后賦值;也可以首次定義時候進行初始化賦值。下面是一些示例:
int a;? ? ? // 整數
a = 5;? ? ?// 賦值
int b?= 10; // 定義變量b為整數,并直接賦值
double b = 3.14; // 浮點數
String c = "Hello";// 字符串
boolean d = true; // 布爾值
8.運算符
Java支持各種運算符,包括算術運算符、比較運算符、邏輯運算符等。以下是一些示例:
int a = 10;
int b = 3;
int c = a + b; // 加法(+)
int d = a - b; // 減法(-)
int e = a * b; // 乘法(*)
int f = a / b; // 除法(/)
int g = a % b; // 取模(%)
boolean h = a > b;// 大于(>)
boolean i = a < b;// 小于(<)
boolean j = a == b;// 等于(=)
boolean k = a != b;// 不等于(!=)
boolean l = !a // 取反(!)
boolean m = a && b;// 與運算(&&)
boolean n = a || b;// 或運算(||)
9.控制流語句:
像其他編程語言一樣,Java也有條件語句和循環語句,使得程序能夠根據不同情況執行不同的代碼塊。
if語句是最基本的條件語句,其語法如下:
if (condition) {
statement1;
} else {
statement2;
}
while和for循環語句,它們分別用于循環執行一組代碼塊一定的次數或者迭代一個序列。
while語句的語法如下:
while (condition) {
statement;
}
for語句的語法如下:
for (initialization; condition; update) {
statement;
}
10、函數
在Java中,函數定義以“public static”開始,其后是函數返回類型、函數名、參數列表和函數體等內容。例如:
public static int add(int a, int b) {
return a + b;
}
上面的例子定義了一個名為add()的函數,它的返回值類型為int。參數a和b是傳遞給函數的值。函數體中的return關鍵字用于返回一個值。
11. 類和對象:
在Java中,類是一種自定義數據類型,它包含屬性和行為。對象是類的實例,它具有類的屬性和行為。下面是一個簡單的類和對象的示例:
class Person {String name;int age;void get_message() {System.out.println("哈嘍, 我是 " + name + ", 今年" + age + "歲啦。");}}public class test {public static void main(String[] args) {Person p = new Person();p.name = "Liuzx";p.age = 19;p.get_message();}
}
在上面的示例中,我們定義了一個名為Person的類,它包含name和age兩個屬性,以及get_message()方法。在主函數中,我們創建了一個Person對象,并為其設置了姓名和年齡,然后調用get_message()方法輸出信息。
Java編程中有一個重要的約定:
包含main()
方法的類(是程序的入口點),這是Java編譯器的一個要求,Java虛擬機(JVM)在運行時查找main()
方法。
總結:
(1)java是面向對象編程語言,所以其文件必須至少是一個類文件,文件后綴是.java。
(2)java程序運行的入口是main()函數,故main()函數是公開的public,靜態的,無返回的,有標準的樣式(public static void main(String[] args) {? })。
(3)在編寫java程序時,可以在一個.java文件中編寫多個類,Java編譯器會把不同的類編譯到不同的.class文件中。不過在使用java 運行Java程序時,需要執行的是有main方法所在的類。如上一段代碼執行的是test類(比如在終端中執行:java test)。
(4)java語法中的行注釋為(//),塊注釋為(/*? */)
(5)java編程中使用一對大括號{}定義一個代碼塊,通常會在左大括號?{
?前加一個空格,然后在右大括號?}
?后也加一個空格。
(6)在Java編程中,代碼的縮進和空格使用主要是為了提高代碼的可讀性。雖然Java語言本身并沒有明確規定應該使用多少空格進行縮進,但大多數的Java開發者都遵循一些通用的編碼規范。
例如,Google的Java編碼規范推薦使用2個空格進行縮進。這種風格被稱為"Google Style"。然而,也有許多開發者喜歡使用4個空格進行縮進,這種風格被稱為"Allman Style"。