免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
一個(gè)月的JAVA總結(jié)

初遇java

首次接觸java是在大二上學(xué)期的時(shí)候,在學(xué)校老師講的很快,再加上本來(lái)也沒(méi)好好聽(tīng)講,所以基本也沒(méi)學(xué)到什么,為了應(yīng)付考試和項(xiàng)目自己看過(guò)一些書(shū),知道一些很少很少的用法。

一、 開(kāi)始學(xué)習(xí)

  1. 什么是java?
    java是一種編程語(yǔ)言

  2. java的優(yōu)勢(shì)是什么?
    我覺(jué)得java的應(yīng)用范圍很廣,基本上方方面面都能涉及到,不過(guò)目前我學(xué)習(xí)的是面向網(wǎng)站的javaEE。

  3. JDK版本的選擇和安裝
    越高的版本的JDK功能是越多的,但是對(duì)于生產(chǎn)開(kāi)發(fā),很多應(yīng)用還用的是舊版的JDK,類似于1.6,1.7,所以在學(xué)習(xí)時(shí),使用的是JDK1.8.。

  4. 環(huán)境變量的配置
    百度經(jīng)驗(yàn)描述還是比較詳細(xì)的

  5. IDE的選擇
    我選擇的是myeclipse2019.4.0,老實(shí)說(shuō)我覺(jué)得這個(gè)版本的界面比我之前上學(xué)用的2014好看太多了,所以下下來(lái)的時(shí)候還是很開(kāi)心的(不過(guò)還是需要吐槽一下,myeclipse啟動(dòng)的太慢了…隔壁朋友的eclipse每次秒啟動(dòng),我要等好久或者重來(lái)好多次)

  6. Java的運(yùn)行原理
    Java源文件(.java)—>(經(jīng)過(guò)編譯)—>Java字節(jié)碼文件(.class)—>交給JVM虛擬機(jī)執(zhí)行,然后交給操作系統(tǒng)執(zhí)行;正因如此java可以在多種平臺(tái)上使用。

二、 變量與運(yùn)算符

變量和運(yùn)算符的內(nèi)容很基礎(chǔ),但要牢記

1.命名規(guī)則

類名:首字母大寫(xiě),如:Student,Test
變量名,方法名:首字母小寫(xiě),后續(xù)字母大寫(xiě)(駝峰命名法),如:stuName,age;getName,getId
包名全部小寫(xiě)
常量名全部大寫(xiě)
不能用關(guān)鍵字和保留字命名


2.變量

常量是一直不變的量;而變量就是在程序運(yùn)行過(guò)程中可變的量。

變量的聲明與賦值方法:

數(shù)據(jù)類型 變量名 = 值 | 表達(dá)式 |方法; 

兩個(gè)概念:
a.成員變量:成員變量是在類的下一級(jí)定義的變量,可以不用賦初值。
b.局部變量:在類的方法中定義的變量,使用前必須賦初值,作用于只能在本方法中。

3.數(shù)據(jù)類型

8種基本數(shù)據(jù)類型:byte字節(jié)型,short短整型,int整型,long長(zhǎng)整型,float double char boolean
引用類型:類,接口,字符換,數(shù)組等…

數(shù)據(jù)類型轉(zhuǎn)換
a.隱式轉(zhuǎn)換:由系統(tǒng)自動(dòng)轉(zhuǎn)換,類型要相互兼容,小轉(zhuǎn)大;
b.強(qiáng)制轉(zhuǎn)化:當(dāng)類型不兼容或大轉(zhuǎn)小時(shí),需要由我們自己強(qiáng)制轉(zhuǎn)換

double d =12.3;int t=(int) d;

注意:強(qiáng)制類型轉(zhuǎn)換會(huì)有精度損失

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

區(qū)分=和==的區(qū)別
其他運(yùn)算符: !,& ,|, ,/(取模),*,%(取余)等
三元表達(dá)式

boolean n = (4 < 3) ? true : false;

?前面的為真,則執(zhí)行:左邊;為假,執(zhí)行:右邊。

三、流程控制語(yǔ)句

這里主要學(xué)習(xí)了一些流程控制語(yǔ)句

if語(yǔ)句

if(條件){}

switch

switch(n){case  1:break;default:}

這里要說(shuō)明的是,case具有貫穿性,所以在使用時(shí),可以根據(jù)需求,來(lái)判斷是否需要些break
能打破switch結(jié)構(gòu)的,只有break和}。

