欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一篇文章帶你深入了解Java基礎(chǔ)(2)

 更新時(shí)間:2021年08月02日 11:49:30   作者:zsr6135  
這篇文章主要給大家介紹了關(guān)于Java中方法使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1、Java主要特點(diǎn)

簡單性、跨平臺(tái)性、分布性、安全性、健壯性、平臺(tái)獨(dú)立與可移植性、多線程、動(dòng)態(tài)性、面向?qū)ο蟮木幊陶Z言、支持垃圾自動(dòng)收集處理等,可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用等多個(gè)系統(tǒng)中。

2、計(jì)算機(jī)的高級匯編語言類型:

編譯型——c語言

解釋型——html

編譯型和解釋型的結(jié)合——java

java運(yùn)行原理源程序進(jìn)行編譯形成字節(jié)碼文件在一臺(tái)電腦進(jìn)行解釋程序

java最核心的部分就是虛擬機(jī)JVM

image-20210717143755512

3、JVM(Java Visual Machine)

image-20210717144218082

4、編寫第一個(gè)Java程序并運(yùn)行

新建Hello.java文件

public class Hello{
	public static void main(String[] args){
		System.out.println("Hello Wordld!");
	}
}

cmd運(yùn)行javac Hello.java編譯后形成字節(jié)碼.class 運(yùn)行java Hello

image-20210717165847268

但是對于以上程序需要注意的幾點(diǎn)就是

1>程序類的定義:類是我們Java中的基本單位,在所有的java程序中都是以類的形式存在的,在java中類的定義有兩種

public class 類名稱{}:在一個(gè)*.java文件中只能有一個(gè)public class ,運(yùn)行時(shí)文件名必須和類名一致

class 類名稱{}:在一個(gè)*.java文件里面可以使用class定義多個(gè)文件,在編譯之后形成不同的**.class文件

但是在類名定義的時(shí)候有一個(gè)約定要求每一個(gè)單詞的首字母必須大寫即TestDemo,文件名稱必須與類名稱一致

2>信息輸出:在屏幕上面輸出的信息有兩種形式一個(gè)是輸出換行System.out.println()和輸出不換行System.out.print()

3>主方法:

public class DeomTest(){
    public static void main(String[] args){
        //主方法模板
    }
}

5、CLASSPATH指的是類加載路徑

即使現(xiàn)在不在.class生成的目錄中也可以執(zhí)行該目錄下的.class文件,這個(gè)時(shí)候我們必須通過CLASSPATH來控制SET CLASSPATH=f:\java\javabase\day01

image-20210717172327433

如果你的classpath設(shè)置的目錄很多很亂的話,對我們的程序解釋執(zhí)行很不方便,采用默認(rèn)的機(jī)制:從當(dāng)前類所在的路徑進(jìn)行類的加載,我們可以將CLASSPATH的內(nèi)容設(shè)置為“.”

image-20210717172559199

CLASSPATH是一個(gè)非常重要的概念,但是現(xiàn)在對其有個(gè)基本的認(rèn)識,后期對CLASSPATH有更深的認(rèn)識。

6、程序注釋,對以后的所有代碼都要進(jìn)行注釋,主頁可以方便進(jìn)行開發(fā)需求

單行注釋://注釋內(nèi)容;

多行注釋:/注釋內(nèi)容/”

