JavaSE_基础知识扫盲_不完整后期修补

此篇文章主要是想让大家帮忙看看整个框架对不对,内容并未全部补齐,部分都是网上摘抄下来的,后面会补齐!

JavaSE_基础知识扫盲

  • First Chapter:two week time

1 Java语言概述

2 Java的运行环境

2.1 JDK配置及目录说明

2.2 IDE的熟悉和使用

3 Java基本程序结构

3.1 基本数据类型

整数型

  • 整形:int
    长整型:longerInt
    短整型:shortInt

浮点型

  • 单精度:float
    双精度:double

布尔类型

  • 布尔类型:boolean

字符型

  • 字符型:char

  • 其他:引用类型(对象类型):String

3.2 运算符

逻辑运算符

  • 与运算符:&&
    或运算符:||
    非运算符:!

算术运算符

  • 加:+
    减:-
    乘:*
    除:/
    取模(取余数):%

关系运算符

  • 大:>
    小:<
    相等:==

3.3 字符串

3.4 流程控制语句

3.4.1 判断语句

  • If判断语句
    • If(判断条件){
      // 条件成立,则执行该代码块
      }
  • If-else判断语句
    • If(判断条件){
      // 执行代码块1
      }// 如果判断条件不成立
      else{
      // 执行代码块2
      }

3.4.2 选择语句

  • 多重if-else 选择语句

    • if(判断条件1){
      // 条件 1 满足执行代码块 1
      }else if(判断条件2){
      // 条件 2 满足执行代码块 2
      }else if(判断条件3){
      // 条件 3 满足执行代码块 3
      }else if…
  • Switch 选择结构

    • switch(情况值){
      case 1:
      // 代码块1
      break;
      case 2:
      // 代码块2
      break;
      case 3:
      // 代码块3
      break;
      case …
      . // 代码块
      .
      .
      default:
      // default 代码块
      break;
      }

3.4.3 循环语句

  • while 循环语句
    • while(循环条件1){
      // 循环体 1
      }
  • do-while 循环语句
    • do{
      // 循环体 1
      }while(循环条件1);
       for 循环语句
      for(声明赋值循环变量;循环体执行的条件;循环变量的改值){
      // 循环体 1
      }

3.4.4 数组

  • 数组声明和初始化的大致步骤以及几种方式

    • // 数组声明
      数组类型[] 数组名;
      // 声明后不直接赋值,只定义数据长度,后期赋值
      数组名 = new 数据类型[数据长度];
      或者
      // 声明后直接赋值,数据长度由数组元素确定
      数组名 = new 数据类型[]{元素1,元素2,元素3,…};
  • 固定数组的修改和访问
    // 数组一般小标从 0 开始
    // 数组值得修改
    数组名[数组下标] = 对应数据类型的数组值;

  • // 数组值得访问
    数组名[数组下标];

  • Second Chapter:two week time

4 类和对象

4.1 类的定义和使用

4.1.1 类的定义

  • 定义关键字:class
    • 使用:类是一个模板,可以实例无数个对象

4.2 静态属性及方法

4.2.1 静态变量或方法

  • 定义关键字:static,非静态方法内不允许定义静态方变量以及方法
  • 调用:静态方法内直接调用静态变量,而静态方法需通过实例对象来调用(public)非静态得方法和属性

4.3 继承

4.3.1 关键字:extends

4.4 包管理

4.5 枚举

4.5.1 关键字:menu

4.6 反射

5 接口&抽象类

5.1 接口的定义及实现

5.1.1 定义关键字:interface

5.1.2 实现途径:接口只能用于继承,后代强制实现或重写接口类的方法

5.2 抽象类的定义及实现

5.2.1 定义关键字:abstract

5.2.2 实现途径:

6 发布和部署

6.1 JAR包概述

6.2 创建JAR

6.3 引用JAR

  • Thrid Chapter:one week time

7 泛型

7.1 泛型类

7.2 泛型方法

8 集合

8.1 集合接口

8.1.1 Set

8.2 列表

8.3 Map

8.4 树

8.5 排序和查找

  • Fourth Chapter:one week time

9 异常与调试

9.1 内置异常

