java语言

108 阅读3分钟

基础语法

注释

行内注释// 多行注释/* / 文档注释/ * */

关键字

数据类型

基本数据据类型

  • 整形 byte short int long
  • 浮点 float double
  • 字符 char
  • 布尔 boolean

引用数据类型

  • 接口
  • 数组

类型转换

  • 自动类型转换 (低转高)
  • 强制类型转换 (高转低)

流程控制

  • 顺序结构
  • 选择结构
    • if
    • if-else
    • if-else-if-else
  • 循环结构 -while -do-while -for -增强for

方法

什么是方法

修饰符 返回值 方法名 (参数名){ return 返回值; }

方法的定义

方法的调用

  • 类.方法
  • 对象.方法

方法的重载

方法名字相同,参数列表不同

方法的递归

数组

数组的定义

new int【5】

数组的使用

二维数组

int 【】【】

Array工具类

排序算法

面向对象

什么是面向对象

类与对象

类是对象的抽象,对象是类的具体

构造方法

构造的重载

默认的无参构造,如果手动定义了有参构造就必须手动再加一个无参构造

new对象

  • 栈存放引用
  • 堆存放具体的对象

封装

封装属性,get,set

继承

extends,Object,子类拥有父类的全部特性,方法重写,this,super

多态

父类的引用指向子类的对象 Person person = new Student() instance of 如果匹配,可以进行类型之间的转换

修饰符

private

default

protected

public

static final abstract

接口

  • 约束,只能定义方法名
  • 子类实现接口,必须重写接口中的方法
  • 只有一个方法的接口叫函数式接口,可用lambda表达式简化
  • 接口比抽象类更抽象
  • 一个类可以继承多个接口

内部类

  • 局部内部类
  • 静态内部类
  • 匿名内部类

异常Throwable

Exception

  • 运行时异常
    • 除法错
    • 下标越界
  • 检查时异常

Error

  • AWT错误
  • JVM错误
    • 栈溢出
    • 内存溢出

五个关键字

  • try
  • catch
  • finally
  • throw 手动抛出异常
  • throws 方法抛出异常
  • 自定义异常 继承Exception类即可

常用类

Object类

  • hashcode()
  • toString()
  • wait()
  • equals()

Math类

Random类

File类

包装类

Date类

String类

StringBuffer类

多线程 效率低 安全

StringBuilder类

单线程 效率高 不安全

集合框架

Collection

list

ArrayList
add
remove
LinkedList

set

HashSet
TreeSet

Map

HashMap

数据结构:数组+链表+红黑树

TreeMap

io流

字节流

InputStream

OutputStream

字符流

Writer

Reader

处理流

buffer

filter

data

print

节点流

多线程

  • 进程,线程
  • run(),start()
  • 线程创建的方式
    • 继承Thread
    • 继承Runnable
    • 继承Callable
  • 静态代理
  • lamabda表达式 函数式编程-避免内部类定义过多
  • 线程的状态
  • 常用方法
    • sleep
    • join
    • yeild
    • isLive
    • start
    • interrupt
  • 线程同步
    • 队列+锁
    • 死锁
  • 线程通信
    • 缓冲区:消息队列
    • 标志位:红绿灯
    • wait()
  • 线程池
    • 池化技术
    • 池的大小
    • 最大连接数
    • 连接时间
    • 保持时间

网络编程

  • tcp三次握手,四次挥手 面向连接
  • udp无连接
  • 聊天通信
  • 文件上传

GUI

  • AWT
  • Swing

注解和反射