• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • javase_0_Java簡介

     

     

    1 平時工作中,同樣工作8小時,高手效率和認識深度要比一般人高很多,

      原因: a) 學習習慣好  b) 基礎好  c) 學習方法

     

     a) 學習習慣好:

    官網,API文檔是學習新東西的入門神器,同時百度(google在國內打不開了)是深入學習的最佳獲取源

     

    b) 基礎好:

    數據結構,編譯原理,某一門語言的深入理解(可以觸類旁通的快速學習別的語言和框架),

    常用算法(http://www.kaikeba.com/)  還有E文

    這些都是慢功夫,需要持續追加精力來學習,沒有一蹴而就的事

     

     c)學習方法:

    1 RSS收集器來訂閱博客   2 InfoQ國內外同步最新技術    iteye c博客等技術論壇 

    3 付費/免費視頻  4 動手 寫文章 在動手 在寫文章總結

     

     

     

    關于架構設計:

    這個框架是什么東西
      有哪些特點
      適用于哪些業務場景
      框架之間的搭配
      腦子中有一套設計架構,不合適時知道去改哪里

     

    2 學習語言,精通一門,eg: 精通Java內存模型,在看別的語言內存,基本是一樣的,好比學會了捷達,切換到

    愛麗舍,是不需要很大磨合的。

     

    3 計算機語言發展史:


     



     

     

    4 SUN和Java發展:

     

    SUN: Stanford University Netword,

    斯坦福大學和硅谷,Google,Facebook等有著千絲萬縷的聯系,

    SUN公司也開發了Java這套語言(SUN后來被Oracle收購),最開始這套語言是作為SUN公司的一個Green項目

    Green項目的應用環境:像電視盒子這樣的消費電子產品,需要一套語言中立,跨平臺使用,

    JAVA 之父是 James Gosling

    后來基于Java的后續發展,同時遇到了1998互聯網爆發式發展(互聯網的發展是指數級別, 傳統行業發展是百分比一點點增長),互聯下需要一個中立跨平臺都能解釋運行的一門語言,因此Java大賣。

    由此可見, 成功是需要提前準備和機遇的。

     

    5 Java各種爹:

     



     

    6 java 版本體系:


     

    7 JVM簡介:

     



     
     8 Java注釋和編譯運行:

     

    Java代碼中的注釋信息在編譯時會被清理掉,編譯后的字節碼文件沒有任何注釋。

     

    9 為何國際通用unicode字符集:

    一個Unicode字符集占2個字節,

    即 2的16次方= 256*256 = 65536,

    英文24個字母,漢字2W多個漢字,這6W多的范圍足夠表示世界上所有的字符,因此使用占2個字節長度的

    Unicode編碼作為國際通用標準。

     

     

     

     

    9 為何Java是強數據類型:

     

    Java應用范圍很廣,從服務器到個人PC到手持設備,有的對內存要求寬泛有的則苛刻,

    定義成強類型是為了便于開發人員在不同環境下做選擇。

     

    10 浮點數并不能精確的表示小數,是有舍入誤差的,盡量避免比較中使用浮點數, 如果需要進行

    不產生誤差的精確數字計算,需要使用 BigDecimal,  而如果針對大數據整型做比較要用BigInteger

     

     

    11  向上轉型時, 指的是表述的范圍的向上,而不是字節長度向上

     



     

    13  生成Javadoc做法:

     

    1 代碼中需要用 /** 方式注釋  2 使用參數@param @return等參數

    2

    工程右鍵/ 如下圖,一路next即可生成 當前工程對應javadoc的html格式說明文檔:

     

     

     

     

    14 為何靜態方法 不能使用非靜態變量:

    1 靜態方法放在內存方法區
    2 非靜態變量(類變量)只有在new出來后 放在堆內存中
    這兩者不在同一區域中,夠不到,因此訪問不了

     

     

     

     15 面向對象編程的本質:
    以類的方式組織代碼,以對象方式封裝數據。


    面向對象和面向過程:
    老蔣和老毛思維,  一個面向過程,后者面向對象,面向對象下,后期整合非常方便,
    面向過程下,老蔣總是坐著飛機飛來飛去指導每一步驟

     

     

    16 java 單繼承:

    單繼承利于構建繼承樹, 分析類之間關系, 維護類之間關系。
    國企和公務員就是多繼承關系,領導有好幾個
    外企就是單繼承關系。 比爾蓋茨是沒權利指揮不是自己直屬手下人干活,比如掃地工,也沒有權利開除 
    部隊也是單繼承關系。

     

     

    17 this, super參數:

    this, super參數:
    1 只會出現在非靜態方法中
    2 在非靜態方法的形參中會默認含有次參數,隱形參數
    public void study(this,super) { // 這個this指向 new出對象的內存地址, super也是隱形參數 被默認傳遞 
     this.name = name;
    }

     

     

     

     

     

     

    this使用案例2: 如何辨別調用方法是子類自己還是父類:

    public class HttpServlet {
    
    	public void service(){
    		System.out.println("HttpServlet service()");
    		 doGet();
    	}
    	
    	public void doGet(){
    		System.out.println("HttpServlet doGet()");
    	}
    }
    
    
    
    
    
    public class MyServlet extends HttpServlet {
    
    
    	
    	public void doGet(){
    		System.out.println("MyServlet doGet()");
    	}
    	
    	public static void main(String[] args) {
    		
    		HttpServlet servlet = new MyServlet();
    		/**
    		 * 在調用時, 都會帶隱含形參(this, super), 執行下面方法時,進入到父類方法
    		 * public void service(this,super){
    		System.out.println("HttpServlet service()");
    		 doGet(); ----> this.doGet();
    		 因為這里的this是new MyServlet() 因此最后調用方法為 MyServlet的doGet()
    	}
    		 */
    		servlet.service();
    		
    	}
    }
    

     

     

     



     18 三大特性:

    繼承: is a   has a 方式來區別于 組合
    封裝: public protected default private 實現訪問權限的限制
    多態: 相當于現實生活中的 說一套 做另一套,比如美國對于釣魚島問題,含糊,真正出事時該幫日本還是幫日本; 多態僅僅是方法多態

     

     

     

    版權聲明:本文為iteye_3893原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/iteye_3893/article/details/82611101

    智能推薦

    JAVASE—java集合框架

    一個集合(Collection)就是一個存儲一組對象的容器,我們將這些對象稱之為元素。Java支持三種類型的集合:規則集(Set)、線性表(List)和圖(Map)。Set的實例存儲一組互不相同的元素,List的實例存儲一組順序排列的元素,Map實例存儲一組對象。Java集合框架的結構如下圖所示: Java集合的設計使用了接口、抽象類和具體類。接口定義了架構,抽象類提供了接口一部分功能的實現,具體...

    JavaSE—Java語言概述

    JAVA語言概述 目錄 JAVA語言概述 1. Java歷史 2. Java語言最主要的特點 3.Windows操作系統常用的DOS命令 4. Java環境搭建 4.1JDK、JRE、JVM介紹 4.2Java環境搭建 5. 第一個Java應用程序 5.1 Java程序的開發步驟 6. Java注釋 7. 編寫Java程序時應該注意的問題 1. Java歷史 Java誕生于SUN(Stanford...

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!

    Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...

    猜你喜歡

    requests實現全自動PPT模板

    http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...

    Linux C系統編程-線程互斥鎖(四)

    互斥鎖 互斥鎖也是屬于線程之間處理同步互斥方式,有上鎖/解鎖兩種狀態。 互斥鎖函數接口 1)初始化互斥鎖 pthread_mutex_init() man 3 pthread_mutex_init (找不到的情況下首先 sudo apt-get install glibc-doc sudo apt-get install manpages-posix-dev) 動態初始化 int pthread_...

    統計學習方法 - 樸素貝葉斯

    引入問題:一機器在良好狀態生產合格產品幾率是 90%,在故障狀態生產合格產品幾率是 30%,機器良好的概率是 75%。若一日第一件產品是合格品,那么此日機器良好的概率是多少。 貝葉斯模型 生成模型與判別模型 判別模型,即要判斷這個東西到底是哪一類,也就是要求y,那就用給定的x去預測。 生成模型,是要生成一個模型,那就是誰根據什么生成了模型,誰就是類別y,根據的內容就是x 以上述例子,判斷一個生產出...

    styled-components —— React 中的 CSS 最佳實踐

    https://zhuanlan.zhihu.com/p/29344146 Styled-components 是目前 React 樣式方案中最受關注的一種,它既具備了 css-in-js 的模塊化與參數化優點,又完全使用CSS的書寫習慣,不會引起額外的學習成本。本文是 styled-components 作者之一 Max Stoiber 所寫,首先總結了前端組件化樣式中的最佳實踐原則,然后在此基...

    精品国产乱码久久久久久蜜桃不卡