9.1.1 基本异常

  • 算术异常类:ArithmeticExecption

  • 空指针异常类:NullPointerException

  • 类型强制转换异常:ClassCastException

  • 数组负下标异常:NegativeArrayException

  • 数组下标越界异常:ArrayIndexOutOfBoundsException

  • 违背安全原则异常:SecturityException

  • 文件已结束异常:EOFException

  • 文件未找到异常:FileNotFoundException

  • 字符串转换为数字异常:NumberFormatException

9.1.2 常见异常

  • 1.、java.lang.nullpointerexception

    • 这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对象,
      这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。
      对数组操作中出现空指针,很多情况下是一些刚开始学习编程的朋友常犯的错误,即把数组的初始化和数组元素的初始化混淆起来了。
      数组的初始化是对数组分配需要的空间,而初始化后的数组,其中的元素并没有实例化,依然是空的,所以还需要对每个元素都进行初始化(如果要调用的话)
  • 2.、java.lang.classnotfoundexception

    • 这个异常是很多原本在jb等开发环境中开发的程序员,把jb下的程序包放在wtk下编译经常出现的问题,异常的解释是"指定的类不存在",
      这里主要考虑一下类的名称和路径是否正确即可,如果是在jb下做的程序包,一般都是默认加上package的,所以转到wtk下后要注意把package的路径加上。
  • 3.、java.lang.arithmeticexception

    • 这个异常的解释是"数学运算异常",比如程序中出现了除以零这样的运算就会出这样的异常,
      对这种异常,大家就要好好检查一下自己程序中涉及到数学运算的地方,公式是不是有不妥了。
  • 4.、java.lang.arrayindexoutofboundsexception

    • 这个异常相信很多朋友也经常遇到过,异常的解释是"数组下标越界",现在程序中大多都有对数组的操作,
      因此在调用数组的时候一定要认真检查,看自己调用的下标是不是超出了数组的范围,
      一般来说,显示(即直接用常数当下标)调用不太容易出这样的错,但隐式(即用变量表示下标)调用就经常出错了,
    • 还有一种情况,是程序中定义的数组的长度是通过某些特定方法决定的,不是事先声明的,这个时候,最好先查看一下数组的length,以免出现这个异常。
  • 5、 java.lang.illegalargumentexception

    • 这个异常的解释是"方法的参数错误",很多j2me的类库中的方法在一些情况下都会引发这样的错误,
      比如音量调节方法中的音量参数如果写成负数就会出现这个异常,再比如g.setcolor(int red,int green,int blue)这个方法中的三个值,
      如果有超过255的也会出现这个异常,因此一旦发现这个异常,我们要做的,就是赶紧去检查一下方法调用中的参数传递是不是出现了错误。
  • 6、 java.lang.illegalaccessexception

    • 这个异常的解释是"没有访问权限",当应用程序要调用一个类,但当前的方法即没有对该类的访问权限便会出现这个异常。
      对程序中用了package的情况下要注意这个异常。

9.2 声明异常

9.2.1 声明异常类型的关键字:throws

9.2.2 实现异常的关键字:throw

9.3 自定义异常

9.3.1 自定义异常类的几个途径:

  • 继承Exception 或者
    继承 内置异常类比如:算术,空指针,越界等,重写其构造方法
    • 示例:
public class CustomException extends Exception {

    //无参构造方法
    public CustomException(){
        super();
    }

    //有参的构造方法
    public CustomException(String message){
        super(message);
    }

    // 用指定的详细信息和原因构造一个新的异常
    public CustomException(String message, Throwable cause){
        super(message,cause);
    }

    //用指定原因构造一个新的异常
     public CustomException(Throwable cause) {
         super(cause);
     }

}

9.4 捕获异常

9.5 日志

9.5.1 Log4j

10 多线程

10.1 多线程概念

10.1.1 一个进程可以包含多个线程

10.1.2 线程是进程的子集

10.1.3 多线程的好处:

10.2 使用多线程

10.2.1 对线程调用类采用继承Thread父类或 runnable接口

10.2.2 并重写 run() 方法

10.3 同步

10.3.1 同步:就是两个以上的线程同时对同一个数据进行操作,保证一张卡内的1000元,不能去除2000元来

10.3.2 Syschronized 对象锁

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值