java基礎 java面試 java學習節點(1)

java基礎:

1. 8大基本類型
    byte,char,short,int,long,float,double,boolean

類型                      長度                                     範圍           
byte(字節)                8                                     128 - 127                                      
shot(短整型)              16                                 -32768 - 32768                                    
int(整型)                 32                            -2147483648 - 2147483648            
long(長整型)              64                   -9233372036854477808 - 9233372036854477808                          
float(浮點型)             32                                 -2^128 ~ +2^128
double(雙精度)            64                                -2^1024 ~ +2^1024
char(字符型)              16                                    -128~127         
boolean(布爾型)           1                                    true/false                                  

2. 常量

   java常量:指在首次賦值之後該值不能再發生改變

例子:
    /**
	 * double 類型常量
	 */
	private static final double dou = 120.00;
	
	/**
	 * double 類型常量
	 */
	private static final boolean bol = true;
	
	/**
	 * String 類型常量
	 */
	private static final String hellow = "hellow";
三個例子說明常量如果賦值一次之後再次賦值會發生編譯錯誤

 3.企業級命名規範和必要註釋

   注意點一:在開發過程中命名規則必須按照團隊的開發命名走注意統一

   注意點二:開發中不可使用(shangpin,dianqi,productdingdan)這樣的變量或者類名出現(拼音或者拼音加英語)

   注意點三:在不確定命名規則時按照阿里命名規則走絕對沒有錯

4.Java運算符

   

一元運算符

  

算數運算符

移位運算符

關係運算符 

5.循環 判斷語句(if企業級項目一般有很多地方使用到)

boolean isBoolean = true;
        for (int i = 0; i < 5; i++) {
            if (isBoolean){
                System.out.println(isBoolean);
            }else {
                System.out.println(isBoolean);
            }
        }

6.java虛擬機的內存劃分

   java程序運行過程: 
首先Java源代碼文件(.java後綴)會被Java編譯器編譯爲字節碼文件(.class後綴),然後由JVM中的類加載器加載各個類的字節碼文件,加載完畢之後,交由JVM執行引擎執行。在整個程序執行過程中,JVM會用一段空間來存儲程序執行期間需要用到的數據和相關信息,這段空間一般被稱作爲Runtime Data Area(運行時數據區),也就是我們常說的JVM內存。

因此,在Java中我們常常說到的內存管理就是針對這段空間進行管理(如何分配和回收內存空間)。

java虛擬機管理的內存包括幾個運行時數據內存:堆、方法區、虛擬機棧、本地方法棧、程序計數器,其中方法區和堆是由線程共享的數據區,其他幾個都是線程隔離的數據區。 

 7.面向對象

    謹記一個原則:萬物皆對象

    繼承,封裝,多態,抽象

8.String類、static關鍵字、Arrays類、Math類

  8.1.String類

  概述 :java中所有的字符串文字都可以被看做是實現此類的實例

  特點:

  1. 字符串不變: 字符串的值在創建後不能被更改
  2. String對象是不可變的,所以可以被共享
  3. "abc"等效於char[] data = {‘a’,‘aa’,aaa’} 

 常用方法:

   判斷功能的方法
      public boolean equals (Object anObject): 將次字符串與指定對象比較
      public boolean equalsIgnoreCase(String anotherString)忽略大小寫
  獲取功能的方法
     public int length ():返回此字符串的長度
     public String concat(String str): 將指定的字符串拼接到字符串的末尾
     public char charAt(int index): 返回指定索引處的char值
     public int indexOf(String str): 返回指定字符串第一次出現在該字符串內的索引
     public String substring(int beginIndex): 返回子字符串,從beginindex開始截取字符串到字符串末尾
     public String substring (int beginIndex,int endIndex):從beginindex到endIndex截取字符串,左閉右開
  轉換功能的方法
     public char[] toCharArray (): 將此字符串轉化爲新的字符數組
     public byte[] getBytes ():使用默認字符集將String編碼轉換爲新的字節數組
     public String replace(CharSequence target, CharSequence replacement): 將與target匹配的字符串用replacement字符串替換

  分割功能的方法

  public String[] split(String regex): 將此字符串按照給定的regex拆分爲字符串數組

 8.2.Ststic關鍵字

    用來修飾成員變量和成員方法,被修飾的成員屬於 類(在實際的項目開發中大多數都會有一個靜態常量類   統一開發)

    靜態方法調用的注意事項:

  • 靜態方法可以直接訪問類變量和靜態方法
  • 靜態方法不能直接訪問普通成員變量和成員方法
  • 靜態方法,不能使用this關鍵字

 

  調用格式

     被static修飾的成員可以並且建議通過類名直接訪問

     靜態原理圖解

 static 修飾的內容:

  • 是隨着類的加載而加載的,且只加載一次。
  • 存儲於一塊固定的內存區域(靜態區),所以,可以直接被類名調用。
  • 它優先於對象存在,所以,可以被所有對象共享。

 

 

 靜態代碼塊

  定義在成員位置,使用static修飾的代碼塊{},隨着類的加載而執行,且執行一次,優先於main方法和構造方法的執行。

  作用:給類變量進行初始化賦值

 8.3.Arrays 類

    概述
     java.util.Arrays此類包含用來操作數組的各種方法,所有方法均爲靜態方法。

    操作數組的方法
     public static String toString(int[] a): 返回指定數組內容的字符串表示形式
     public static void sort(int[] a): 對指定的int 型數組按數字升序排序 案例:倒序打印
8.4 Math類

  概述
    基本數學運算,也是靜態方法,不用創建對象

  基本運算方法
    public static double abs(double a): 返回double的絕對值
    public static double ceil(double a): 返回大於等於參數的最小的整數
    public static double floor(double a): 返回小於等於參數最大的整數
    public static long round(double a): 返回最接近參數的long(相當於四捨五入)

        double match=-2.22;
        System.out.println(Math.abs(match));
        System.out.println(Math.ceil(match));
        System.out.println(Math.floor(match));
        System.out.println(Math.round(match));

9.super和this

  • super: 代表父類的存儲空間標識(可以理解爲父類的引用)
  • this: 代表當前對象的引用(誰調用就代表誰)

10.final關鍵字

概述

爲了避免這種隨意改寫繼承API中提供的類的內容的情況,Java提供了final 關鍵字,用於修飾不可改變內容。

  • final: 不可改變。可以用於修飾類、方法和變量。
    • 類:被修飾的類,不能被繼承。
    • 方法:被修飾的方法,不能被重寫。
    • 變量:被修飾的變量,不能被重新賦值。

 修飾類:

   查詢API發現像 public final class String 、public final class Math 、public final class Scanner 等,很多我們學習過的類,都是被final修飾的,目的就是供我們使用,而不讓我們所以改變其內容

 修飾方法:

  重寫被 final修飾的方法,編譯時就會報錯

 修飾變量

  1. 局部變量——基本類型 被final修飾後,只能賦值一次,不能再更改

  2. 局部變量——引用類型 只能指向一個對象,地址不能再更改。但是不影響對象內部的成員變量值的修改

  3. 成員變量 涉及到初始化的問題

11.權限修飾符 

   

 本節完畢  下節更新java基礎加強

 部分參考:https://blog.csdn.net/wjl31802/article/details/86510585#2_6_7

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章