栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础编程

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础编程

编程入门
  1. 冯·诺依曼体系结构

  2. 计算机包括硬件(hardware)和软件(software)两部分

    1. 硬件:CPU、内存、硬盘、通信设备、输入和输出设备

      ​ 比特(bit) 和字节(byte):比特(bit),是计算机中最小的存储单位。但最基本的存储单元是字节。每个字节由8个比特构成。

    2. 软件:BOOT》操作系统》应用软件&其它

      ​ 操作系统(Operating System)是计算机上的最重要的程序,可以管理和控制计算机的活动。

      ​ 人机交互方式:图形化界面(GUI)、 命令行方式(CLI)

    3. 计算机语言:POP》OOP》高级编程

      机器语言》汇编语言》高级语言:面向过程的语言》面向对象》Java

  3. 万维网Web《因特网Internet《互联网

第1章_Java语言概述
  1. Java历史》Java 基础知识图解

  2. 运行机制及运行过程:编码》javac编译》java解释执行(跨平台)

  3. 核心机制:

    1. JVM制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
    2. 垃圾回收
  4. Java语言的环境搭建

    1. JDK 、JRE 、JVM 关系

      • JDK = JRE + 开发工具集(例如Javac编译工具等)
      • JRE = JVM + Java SE标准类库

  5. HelloWorld》文档 注释》Java API文档

第2章_基本语法 变量
  1. 变量是程序中最基本的存储单元。包含变量类型、变量名和存储的值
  2. 自动类型转换:byte,short,char之间不会相互转换,他们三者在计算时首先转换为int类型。
  3. 强制类型转换:可能造成精度降低或溢出。
  4. 字符串(String)进行连接运算时(+),基本数据类型的值将自动转化为字符串(String)类型
  5. 计算机底层都以 二进制形式存在,使用补码。但数据应用时一般用其它进制表示,易懂。
  6. 八进制(octal) :0-7 ,满8进1. 以数字0开头表示。其它进制间转化 以二进制为桥接。
运算符 流程控制 VS. C/C++ 第3章_数组
  1. 一维数组和二维数组的内存的简化结构
  2. 数据结构》算法》Arrays 工具类
第4章_面向对象编程 面向过程(POP) 与面向对象(OOP)
  1. 》例子:人把大象装进冰箱
  2. 程序员从面向过程的执行者转化成了面向对象的指挥者
面向对象
  1. 成员变量(属性)和局部变量的区别?

  2. 方法调用机制;参数的值传递机制

  3. 封装和隐藏:四种访问权限修饰符

  4. 继承》多态

    父类的引用指向子类的对象>晚绑定

    编译时:要查看引用变量所声明的类中是否有所调用的方法。
    运行时:调用实际new的对象所属的类中的重写方法。

  5. Object 类:== 操作符与equals 》toString()

  6. 包装类why:基本类型、包装类与String 类间的转换

  7. 抽象类》Java 8接口改进》偏类

  8. 类的成员之:代码块、内部类 。static、final

  9. 枚举类

第7章 异常
  1. 异常体系结构 Error Exception:运行时异常+编译时异常
  2. 异常处理机制:try-catch-finally throws声明抛出异常
第9章_Java常用类
  1. 字符串

    String(JDK1.0):不可变字符序列
    StringBuffer(JDK1.0):可变字符序列、效率低、线程安全
    StringBuilder(JDK 5.0):可变字符序列、效率高、线程不安

  2. 日期
    1. JDK8 之前日期时间API
    2. 新日期间 时间API :本地日期(LocalDate)、本地时间(LocalTime)、本地日期时间(LocalDateTime)、时区(ZonedDateTime)和持续时间(Duration)的类、 瞬时Instant、DateTimeFormatter 类
  3. 其它
    1. Java实现对象排序的方式有两种

       自然排序(默认):java.lang.Comparable
       定制排序:java.util.Comparator

    2. System类代表系统

    3. Math类

    4. BigInteger类

    5. BigDecimal类

第8章_多线程
  1. 程序、进程、线程(一个程序内部的一条执行路径)

  2. 线程 的生命周期、有关方法

  3. 创建线程的方式:继承Thread类的方式、实现Runnable接口的方式、实现Callable、使用线程池

    Callable功能更强大:可以有返回值、方法可以抛出异常、支持泛型的返回值。需要借助FutureTask类

  4. 同步机制优先使用顺序:Lock  同步代码块  同步方法

    1. Lock是显式锁(手动开启和关闭锁,别忘记关闭锁),synchronized是
      隐式锁,出了作用域自动释放

    2. Lock只有代码块锁,synchronized有代码块锁和方法锁

    3. 使用Lock锁,JVM将花费较少的时间来调度线程,性能更好。并且具有
      更好的扩展性(提供更多的子类)

    4. synchronized 的锁是什么 ?
       任意对象都可以作为同步锁。所有对象都自动含有单一的锁(监视器)。
       同步方法的锁:静态方法(类名.class)、非静态方法(this)
       同步代码块:自己指定,很多时候也是指定为this或类名.class

  5. 线程的通信

    wait() 方法
    使当前线程进入等待(某对象)状态 ,直到另一线程对该对象发出 notify(或notifyAll) 为止。
    调用方法的必要条件:当前线程必须具有对该对象的监控权(加锁)。调用此方法后,当前线程将释放对象监控权

    notify()/notifyAll()
    功能:唤醒等待该对象监控权的一个/所有线程。
    调用方法的必要条件:当前线程必须具有对该对象的监控权(加锁)

  6. 经典例题:生产者/ 消费者问题

