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

Java知識點(diǎn)歸納總結(jié)

 更新時(shí)間:2013年05月08日 12:28:49   作者:  
本篇文章對Java的一些知識點(diǎn)進(jìn)行了歸納總結(jié)分析。需要的朋友參考下

1. 基本數(shù)據(jù)類型

整形:

byte      1 個(gè)字節(jié)

short     2 個(gè)字節(jié)

int          4個(gè)字節(jié)

long       8個(gè)字節(jié)

字符:

char     2個(gè)字節(jié)

浮點(diǎn)數(shù):

float       4個(gè)字節(jié)

double   8個(gè)字節(jié)

布爾:

boolean   1個(gè)字節(jié)

2.java 7  新增二進(jìn)制整數(shù)

以0b或者0B開頭

3.java中字符時(shí)16位的Unicode編碼方式,格式是'\uXXXX',其中xxxx代表一個(gè)十六進(jìn)制整數(shù)

4.java中規(guī)定了正無窮大、負(fù)無窮大和零

正無窮大=  一個(gè)正數(shù)除以0

負(fù)無窮大= 一個(gè)負(fù)數(shù)除以零

0.0 除以0.0  或者 對一個(gè)負(fù)數(shù)開方  得到一個(gè)非數(shù)

5. 在java中布爾類型只能是true和false

6. 在java中沒有多維數(shù)組

看似像C語言中的多維數(shù)組不是真正的數(shù)組,比如 a[3][4] , a[0] a[1] a[2]  是真實(shí)存在的,裝的是地址,和c語言中動(dòng)態(tài)分配為的數(shù)組一樣

int  [][]  b  = new  int[3][4]

7. Java中帶包的編譯方法

javac -d .  Hello.java    會(huì)在當(dāng)前目錄下生成目錄樹

運(yùn)行  java  包名字.類名字

8. Java多態(tài)中的對象的filed 不具有多態(tài)性,如  父類  對象 =  new  子類(), 對象.field  是調(diào)用的父類的,即使子類中覆蓋了該字段。

9. instanceof 運(yùn)算符

格式: 引用變量名  instanceof  類名(或者接口)  他用于判斷前面的對象是否是后面對象的類,子類、實(shí)現(xiàn)類的實(shí)例,是返回true,否者返回false

10. Java 中基本數(shù)據(jù)類型和對應(yīng)封裝類之間的轉(zhuǎn)化

      int   a  =  1;
      Integer  A  =  new Integer(a);
      a  = A.intValue();

     其他的類型也是這樣的。

11.單例(singleton)類 例子

復(fù)制代碼 代碼如下:

class Singleton
{
        private static Singleton instance;
        private Singleton(){}
        public static Singleton getInstance()
        {
                if(instance == null)
                {
                        instance = new Singleton();
                }
                return instance;
        }

        public static void main(String[] args)
        {
                Singleton s1 = Singleton.getInstance();
                Singleton s2 = Singleton.getInstance();
                System.out.println(s1 == s2);
        }
}


12.final修飾的成員變量初始化問題

類Field: 必須在靜態(tài)初始塊中或聲明該FIeld時(shí)指定初始值

實(shí)例Field:必須在非靜態(tài)初始塊中或聲明該FIeld時(shí)指定初始值或構(gòu)造器中聲明

13.Final 變量必須顯式初始化,系統(tǒng)不會(huì)對final變量進(jìn)行隱式初始化

14.java會(huì)使用常量池來管理曾經(jīng)用過的字符串直接常量,例如:String a = "java"; ,系統(tǒng)把常量字符串“java”存在常量池,當(dāng)再次執(zhí)行 String b = "java";  a == b  是true

15.final 方法不可以重寫,final類不能被繼承

    如果用private 方法 和 final private 是一樣的

    若果是用final修飾的方法在子類中出現(xiàn),那是子類新定義的,與父類沒有關(guān)系

