摘要:是完全面向對象的語言,對象具有狀態行為和標識。類一一是具有共同特征和行為的一類事物的統稱。受保護的,對同一包內的類和所有子類可見。一種通用的內存池,用于存放所有對象。類級變量又稱全局級變量或靜態變量,需要使用關鍵字修飾。
java語言的基本特點
java語言是面向對象的高級程序設計語言,它是編譯型的語言,Java語言不使用指針,并提供了自動的垃圾回收機制,使得程序員不必為內存管理而擔憂。java語言支持多線程,使得Java程序能夠并行處理多項任務。java還具有動態性、類庫豐富、高性能等特點
強類型語言java不像js那樣,Java語言是強類型語言,而且每種類型都要求嚴格定義。首先,每個變量、表達式都有類型。其次,所有的數值傳遞,不管是直接的、還是通過方法調用經由參數傳遞,都要進行類型相容性檢查。高效解釋執行
Java為了實現“一次編譯,隨處運行”的目標,Java 的源程序在編譯時,并不直接編譯成特定的機器語言程序,而是編譯成與系統無關的“字節碼(Byte codes)”,由Java 虛擬機(Java Virtual Machine,JVM )來執行面向對象思想
Java由四方面組成:Java編程語言、Java類文件格式、Java虛擬機和Java應用程序接口(Java API)。
java是完全面向對象的語言,對象具有狀態、行為和標識。這意味著每一個對象都可以擁有內部數據和方法。每一個對象在內存中都有一個唯一的地址。
每個對象都有一個接口,程序在執行期間具有不同的狀態而其他方面都相似的對象會被分組到對象的類中,這就是關鍵字class的由來。事實上所有的面向對象程序設計語言都使用class這個關鍵詞來表示數據類型。當看到類型一詞時,可將其作為類來考慮,反之亦然。
類描述了具有相同特性和行為(功能)的對象集合,所以一個類實際上就是一個數據類型,例如所有的浮點型數字具有相同的特性和行為集合。
JAVA里的類 就好比一個澆注的模具,模具里有怎么制造成品的一些方法 、一個大體的套路。 但是并沒有創造任何對象,而在創建對象的時候 應用到Java的類 這樣才把模具實體化 創建出一個成品。
類的特點:類:一一是具有共同特征和行為的一類事物的統稱。是對對象的描述,是創建對象的"模板"
類是對象的類型 具有相同屬性和方法的一組對象的集合
類型,指由各特殊的事物或現象抽出來的共通點;
對象的特點對象是具有類 類型的變量。類是對象的抽象,而對象是類的具體實例。類是抽象的,不占用內存,而對象是具體的,占用存儲空間。基本語法
Java語言八種基本數據類型,整數類(byte、short、int、long),文本類(char),浮點類(double,float)和邏輯類(boolean)
編寫Java程序時,應注意以下幾點:
1.java和js一樣,都是對大小寫敏感的 2.類名:類名首字母要大寫,如果由單詞組成,那么每個單詞的首字母也要大寫 3.方法名:方法名采用駝峰命名格式。 4.源文件名:保存的源文件名必須和類名相同 5.主方法入口:所有的`Java` 程序由`public static void main(String args[])`方法開始執行。 6.標識符:所有的標識符都應該以字母(A-Z或者a-z),美元符($)、或者下劃線(_)開始 7.修飾符:可訪問修飾符 : `default, public , protected, private`。不可訪問修飾符 : `final, abstract, strictfp` 單引號引的數據 是char類型的 雙引號引的數據 是String類型的 單引號只能引一個字符 而雙引號可以引0個及其以上局部變量和成員變量
1.成員變量:在類中定義,用來描述對象將要有什么。成員變量又分為 實例變量 和 類變量(static靜態變量):
class One{ float x; //x為實例變量 static int y; //只要有關鍵字static,y就為類變量 }
2.局部變量:在類的方法中定義,在方法中臨時保存數據
public 返回類型 方法1(){ 變量1類型 變量1;//局部變量 } 局部變量的作用域僅限于定義他的方法 成員變量的作用域在整個類內部都是可見的訪問修飾符
Java支持四種不同的訪問權限:
修飾符 | 說明 |
---|---|
public | 共有的,對所有類可見。 |
protected | 受保護的,對同一包內的類和所有子類可見。 |
private | 私有的,在同一類內可見。 |
默認的 | 在同一包內可見。默認不使用任何修飾符。 |
注意:protected不能修飾類和接口,接口的成員變量和成員方法不能聲明為protected。另外,類和接口不能聲明為private。
import語句import語句與C語言中的 #include 有些類似,語法為:
import package1[.package2…].classname;
package 為包名,classname 為類名。例如:
import java.util.Date; // 導入 java.util 包下的 Date 類
注意:import 只能導入包所包含的類,而不能導入包。
創建對象類名 對象名 = new 類名()
通常使用new關鍵字來創建一個新對象,例如:
//訪問修飾符、class關鍵字和類名 public class Main{ //主方法入口,void:main()方法是不需要返回值的,static:表明方法是靜態的,不依賴類的對象的 public static void main(String[] args) {//String[] args:定義了一個字符串數組參數 //創建對象,對象名為test Main test = new Main(); } }
程序運行時,對象有五個不同的地方可以存儲數據:
1):寄存器。這是最快的存儲區 2):堆棧。位于通用RAM中,但通過堆棧指針可以從處理器那里獲得直接支持。指針若向下移動,則分配新的內存;若向上移動,則釋放那些內存。這是一種快速有效的分配存儲方法,僅次于寄存器 3):堆。一種通用的內存池,用于存放所有java對象。堆不同于堆棧的好處是編譯器不需要知道存儲的數據在堆里存活多長時間。
其余兩種不做介紹。詳情請見:Thinking in java
System.out.print(" ");向控制臺輸出" "里面的內容后不換行 System.out.println(" ");向控制臺輸出" "里面的內容后換行;操作數組
數組是一個簡單的線性序列,數組具有效率、類型和保持基本類型的能力。數組標識符其實只是一個引用,指向在堆中創建的一個真實對象,這個數組對象用以保存指向其他對象的引用。
Java 中操作數組只需要四個步驟:
1、 聲明數組語法: 數據類型[ ] 數組名; 或者 數據類型 數組名[ ];2.分配空間
簡單地說,就是指定數組中最多可存儲多少個元素
語法: 數組名 = new 數據類型 [ 數組長度 ];3、 賦值
分配空間后就可以向數組中放數據了,數組中元素都是通過下標來訪問的
4、 處理數組中數據我們可以對賦值后的數組進行操作和處理,如獲取并輸出數組中元素的值
public class Main{ public static void main(String[] args) { double list[] = {2.0,13.1,3.1,0.5,1.1}; //輸出所有數組元素 for(double element:list){//冒號:其實就是映射 System.out.println(element); } } }二維數組
1.聲明數組并分配空間
數據類型[][] 數組名 = new 數據類型[行的個數][列的個數];
或者
2.數據類型[][] 數組名;
數組名 = new 數據類型[行的個數][列的個數]
賦值
數組名[行的索引][列的索引] = 值;Arrays 類
語法: Arrays.sort(數組名);
可以使用 sort( ) 方法實現對數組的排序,只要將數組名放在 sort( ) 方法的括號中,就可以完成對該數組的排序(按升序排列)
將數組轉換為字符串
語法: Arrays.toString(數組名);
可以使用 toString() 方法將一個數組轉換成字符串,該方法按順序把多個數組元素連接在一起,多個元素之間使用逗號和空格隔開
變量的作用域在Java中,變量的作用域分為四個級別:類級、對象實例級、方法級、塊級。
類級變量又稱全局級變量或靜態變量,需要使用static關鍵字修飾。 對象實例級變量就是成員變量,實例化后才會分配內存空間,才能訪問。 方法級變量就是在方法內部定義的變量,就是局部變量。 塊級變量就是定義在一個塊內部的變量,變量的生存周期就是這個塊,出了這個塊就消失了,比如 if、for 語句的塊。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64253.html
摘要:最近系統整理了一套初學者最佳的學習方法以及會遇到的坑等,希望對你有所幫助。正常的智商其實,學習并不需要所謂的數學邏輯好,需要英語水平棒。大周期每天學習時間五個小時以上的,建議學習周期。三學習時會遇到的坑不知道學習的重點,下面學習路線會畫。 最近系統整理了一套java初學者最佳的學習方法以及會遇到的坑等,希望對你有所幫助。 目錄: 一、學習java的前提 二、學習java的方法 三、學習...
摘要:而面向搜索引擎,就是我們要及時的使用百度谷歌遇到問題無法解決,先別急著放棄,可以去網絡尋找答案,你的坑大部分別人都已經走過了,大部分都可以找到合適的解決方案。 showImg(https://segmentfault.com/img/remote/1460000019236352?w=866&h=456); 前言: ●眾多的語言,到底哪一門才是適合我的?●我們為什么要學習Java語言呢...
摘要:請回復這個帖子并注明組織個人信息來申請加入。權限分配靈活,能者居之。數量超過個,在所有組織中排名前。網站日超過,排名的峰值為。導航歸檔社區自媒體平臺微博知乎專欄公眾號博客園簡書合作侵權,請聯系請抄送一份到贊助我們 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=...
摘要:請回復這個帖子并注明組織個人信息來申請加入。版筆記等到中文字幕翻譯完畢后再整理。數量超過個,在所有組織中排名前。網站日超過,排名的峰值為。主頁歸檔社區自媒體平臺微博知乎專欄公眾號博客園簡書合作侵權,請聯系請抄送一份到贊助我們 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1...
摘要:只因技術種類繁雜眾多層出不窮,程序員只有靠不斷的學習才能不落后于技術,被工作淘汰。特此推薦給大家。 99%的程序員每天都是先學習,后工作,不然完成不了工作。只因技術種類繁雜眾多、層出不窮,程序員只有靠不斷的學習才能不落后于技術,被工作淘汰。我就是這其中一員,深得體會其中的「疼并快樂」,在...
摘要:我的學習筆記匯總標簽筆記分為兩大部分和筆記內容主要是對一些基礎特性和編程細節進行總結整理,適合了解基礎語法,想進一步深入學習的人如果覺得不錯,請給,這也是對我的鼓勵,有什么意見歡迎留言反饋目錄基礎鞏固筆記反射基礎鞏固筆記泛型基礎鞏 我的java&javaweb學習筆記(匯總) 標簽: java [TOC] 筆記分為兩大部分:javase和javaweb javase javawe...
閱讀 2953·2021-11-23 09:51
閱讀 1006·2021-09-26 09:55
閱讀 3935·2021-09-22 14:58
閱讀 1468·2021-09-08 09:35
閱讀 1078·2021-08-26 14:16
閱讀 882·2019-08-23 18:17
閱讀 2054·2019-08-23 16:45
閱讀 700·2019-08-23 15:55