文檔注釋:/*文檔注釋標(biāo)記/

7、標(biāo)識符和關(guān)鍵字

程序是一個(gè)邏輯的集合,所以每一個(gè)邏輯體都應(yīng)該有自己的標(biāo)記,例如在程序之中應(yīng)該有一個(gè)標(biāo)記例如:在程序中定義變量、定義常量、定義類名稱和方法名稱都有自己的要求。

在JAVA中標(biāo)識符的命令如下:由字母、數(shù)字、_、$組成,其中不能以數(shù)字開頭、不能使用Java中的保留字(關(guān)鍵字)

個(gè)人建議:標(biāo)識符采用有意義的簡單命名,如student_age、age;

"$"不要在代碼中,因?yàn)槠溆刑厥夂x

在所有的程序之中都會(huì)有一個(gè)特殊的文本標(biāo)記得到信息,這樣的信息我們一般稱為叫關(guān)鍵字

image-20210717174240417

但是對于以上的關(guān)鍵字有以下幾點(diǎn)說明:

1.java中有兩個(gè)未使用到的關(guān)鍵字goto、const;

2.java中有三個(gè)特殊含義的單詞(不算關(guān)鍵字):null,true,false;

3.JDK1.4之后追加了assert關(guān)鍵字

4.DK1.5之后追加了enum關(guān)鍵字

8、Java數(shù)據(jù)類型的劃分以及數(shù)據(jù)類型的操作

程序就是一場數(shù)字游戲。

java數(shù)據(jù)類型的劃分一般分為兩大類:基本數(shù)據(jù)類型和引用數(shù)據(jù)類型

基本數(shù)據(jù)類型:

|-數(shù)值類型:表示整數(shù)和小數(shù);

​ |-整型:byte、short、int、long -》 默認(rèn)值是:0;

​ |-浮點(diǎn)型:float、double -》 默認(rèn)值是:0.0;

|-字符型:char -》默認(rèn)值是:'\u0000';

|-字符串型:stinrg -》默認(rèn)值是:

|-布爾型:boolean -》默認(rèn)值是:false

引用數(shù)據(jù)類型:數(shù)組、類、接口 -》默認(rèn)值是:null

image-20210717180826530

給出幾個(gè)使用原則:

1>描述整形就是要使用int,描述小數(shù)就要使用double;

2>long這種數(shù)據(jù)類型一般會(huì)描述日期時(shí)間、內(nèi)存或文件大?。ㄗ止?jié))

3>如果需要進(jìn)行編碼轉(zhuǎn)換或者進(jìn)行二進(jìn)制數(shù)據(jù)傳輸,使用byte(-128~127)

4>char一般在描述中文的時(shí)候使用到

5>在描述程序邏輯的時(shí)候是使用

數(shù)據(jù)類型劃分——整形

關(guān)于變量得到命名要求:第一個(gè)單詞的字母小寫,而后的每個(gè)單詞的首字母大寫,例如maxValue

public class Hello{
	public static void main(String[] args){
		int maxValue = Integer.MAX_VALUE;	//取得最大值
		int minValue = Integer.MIN_VALUE;	//取得最小值
		System.out.println(maxValue);		//2147483647
		System.out.println(minValue);		//-2147483648
		System.out.println(maxValue +1);	//數(shù)據(jù)溢出 (最小值)2147483647	
		System.out.println(minValue - 1);	//數(shù)據(jù)溢出 (最大值)-2147483648
	}
}

image-20210717183329311

錯(cuò)誤: 編碼GBK的不可映射字符

出現(xiàn)該問題:打開記事本-》文件-》另存為-》選擇ANSI編碼保存

使用long解決int數(shù)據(jù)溢出的問題

在使用此類方式處理之前請一定注意一個(gè)繼續(xù)使用int進(jìn)行計(jì)算的一個(gè)問題,計(jì)算結(jié)果依然會(huì)溢出,原因是先進(jìn)行等號右邊的int類型運(yùn)算,將運(yùn)算的結(jié)果賦值給long類型,所以說還是會(huì)溢出,解決辦法就是,將其中的一個(gè)變量類型進(jìn)行擴(kuò)充,而擴(kuò)充有兩種是實(shí)現(xiàn)方式:

​ |-實(shí)現(xiàn)方式一:直接將int變量的內(nèi)容賦值給long類型變量

image-20210725104838542

​ |-實(shí)現(xiàn)方式二:直接將某一個(gè)int變量直接變?yōu)閘ong類型變量

image-20210725105136945

System.out.println(11 + l1); 面試區(qū)分1 和 l的細(xì)微差別

重要說明:關(guān)于數(shù)據(jù)類型的默認(rèn)值問題

在之前所有的數(shù)據(jù)類型都有其默認(rèn)值,但默認(rèn)值在方法(主方法)聲明中無效

image-20210725111430224

有兩種解決方案:一種是在是使用前進(jìn)行賦值,另外一種是定義變量的時(shí)候進(jìn)行賦值。但是在最早版本JDK時(shí)會(huì)出現(xiàn)問題,推薦使用第二種方式進(jìn)行賦值。

數(shù)據(jù)類型劃分——浮點(diǎn)形

double可以保存的數(shù)字是最大的,也就是double可以保存全宇宙中最大的有意義的

而除了double之外的 也可以使用float,但float的范圍小于double,直接聲明float變量時(shí),那么要求在定義的時(shí)候進(jìn)行強(qiáng)制類型轉(zhuǎn)換,在一個(gè)數(shù)字后加一個(gè)字母'f‘、‘F'、或者在數(shù)字前面加個(gè)(float)

傳統(tǒng)bug問題

image-20210725143239948

既然說到了小數(shù)的問題就必須考慮一下整形計(jì)算的問題

image-20210725144123462

數(shù)據(jù)類型劃分——字符型

用char進(jìn)行表示,而且賦值使用單引號''來聲明字符型的字符變量的內(nèi)容可以與int類型進(jìn)行轉(zhuǎn)換。

char類型的變量變?yōu)閕nt類型的變量內(nèi)容的時(shí)候其所包含的就是編碼

大寫字母AscII(A-Z):65(A)~~90(Z)

小寫字母AscII(a-z):97(a)~~122(z)

字符數(shù)字(‘0'‘9'):48(‘0')~57(‘9')

在其他的語言中可能使用的ASCII編碼,而在java中使用的是UNICODE編碼,正在因?yàn)樵趈ava中對于字符的特效支持特別好,所有還有另外一類神奇的用法。

數(shù)據(jù)類型劃分——布爾型

對于布爾型的內(nèi)容需要說明:在其他語言中由于沒有提供布爾型的數(shù)據(jù) ,我們會(huì)使用數(shù)字來描述布爾型,例如0表示false,非0表示true,但是java中沒有這個(gè)概念。

數(shù)據(jù)類型劃分——字符串型

在字符串中使用了”+“表示兩個(gè)字符的內(nèi)容進(jìn)行連接;一旦字符串有了”+“,則所有的數(shù)據(jù)類型都變?yōu)镾tring類型。如果這時(shí)候想要得到正確的計(jì)算結(jié)果,那么必須使用我們的”()“解決問題。

image-20210725163027589

在java中還存在一種叫做轉(zhuǎn)義字符的概念,幾個(gè)常用的轉(zhuǎn)義字符換行(\n)、制表符(\t)、雙引號(\")、以及單引號(\')、\(\)。

9、運(yùn)算符 自增、自減操作

​ |-++變量:++x 先自增再運(yùn)算,x++ 先運(yùn)算再自增

​ |—變量: --x 先自減再運(yùn)算,x-- 先運(yùn)算再自減

三目運(yùn)算符

三目運(yùn)算是一種賦值運(yùn)算,根據(jù)條件進(jìn)行運(yùn)算

數(shù)據(jù)類型 變量 = 布爾表達(dá)式 ? 條件滿足時(shí)賦值內(nèi)容 : 條件不滿足時(shí)賦值內(nèi)容

例:將兩個(gè)變量之中大的內(nèi)容賦值給新的變量

image-20210725175515359

關(guān)系運(yùn)算符

大于>、小于<、等于=、不等于!=、等于==,最終的結(jié)果都是boolean布爾型

邏輯運(yùn)算

與&&、或||、非!

位運(yùn)算

十進(jìn)制與二進(jìn)制的轉(zhuǎn)化,數(shù)據(jù)除2取余,一直除到0為止,將余數(shù)倒序排列。

移位

image-20210725181423457

進(jìn)制

image-20210725181715707

出錯(cuò)原因是因?yàn)?23為八進(jìn)制 進(jìn)行進(jìn)制轉(zhuǎn)化為十進(jìn)制 為19

面試題:請解釋&&和&、||和|的區(qū)別?

與操作:

​ |-&&:表示邏輯與運(yùn)算,若干個(gè)判斷只要有其中的一個(gè)條件為false,后面的不需要再進(jìn)行判斷,結(jié)果為false

​ |-&:表示所有的判斷都要執(zhí)行

或操作

​ |-||:表示邏輯與運(yùn)算,若干個(gè)判斷只要有其中的一個(gè)條件為true,后面的不需要再進(jìn)行判斷,結(jié)果為true

​ |-|:表示所有的判斷都要執(zhí)行

位運(yùn)算:

​ |-&:運(yùn)算的兩個(gè)數(shù)據(jù)位,只要有一個(gè)0,其結(jié)果就為0

​ |-|:運(yùn)算的兩個(gè)數(shù)據(jù)位,只要有一個(gè)1,其結(jié)果就為1

總結(jié)

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Java規(guī)則引擎easy-rules詳細(xì)介紹

    Java規(guī)則引擎easy-rules詳細(xì)介紹

    本文主要介紹了Java規(guī)則引擎easy-rules詳細(xì)介紹,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • SpringBoot整合jasypt加密配置文件敏感信息

    SpringBoot整合jasypt加密配置文件敏感信息

    在項(xiàng)目中我們需要對配置文件的一些敏感信息進(jìn)行加密處理,比如數(shù)據(jù)庫賬戶密碼,避免直接暴露出來,這種場景常常用于生產(chǎn)環(huán)境,我們不想讓開發(fā)人員知道生產(chǎn)庫的密碼,有運(yùn)維人員統(tǒng)一管理,所以本文給大家介紹了SpringBoot整合jasypt加密配置文件敏感信息
    2024-06-06
  • 深入理解Swift中的Substring和String

    深入理解Swift中的Substring和String

    這篇文章主要給大家深入的介紹了Swift中Substring和String的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • IDEA創(chuàng)建springboot依賴下載很慢的解決方法

    IDEA創(chuàng)建springboot依賴下載很慢的解決方法

    maven會(huì)使用遠(yuǎn)程倉庫來加載依賴,是一個(gè)國外的網(wǎng)站,所以會(huì)很慢,本文主要介紹了IDEA創(chuàng)建springboot依賴下載很慢的解決方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-12-12
  • java自定義封裝StringUtils常用工具類

    java自定義封裝StringUtils常用工具類

    這篇文章主要為大家詳細(xì)介紹了java自定義封裝StringUtils常用工具類,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Java單元測試Powermockito和Mockito使用總結(jié)

    Java單元測試Powermockito和Mockito使用總結(jié)

    公司單元測試框架選用了Junit 4.12,Mock框架選用了Mockito和PowerMock,本文主要介紹了Java單元測試Powermockito和Mockito使用總結(jié),感興趣的可以了解一下
    2021-09-09
  • 如何從官網(wǎng)下載Hibernate jar包的方法示例

    如何從官網(wǎng)下載Hibernate jar包的方法示例

    這篇文章主要介紹了如何從官網(wǎng)下載Hibernate jar包的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-04-04
  • IDEA自動(dòng)清理類中未使用的import包的操作方法

    IDEA自動(dòng)清理類中未使用的import包的操作方法

    在項(xiàng)目開發(fā)中,經(jīng)常會(huì)引入很多未使用的import包,這不僅增加了編譯時(shí)間,還會(huì)使代碼可讀性變差,設(shè)置IDEA自動(dòng)清理未使用的import包,可以提高代碼的可讀性,本文給大家介紹IDEA自動(dòng)清理類中未使用的import包的方法,感興趣的朋友一起看看吧
    2024-09-09
  • SpringBoot如何實(shí)現(xiàn)starter原理詳解

    SpringBoot如何實(shí)現(xiàn)starter原理詳解

    這篇文章主要介紹了SpringBoot如何實(shí)現(xiàn)starter原理詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • javaCV開發(fā)詳解之收流器實(shí)現(xiàn)

    javaCV開發(fā)詳解之收流器實(shí)現(xiàn)

    這篇文章主要介紹了javaCV開發(fā)詳解之收流器實(shí)現(xiàn),對javaCV有研究的同學(xué),可以參考下
    2021-04-04

最新評論