16.不可變類:創(chuàng)建后該類的Field是不可改變的。java提供了8個(gè)基本變量的包裝類和string都是不可改變類。

17.緩存實(shí)例的不可改變類

復(fù)制代碼 代碼如下:

class CacheImmutale
{
 private static int MAX_SIZE = 10;
 private static CacheImmutale[] cache = new CacheImmutale[MAX_SIZE];
 private static int pos = 0;
 private final String name;
 private CacheImmutale(String name)
 {
  this. name = name;
 }
 public String getName()
 {
  return name;
 }
 public static CacheImmutale valueOf(String name)
 {
  for(int i = 0; i < MAX_SIZE; ++i)
  {
   if(cache[i] != null && cache[i].getName().equals(name))
    return cache[i];
  }
  if(pos == MAX_SIZE)
  {
   cache[0] = new CacheImmutale(name);
   pos = 1;
  }
  else
  {
   cache[pos++] = new CacheImmutale(name);
  }
  return cache[pos -1];
 }

 public boolean equals(Object obj)
 {
  if(this == obj)
   return true;
  if(obj != null && obj.getClass() == CacheImmutale.class)
  {
   CacheImmutale ci = (CacheImmutale)obj;
   return name.equals(ci.getName());
  }
  return false;
 }
 public int hashCode()
 {
  return name.hashCode();
 }
}

public class CacheImmuteTest
{
 public static void main(String[] args)
 {
  CacheImmutale c1 = CacheImmutale.valueOf("Hello");
  CacheImmutale c2 = CacheImmutale.valueOf("Hello");
  System.out.println(c1 == c2);
 }
}


用緩存實(shí)例要看某個(gè)對象的使用頻率,若重復(fù)使用那就利大于弊,若不經(jīng)常使用那弊就大于利

還有java提供的java.lang.Integer  創(chuàng)建數(shù)值在-128-127之間的數(shù)采用緩存機(jī)制的

Integer in2 = Integer.valueOf(6);

Integer in3= Integer.valueOf(6);

in2 == in3  is true;

18. static 和 abstract 不能同時(shí)修飾一個(gè)方法,沒有類抽象方法

19.一個(gè)類可以又一個(gè)父類,實(shí)現(xiàn)多個(gè)接口,接口中Filed是public 、static、final的,方法是public abstract的

20.非靜態(tài)內(nèi)部類的方法訪問某個(gè)變量,搜索順序?yàn)椋合葍?nèi)部類中方法內(nèi)-> 內(nèi)部類  -> 外部類中如果都找不到則出現(xiàn)編譯錯(cuò)誤

復(fù)制代碼 代碼如下:

import java.util.*;

public class DiscernVariable 
{
 private String prop = "外部類的實(shí)例變量";
 private class InClass
 {
  private String prop = "內(nèi)部類的實(shí)例變量";
  public void info()
  {
   String prop = "局部變量";
   System.out.println("外部類的field值:" + DiscernVariable.this.prop);
   System.out.println("內(nèi)部類的field值:" + this.prop);
   System.out.println("局部變量的值:" + prop);
  }
 }
 public void test()
 {
  InClass in = new InClass();
  in.info();
 }
 public static void main(String[] args)
 {
  new DiscernVariable().test();
 }
}


21.非靜態(tài)內(nèi)部類不能有靜態(tài)方法、靜態(tài)Field、靜態(tài)初始化塊

22.在外部類之外訪問內(nèi)部類

  訪問非靜態(tài)內(nèi)部類:outclass.Inclass varname = new outclass().new InClass();
  訪問靜態(tài)內(nèi)部類:  outclass.Inclass varname = new outclass.Inclass();
復(fù)制代碼 代碼如下:

import java.util.*;

class Out
{
 class In
 {
  public In()
  {
   System.out.println("非靜態(tài)內(nèi)部類構(gòu)造器");
  }
 }
}