for

for(迭代變量;循環(huán)條件;控制循環(huán)次數(shù)的操作){}

while

while(){}

while是先判斷條件是否成立,再執(zhí)行的

do…while

do{}while()

do…while必定會(huì)執(zhí)行一次,先執(zhí)行,后判斷(先斬后奏)

每個(gè)流程控制語(yǔ)句可以相互嵌套,但是不要嵌套過(guò)多,以免代碼雜亂,邏輯難以理清。
while和do…while常用于次數(shù)不明確的循環(huán),for常用語(yǔ)次數(shù)明確的循環(huán)

死循環(huán)并不一定是錯(cuò)的,當(dāng)要完成某些需求時(shí),可以用到死循環(huán)

四、數(shù)組

這里學(xué)習(xí)了數(shù)組的使用
數(shù)組是引用類型,使用數(shù)組前必須實(shí)例化

數(shù)組的聲明

a.
1、聲明數(shù)組 2、實(shí)例化數(shù)組

int[] nums;nums= new int [5];

b.
聲明同時(shí)實(shí)例化

int [] numbers =new int[5];int [] bym2s ={1,2,3,4};int [] vya3s=new int[ ] {1,2,3,4};

內(nèi)存:棧 堆 池
程序和變量都在棧中
基本數(shù)據(jù)類型都放在棧中

數(shù)組使用時(shí),先在棧中分配一塊空間,用來(lái)存儲(chǔ)數(shù)組元素在堆中存儲(chǔ)的地址。

數(shù)組的索引都是從0開(kāi)始的
比如我創(chuàng)建了一個(gè)length為5的數(shù)組,但是a[5]是取不到的,如果這樣寫(xiě),會(huì)提示數(shù)組越界。

foreach

for(數(shù)組元素類型  變量名 :   數(shù)組名){         語(yǔ)句;}

多維數(shù)組

多維數(shù)組我的理解就是在一維數(shù)組中,將他的元素也變?yōu)閿?shù)組,就成了多維數(shù)組

多維數(shù)組的創(chuàng)建

數(shù)據(jù)類型 數(shù)組名 =new 數(shù)據(jù)元素類型[行數(shù)] [列數(shù)];//列數(shù)可以不寫(xiě)ex:int[][] a=new int[3][];int[][] a=new int[3][4];

數(shù)組的操作

a.取數(shù)
a[索引] 就可以取出其中的數(shù)
b.取數(shù)組長(zhǎng)
a.length
c.數(shù)組的遍歷

int [] numbers =new int[5];for(i=0;i<numbers.length;i  ){       syso(“number[i]”);}//foreachfor(int  i :   number){    syso(“number[i]”);    }

冒泡排序

for(i = 1; i < n; i  )   {      for(j = 0; j < n-i; j  )       {           if(a[ j ] > a[ j  1 ])             {                t = a[ j ]; 	            a[ j ] = a[ j  1 ]; 	            a[ j  1 ] = t;              }       }  }

擴(kuò)展:
直接插入排序


希爾排序

簡(jiǎn)單選擇排序

方法

方法是可以說(shuō)是程序里非常重要的一環(huán)了,所以在學(xué)習(xí)中要重點(diǎn)理解,多練習(xí)。

什么是方法?
方法是完成某個(gè)功能的一組語(yǔ)句,通常將常用的功能寫(xiě)成一個(gè)方法。

方法的聲明或者定義——方法五要素

訪問(wèn)修飾符,返回值類型,方法名 , 參數(shù)列表,方法體

[訪問(wèn)控制符] [修飾符] 返回值類型 方法名(參數(shù)類型 形式參數(shù),參數(shù)類型 形式參數(shù),…){   					 方法體}
public void  getType(){}

void 可以寫(xiě)也可以不寫(xiě) return,寫(xiě)return可以用來(lái)結(jié)束方法,類似于break

非void必須寫(xiě)返回值,方法的每條分支必須要有return

參數(shù) 可以一個(gè)可以多個(gè),多個(gè)的時(shí)候用逗號(hào)隔開(kāi)

參數(shù)傳遞時(shí)要注意的問(wèn)題

值類型參數(shù)傳遞,傳遞的是值的副本(類似于復(fù)制一份傳遞過(guò)去)。

引用類型參數(shù)傳遞, 傳遞的是對(duì)象的地址的副本 所以方法內(nèi)或方法外操作的都是同一個(gè)堆中內(nèi)容,所以值會(huì)改變。