第11章_Java集合
  1. 数组在存储数据方面的弊端:长度就不可变、面向过程的产物
  2. 集合框架概述
    1. Collection
      1. List:ArrayList、LinkedList
      2. Set:HashSet》LinkedHashSet、TreeSet
    2. Map:HashMap》LinkedHashMap、TreeMap、Hashtable》Properties
    3. Iterator迭代器接口
    4. Collections容器工具类:算法+同步包装
    5. 对象排序接口Comparable、Comparator。用于Tree*
    6. 复写equals方法的时候一般都需要同时复写hashCode方法。相等的对象必须具有相等的散列码,用于Hash*
第13章_IO流
  1. File 类
  2. IO流分类:输入流、输出流、字节流、字符流、节点流、处理流
  3. 缓冲流分为:BufferedInputStream 、 BufferedOutputStream、BufferedReader、BufferedWriter
  4. 两个转换流:
     InputStreamReader :将InputStream 转换为Reader
     OutputStreamWriter :将Writer 转换为OutputStream
  5. 标准输入System.in、输出流System.out
  6. 打印流:PrintStream和PrintWriter
  7. 数据流有两个类:(用于读取和写出基本数据类型、String类的数据) DataInputStream 和 DataOutputStream
  8. 对象流:ObjectInputStream 和OjbectOutputSteam用于存储和读取 基本数据类型数据或 对象的处理流。
  9. 随机存取文件流RandomAccessFile
  10. Java NIO
  11. NIO.2 中Path 、Paths 、Files
第14章_网络编程
  1. 网络通信要素: IP和端口号、网络通信协议
  2. 基于Socket 的TCP 编程
  3. 基于 UDP 协议网络程序
  4. URL网络编程
    1. URL的基本结构由5部分组成:< 传输协议>://< 主机名>:< 端口号>/< 文件名># 片段名? 参数列表
第10章_注解

在编译时进行格式查 检查(JDK 内置的三个基本注解)

  • 自定义注解必须配上注解的信息处理流程才有意义。》反射

JDK 中的元注解:@Retention、@Target

第12章_泛型
  1. 泛型在继承上的体现
  2. 通配符》有限制的通配符 上限extends、下限super
第15章_Java反射机制
  1. Java不是动态语言,可以“准动态语言”。利用反射机制、字节码操作获得类似动态语言的特性。

  2. 类的加载与ClassLoader

  3. 反射相关的主要API 》获取运行时类的完整结构》调用运行时类的指定结构

     java.lang.Class: 代表一 个 类
     java.lang.reflect.Method: 代表类 的 方法
     java.lang.reflect.Field: 代表类的 成员 变量
     java.lang.reflect.Constructor: 代表类 的 构造

  4. 动态代理相比于静态代理的优点 》 反射的应用:动态代理

  5. 动态代理步骤

    1.创建一个实现接口InvocationHandler的类

    2.创建被代理的类以及接口

    3.通过Proxy的静态方法创建接口代理

    4.通过代理调用方法

第16章_Java8的其它新特性
  1. Lambda 表达式

    1. 本质:Lambda表达式就是一个函数式接口的实例
    2. 语法:参数->体
    3. Java 内置四大核心函数式接口:消费型、供给型、函数型、断定型
    4. 方法引用与构造器引用、三种主要使用情况:
       对象:: 实例方法名
       类:: 静态方法名
       类:: 实例方法名 (参数列表的第一个参数调用实例方法)
  2. Stream API

    1. Stream 和 Collection 集合的区别:Collection 是一种静态的内存数据
      结构,而 Stream 是有关计算的。注意:
      ①Stream 自己不会存储元素。
      ②Stream 不会改变源对象。相反,他们会返回一个持有结果的新Stream。
      ③Stream 操作是延迟执行的。这意味着他们会等到需要结果的时候才执行。

    2. Stream 的操作三个步骤
       1- 创建 Stream:一个数据源(如:集合、数组),获取一个流
       2- 中间操作:一个中间操作链,对数据源的数据进行处理:1- 筛选与切片limit skip filter distinct、2-映射map flatMap、3-排序sort

       3- 终止操作:1- 匹配与查找match find、统计min max count、迭代forEach 2- 归约 reduce 3- 收集collect

      ​ Collector 接口中方法的实现决定了如何对流执行收集的操作(如收集到 List、Set、Map)。

    3. Optional 避免空指针异常

  3. 便于并行

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/877990.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号