public class CreatInnerInstance
{
 public static void main(String[] args)
 {
  Out.In in = new Out().new In();
  /*
  以上的代碼可分開寫為:
  Out.In in;
  Out out = new Out();
  in = out.new In();
  */
 }
}

class SubClass extends Out.In
{
 //顯示定義SubClass的構(gòu)造器
 public SubClass(Out out)
 {
  //通過轉(zhuǎn)入的Out對象顯示調(diào)用In的構(gòu)造器
  out.super();
 }
}


復(fù)制代碼 代碼如下:

import java.util.*;

class StaticOut
{
 static class StaticIn
 {
  public StaticIn()
  {
   System.out.println("靜態(tài)內(nèi)部類構(gòu)造器");
  }
 }
}

public class CreatStaticInnerInstance
{
 public static void main(String[] args)
 {
  StaticOut.StaticIn in = new StaticOut.StaticIn();
  /*
  以上的代碼可分開寫為:
  StaticOut.StaticIn in;
  in = new StaticOut.StaticIn();
  */
 }
}

class SubClass extends StaticOut.StaticIn
{
 //無須創(chuàng)建內(nèi)部類實(shí)例
}

相關(guān)文章

  • 全面解讀Spring Boot 中的Profile配置體系

    全面解讀Spring Boot 中的Profile配置體系

    配置體系是基于 Spring Boot 框架開發(fā)應(yīng)用程序的基礎(chǔ),而自動(dòng)配置也是該框架的核心功能之一。本文梳理Spring Boot 中的Profile配置體系的相關(guān)知識,感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • 關(guān)于MD5算法原理與常用實(shí)現(xiàn)方式

    關(guān)于MD5算法原理與常用實(shí)現(xiàn)方式

    這篇文章主要介紹了關(guān)于MD5算法原理與常用實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 解決使用gateway后靜態(tài)資源失效的問題

    解決使用gateway后靜態(tài)資源失效的問題

    這篇文章主要介紹了解決使用gateway后靜態(tài)資源失效的問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • java?常規(guī)輪詢長輪詢Long?polling實(shí)現(xiàn)示例詳解

    java?常規(guī)輪詢長輪詢Long?polling實(shí)現(xiàn)示例詳解

    這篇文章主要為大家介紹了java?常規(guī)輪詢長輪詢Long?polling實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • java并發(fā)編程工具類JUC之LinkedBlockingQueue鏈表隊(duì)列

    java并發(fā)編程工具類JUC之LinkedBlockingQueue鏈表隊(duì)列

    大家都知道LinkedBlockingQueue 隊(duì)列是BlockingQueue接口的實(shí)現(xiàn)類,所以它具有BlockingQueue接口的一切功能特點(diǎn),他還提供了兩種構(gòu)造函數(shù),本文中通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2021-06-06
  • Java字典生成算法講解

    Java字典生成算法講解

    今天小編就為大家分享一篇關(guān)于Java字典生成算法講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Java?獲取本機(jī)IP地址的實(shí)例代碼

    Java?獲取本機(jī)IP地址的實(shí)例代碼

    這篇文章主要介紹了Java?獲取本機(jī)IP地址,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Spring mvc 實(shí)現(xiàn)用戶登錄的方法(攔截器)

    Spring mvc 實(shí)現(xiàn)用戶登錄的方法(攔截器)

    這篇文章主要介紹了Spring mvc 實(shí)現(xiàn)用戶登錄的方法(攔截器),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-07-07
  • springboot泛型封裝開發(fā)方式

    springboot泛型封裝開發(fā)方式

    這篇文章主要介紹了springboot泛型封裝開發(fā)方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 解決SpringBoot框架因post數(shù)據(jù)量過大沒反應(yīng)問題(踩坑)

    解決SpringBoot框架因post數(shù)據(jù)量過大沒反應(yīng)問題(踩坑)

    這篇文章主要介紹了解決SpringBoot框架因post數(shù)據(jù)量過大沒反應(yīng)問題(踩坑),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09

最新評論