方法的調(diào)用
a.實(shí)例化類對(duì)象

類  對(duì)象名 =new 類();

b.調(diào)用方法

對(duì)象名.方法名(有參帶參,無(wú)參不寫(xiě));

方法的重載
即相同的事,不同的做法
a.在同一個(gè)類中
b.方法名相同
c.參數(shù)列表不同(類型,個(gè)數(shù)。即有一個(gè)獨(dú)一無(wú)二的參數(shù)列表)
d.和訪問(wèn)修飾符、返回值類型無(wú)關(guān)(可以相同,也可以不同)

面向?qū)ο?/h2>

面向?qū)ο笫且粋€(gè)抽象的概念,java就是屬于面向?qū)ο笳Z(yǔ)言

**抽象:**從事物中舍棄個(gè)別的非本質(zhì)特征,抽取共同的本質(zhì)特征只考慮與問(wèn)題域相關(guān)的信息,而忽略與問(wèn)題域不相關(guān)的部分

**對(duì)象:**萬(wàn)物皆對(duì)象,對(duì)象有自己的屬性和行為(方法)

**類:**對(duì)對(duì)象的抽象

生活中先有對(duì)象再有類,而程序中先有類,類的作用是創(chuàng)建對(duì)象,類是生成對(duì)象的模板。

如何寫(xiě)一個(gè)類?

寫(xiě)類三步走:
1.發(fā)現(xiàn)類
2.發(fā)現(xiàn)類的屬性
3.發(fā)現(xiàn)類的方法

//1.發(fā)現(xiàn)類public  class  類名{     //2.發(fā)現(xiàn)屬性       訪問(wèn)修飾符  數(shù)據(jù)類型  屬性名 ;     //3.發(fā)現(xiàn)方法       訪問(wèn)修飾符  返回值類型  方法名(參數(shù)列表){方法體;}}

對(duì)象

a.對(duì)象實(shí)例化

類名 對(duì)象名  = new  類名();

b.給對(duì)象的屬性賦值

對(duì)象名.屬性=值

c.調(diào)用對(duì)象方法

對(duì)象名.方法名(參數(shù));

d.對(duì)象在內(nèi)存中的存儲(chǔ)


棧內(nèi)保存了對(duì)象的首地址,即引用;
在堆內(nèi)存中保存了對(duì)象的屬性。
方法不能被保存
方法是在cpu中運(yùn)行計(jì)算,然后將所得到的的結(jié)果存入內(nèi)存。

棧:先進(jìn)后出、后進(jìn)先出。
棧中保存基本數(shù)據(jù)類型的局部變量和對(duì)象調(diào)用引用值。

堆:堆可以保存那些對(duì)空間要求較大的變量。
new空間分配存儲(chǔ)符

構(gòu)造函數(shù)

作用:
創(chuàng)建對(duì)象,初始化對(duì)象
特點(diǎn):
a.方法名必須與類同名
b.無(wú)返回值(只進(jìn)不出;與普通方法區(qū)分)
c.普通方法可以與構(gòu)造函數(shù)同名,但必須要有返回值
d.構(gòu)造函數(shù)不能被直接調(diào)用,在new時(shí)會(huì)自動(dòng)調(diào)用
e.如果不創(chuàng)建構(gòu)造函數(shù),編譯器會(huì)提供一個(gè)默認(rèn)不帶參數(shù)的構(gòu)造函數(shù)。寫(xiě)了構(gòu)造函數(shù)就不提供默認(rèn)的了
f.構(gòu)造函數(shù)可以帶參數(shù)。
g.一個(gè)類可以定義多個(gè)構(gòu)造函數(shù)。
h.構(gòu)造函數(shù)可以相互調(diào)用,必須在第一行。this(屬性名)

java具有垃圾回收機(jī)制,不必專門去寫(xiě)方法處理

常用的包
java.lang
java.io

同一包中的類可以直接訪問(wèn)并使用

訪問(wèn)不同包中的類
import
import可以多次使用
*通配符 導(dǎo)入全部

封裝

面向?qū)ο笕筇卣髦弧?strong>封裝

封裝無(wú)處不在

封裝就是將不想或不該告訴他人的東西隱藏起來(lái),將可以告訴他人的內(nèi)容公開(kāi)( 隱藏對(duì)象的屬性和方法的細(xì)節(jié),只公開(kāi)對(duì)外接口 )

