Java 基礎(chǔ)學(xué)習(xí)大綱

一. 基礎(chǔ)知識(shí)
  1. JDK 的安裝和 PATH 配置
  2. JDK 中最常用的的兩個(gè)命令 javacjava 的基本使用和常用參數(shù)用途(比如:-classpath,-encoding)
  3. 基本語(yǔ)法的了解與使用:數(shù)據(jù)類型(int,long,float,double,boolean,byte,char,short),數(shù)組,方法定義,類定義,流程控制, 的用途
二. 面向?qū)ο?/h5>
  1. 熟悉 ,抽象類,接口 的作用與使用
  2. 掌握 繼承封裝多態(tài) 三個(gè)概念
  3. private,default,public,protected 幾個(gè)關(guān)鍵字的用途

練習(xí):
了解 策略模式,實(shí)現(xiàn)以下功能:

  1. 定義接口 Calculator,它包含一個(gè)方法 double calculate(double[] nums)
  2. 定義類 SumCalculator,實(shí)現(xiàn) Calculator 接口,calculate 方法實(shí)現(xiàn)為 求數(shù)組的和;定義 AverageCalculator 類,實(shí)現(xiàn) Calculator 接口,實(shí)現(xiàn)方法為 求數(shù)組的平均值;定義 VarianceCalculator 類,實(shí)現(xiàn) Calculator 接口,實(shí)現(xiàn)方法為 求數(shù)組的方差
  3. 定義 Main 類,包含 static Calculator getCalculator(char c)main 方法。在 main 方法中,通過(guò) Scanner 類從控制臺(tái)獲得輸入。每次輸入包括 n(數(shù)組長(zhǎng)度),n 個(gè)數(shù)(數(shù)組內(nèi)容),c(操作,可以有 's','a' 和 'v',分別表示求和,求平均值,求方差);getCalculator(char c) 方法通過(guò)輸入的操作返回對(duì)應(yīng)的 Calculator,在 main 方法中使用返回的 Calculator 計(jì)算對(duì)應(yīng)的結(jié)果。例如:
10 // n
1 2 3 4 5 6 7 8 9 10 // n 個(gè)數(shù)
s  // 操作
55 // 輸出
三. 熟悉最常用的基礎(chǔ)類
  1. Object,以及在 Object 中定義的每個(gè)方法的用途
  2. System.out 類,print、println 和 printf 三個(gè)方法的使用
  3. String,StringBuilder,了解 String 類和 StringBuilder 的區(qū)別
  4. Arrays 類(操作數(shù)組的工具類,提供了各種數(shù)組相關(guān)的操作)
  5. Comparable 和 Comparator,如何使用這兩個(gè)接口配合 Arrays 工具類在 Java 中對(duì)數(shù)組排序
  6. Scanner 類,如何使用 Scanner 從控制臺(tái)進(jìn)行輸入
四. 集合與泛型
  1. 掌握什么是泛型和在 Java 中如何實(shí)現(xiàn)泛型,明白 “擦除法泛型” 的實(shí)現(xiàn)原理。
  2. 熟悉基本的集合類的用途和用法,以及它們之間的關(guān)系。基本集合類包括 Iterable,Iterator,Collection 以及:
接口 List Queue Map Set
實(shí)現(xiàn)類 ArrayList ArrayDeque HashMap HashSet
實(shí)現(xiàn)類 LinkedList PriorityQueue LinkedHashMap LinkedHashSet
  1. 熟悉工具類 Collections 的各個(gè)方法,例如 sort,binarySearch,reverse,shuffle 等等。
五. 異常
  1. 掌握受檢(Checked)異常 和 非受檢(Unchecked)異常
  2. 掌握如何捕獲異常,拋出異常,包裝受檢異常為非受檢異常以及自定義異常
六. 文件與 IO

掌握 裝飾者模式 的概念和基本輸入輸出流類的使用方法:

基本輸入流相關(guān)類 基本輸出流相關(guān)類
InputStream OutputStream
FileInputStream FileOutputStream
DataInputStream DataOutputSteam
BufferedInputStream BufferedOutputStream
Reader Writer
InputStreamReader OutputStreamWriter
BufferedReader BufferedWriter
Scanner PrintWriter
  1. 如何使用 Scanner 類從控制臺(tái)輸入,如何輸出 int,如何輸入 double,如何輸入 String
  2. File 類的作用和使用方法,使用 File 類獲得文件的各種信息;使用 File 類分別深度優(yōu)先和廣度優(yōu)先遍歷一個(gè)文件夾
  3. 字節(jié)流(InputStream,OutputStream)和字符流(Reader,Writer)的區(qū)別
  4. 使用 FileInputStream 和 FileOutputStream 復(fù)制文件,使用 BufferedInputStream 和 BufferedOutputStream 復(fù)制文件,并對(duì)比二者的效率
  5. 掌握 RandomAccessFile 的使用
七. 網(wǎng)絡(luò)
  1. 掌握 InetAddress,SocketAddress,Socket 和 ServerSocket 的用途及使用方法(TCP ),實(shí)現(xiàn)在局域網(wǎng)內(nèi)通信(發(fā)送消息和文件)
  2. 掌握 URL 和 HttpURLConnection的用途及用法(HTTP),實(shí)現(xiàn)從互聯(lián)網(wǎng)下載某個(gè)指定網(wǎng)址的資源(比如某張互聯(lián)網(wǎng)上的圖片)
  3. DatagramSocket,DatagramPacket 和 MulticastSocket 的用途及用法(UDP),實(shí)現(xiàn)局域網(wǎng)內(nèi)的廣播和多播通信
八. 多線程
  1. 熟悉 Thread 和 Runnable 的用途及用法;如何停止(interrupt)一個(gè)線程;同步關(guān)鍵字 synchronized 的用途。
    (1)使用 Thread 和 Runnable,結(jié)合 RandomAccessFile 并行的從網(wǎng)絡(luò)上下載文件
    (2)使用 wait 和 notify(notifyAll),結(jié)合 synchronized 關(guān)鍵字,實(shí)現(xiàn)生產(chǎn)者消費(fèi)者模式。
  2. 熟悉 Callable,F(xiàn)uture,F(xiàn)utureTask 的用途及用法,并行的計(jì)算 1~n 的乘積
  3. 熟悉常用的并發(fā)工具類的使用,包括 CountDownLatch(倒計(jì)數(shù)門閂),BlockingQueue(阻塞隊(duì)列),Semaphore(信號(hào)量)
  4. 熟悉線程池概念和基本使用,相關(guān)類有 ExecutorService,ThreadPoolExecutor,ScheduledExecutorService,ScheduledThreadPoolExecutor,Executors,F(xiàn)orkJoinPool
九. JDBC(Java Database Connection)
  1. 如何獲得一個(gè) Connection(數(shù)據(jù)庫(kù)連接)
  2. 使用 Statement 對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的 增刪改查
  3. 使用 PreparedStatement 對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的 增刪改查
  4. 添加一條新的數(shù)據(jù)后,如何獲得該條數(shù)據(jù)的主鍵
  5. 了解數(shù)據(jù)庫(kù)連接池的概念與相關(guān)庫(kù)(c3p0,DBCP)
十. 反射
  1. 熟悉 Class 類對(duì)應(yīng)的方法,如何使用 Class 獲得一個(gè)類有哪些屬性(Field),有哪些方法(Method),有哪些注解(Annotation)
  2. 掌握如何使用反射來(lái)創(chuàng)建對(duì)象,并調(diào)用該對(duì)象的方法
  3. 掌握 JDK 中的代理模式的使用,了解 AOP(Aspect Oriented Programming,面向切面編程) 的概念
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 34,628評(píng)論 18 399
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,816評(píng)論 25 709
  • (一)Java部分 1、列舉出JAVA中6個(gè)比較常用的包【天威誠(chéng)信面試題】 【參考答案】 java.lang;ja...
    獨(dú)云閱讀 7,241評(píng)論 0 62
  • 深夜,坐在宿舍里看考試的書,舍友開著外放和男朋友你一句我一句的聊著,分手邊緣的對(duì)話,卻因彼此找不到更好的而繼續(xù)維持...
    夢(mèng)淵閱讀 427評(píng)論 2 2
  • 你看,豆豆不見了,只見幾條突起的地平線……
    蘭草心子閱讀 495評(píng)論 0 0

友情鏈接更多精彩內(nèi)容