封裝的好處:
a.隱藏實(shí)現(xiàn)的細(xì)節(jié)
b.方便修改的實(shí)現(xiàn)
c.只能通過(guò)規(guī)定方法訪問(wèn)

權(quán)限


訪問(wèn)修飾符:
private 私有的 ,不對(duì)外公開(kāi) 最小權(quán)限
default 默認(rèn)的 不使用訪問(wèn)修飾符時(shí)
public 公共的 所以的類都能訪問(wèn)
protected 受保護(hù)的

靜態(tài) static

static在初次加載時(shí)被實(shí)例化,至始至終只有一個(gè)對(duì)象

a.屬性
類的屬性
適用范圍:靜態(tài)方法和非靜態(tài)方法都可以調(diào)用
訪問(wèn)修飾符 static 數(shù)據(jù)類型 變量名=值;

public static String context=“hello”

b.方法
類的方法
適用范圍:靜態(tài)方法和非靜態(tài)方法都可以調(diào)用
在靜態(tài)方法中,只能調(diào)用靜態(tài)屬性和靜態(tài)方法
訪問(wèn)修飾符 static 返回值類型 方法名(參數(shù)列表){ 方法體 }

public static void fun(){ syso}

c.代碼塊
初始化static修飾的變量

static{             }

單例模式

讓類只有一個(gè)實(shí)例對(duì)象
a.私有化構(gòu)造函數(shù)
b.提供私有類的靜態(tài)屬性
c.提供靜態(tài)方法返回實(shí)例對(duì)象
i.判斷是否實(shí)例化過(guò)對(duì)象

取的單例對(duì)象:
類名.返回實(shí)例的靜態(tài)方法

對(duì)象數(shù)組

實(shí)例化對(duì)象數(shù)組

Cat[] cats = new Cat[10];

向數(shù)組內(nèi)填充對(duì)象

數(shù)組名[ 索引 ]=對(duì)象名;//此對(duì)象名應(yīng)提前實(shí)例化數(shù)組名[ 索引]=new  數(shù)據(jù)類型();cats[0]=cat;cats[1]=tom;數(shù)據(jù)類型[]  數(shù)組名 = new  數(shù)據(jù)類型[長(zhǎng)度]

操作數(shù)組內(nèi)的對(duì)象

數(shù)組名[ 索引].屬性;數(shù)組名[ 索引].方法名

繼承

關(guān)系傳遞 ,體現(xiàn)類之間的層次結(jié)構(gòu)
object 所有類的父類

特點(diǎn):
a.單繼承,一個(gè)類只能有一個(gè)父類
b.一個(gè)類可以被多個(gè)類繼承
c.可以有多層繼承,A被B繼承,B被C繼承
d.子類繼承父類所有的成員變量和成員方法。(除private外)
e.子類可以繼承父類的方法,并且可以重寫(xiě)父親的方法
f.父類構(gòu)造函數(shù)不能被繼承。可以使用super調(diào)用父親的構(gòu)造函數(shù)
g.如果子類的構(gòu)造方法中沒(méi)有顯示地調(diào)用父類構(gòu)造方法,也有用this關(guān)鍵字,則在產(chǎn)生子類的實(shí)例對(duì)象時(shí),系統(tǒng)默認(rèn)調(diào)用父類無(wú)參數(shù)的構(gòu)造方法

super()父類對(duì)象
this()本類(當(dāng)前)對(duì)像

重寫(xiě):
重寫(xiě)父類方法
@Override
1.在子類中
2.方法名,參數(shù)列表,返回值類型相同
3.訪問(wèn)修飾符不能比父類更嚴(yán)格,即子類方法的
訪問(wèn)修飾符要大于等于父類的訪問(wèn)修飾符

抽象類

不具體的類
主要用于做父類
如動(dòng)物類 蔬菜類 水果類
abstract定義抽象類

public abstract class 類名{ }

抽象類不能被實(shí)例化
允許(但不要求)抽象類包含抽象成員
含有抽象方法的類稱為抽象類
抽象方法必須在子類中被實(shí)現(xiàn),子類是抽象類除外

抽象方法

不具體的方法
用于被子類實(shí)現(xiàn),子類完成方法體

訪問(wèn)修飾符 abstract 返回值類型  方法名(參數(shù)列表);

final

final 修飾

  1. 變量 或常量

    訪問(wèn)修飾符 final 數(shù)據(jù)類型 變量名=值;

2.方法 不能被重寫(xiě)的方法

訪問(wèn)修飾符  final 返回值類型  方法名(參數(shù)列表){ };
  1. 類 不能被繼承的類

    訪問(wèn)修飾符 final class 類名{ };

接口

接口 interface
完全抽象
接口內(nèi):靜態(tài)常量 和 抽象方法
常量默認(rèn)有 public static final
方法默認(rèn)有 public abstract

接口是一種規(guī)范、約定
遵循抽象類所有原則
一個(gè)類可以實(shí)現(xiàn)多個(gè)接口
接口沒(méi)有構(gòu)造函數(shù)

實(shí)際對(duì)象要看new的是什么
使用父類作為引用 實(shí)例化子類對(duì)象
父類引用但只引用到子類繼承父類的成員

instanceof
判讀對(duì)象是否是什么類型
對(duì)象名 instanceof 類型
返回 ture 或 false

使用接口引用實(shí)例對(duì)象
能引用到的是該類實(shí)現(xiàn)接口的方法

接口:
設(shè)計(jì)
規(guī)范
約定
擴(kuò)展
能力

接口可以作為參數(shù),也可以作為屬性,還可以被類直接調(diào)用

簡(jiǎn)單工廠模式:
1.構(gòu)建父類對(duì)象
2.子類繼承父類
3.創(chuàng)建工廠類,提供實(shí)例化對(duì)象的方法.

異常處理

try{
}catch(異常類型 e){
}
2.
try{
}catch(異常類型 e){
}catch(異常類型 e){
}catch(異常類型 e){
}catch(異常類型 e){
}
catch的順序要先子類后父類

try{
}finally{
}
4.
try{
}catch{
}finally{
}
5.
try{
}catch{
}catch{
}

finally{
}
finally無(wú)論是否有異常,無(wú)論是否處理,finally都要執(zhí)行 (system。exit(0)時(shí)不執(zhí)行)

throw 拋出異常
throws在方法中聲明異常

工具類

object是所有類的父類

equals主要比較的是內(nèi)容
==比的是對(duì)象的地址

值類型與引用類型的轉(zhuǎn)換
裝箱和拆箱 消耗性能

int t=5;
//裝箱是將值類型轉(zhuǎn)換成引用類型
引用類型 =值類型
integer tt=t;

//拆箱是將引用類型轉(zhuǎn)換成值類型
值類型=(值類型)引用類型
int i=(int) tt

集合

長(zhǎng)度固定 隊(duì)形連續(xù)
集合
長(zhǎng)度可變 隊(duì)形多樣

set接口
無(wú)序 - 是指元素存入順序和集合內(nèi)存儲(chǔ)的順序不同
無(wú)重復(fù) - 兩個(gè)對(duì)象e1和e2,如果e1.equals(e2)返回true,則認(rèn)為e1和e2重復(fù),在set中只保留一個(gè)

arraylist用于常查少改
linkedlist用于常改少查

文件與流


動(dòng)
數(shù)據(jù)的流動(dòng)
數(shù)據(jù)傳輸?shù)倪^(guò)程,有開(kāi)始有結(jié)束

字節(jié) byte
1byte=8位
計(jì)算機(jī)的存儲(chǔ)單位

字符
文字表達(dá)的內(nèi)容

除文本文件外,其他文件均勻標(biāo)準(zhǔn)單位(字節(jié))去輸入輸出讀取

序列化
保存對(duì)象的瞬時(shí)狀態(tài)
反序列化
就是把對(duì)象取出來(lái)


1個(gè)進(jìn)程 可以包含一個(gè)或多個(gè)線程,其中必須要有一個(gè)主線程。

繼承式適用于多個(gè)對(duì)象,每個(gè)都是獨(dú)立線程
接口式適用于一個(gè)對(duì)象,多個(gè)線程同時(shí)操作

這里只是把平時(shí)上課的一些筆記轉(zhuǎn)移了上來(lái),并不夠細(xì)致,還需要更多的總結(jié)與學(xué)習(xí)

來(lái)源:https://www.icode9.com/content-1-435201.html
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Java基礎(chǔ)知識(shí)總結(jié)(超詳細(xì)整理)
c#基礎(chǔ)知識(shí)題庫(kù)
java基礎(chǔ)
我把Java基礎(chǔ)編程及思維導(dǎo)圖整理的超級(jí)詳細(xì),小白都能看懂
C#基礎(chǔ)(1)
Java基礎(chǔ)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服