Java教程

javaSE基础总结

本文主要是介绍javaSE基础总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

接口总结:

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

内部类:

  • 局部内部类
  • 静态内部类
  • 匿名内部类
    ##异常:
  • throwable
    • exception:
      • 运行时异常
      • I/O异常
    • error:
      • AWT错误
      • JVM:StackOverflow,outofMemory

常用类:

  • Object类
    • hashCode()
    • toString()
    • clone()
    • getClass()
    • notify()
    • wait()
    • equals()

Math类

- 数学运算
  • Randem类
    • 生成随机数 UUID

File类

包装类

- 自动拆箱和装箱

Date类

- Date
- simpleDataformat
- Calendar

String类

- 不可变性 final
  • StringBuffer类
    • 多线程:数据大,效率低,安全
  • StringBuilder类
    • 单线程:数据大,效率高,不安全

集合框架:

  • collection
    • List:ArrayList,LinkList
    • set:HashSet, TreeSet
    • Vector
    • Stack
  • map
    • HashMap:hash表:数组+链表+红黑树
    • Treemap
  • Collection工具类
  • 泛型:约束

IO流:

  • 字节流
    • 输出:outputStream
    • 输入:inputStream
  • 字符流:Reader,Wirter
  • 处理流:
    • buffer:bufferinputStream,bufferoutputStream,bufferWirter,bufferoutputReader,
    • data:DatainputStream,DataoutputStream
    • 转换流:inputStreamReader,outputStreamWriter
    • filter:四个
    • print:printWriter,printStream
    • object:四个
    • 序列化:反序列化(serializable) 关键字(transient)(透明的)
  • 节点流:classArrayReader,Writer,inputStream,outputStream,StringReater,StringWriter,pipe(管道流),ile()

多线程:

  • 进程,线程:
  • run(),start()
  • 线程创建的方式
    • Thread start0本地方法,java无权调用,交个底层处理 private native void start0()
    • Runnable 函数式接口 lambda表示
    • Callable 可以有返回值
  • 静态代理:new Thread(Runnable).start()
  • lambda表达式:函数式编程,避免内部类定义过多,推到Lambda表达式
  • 线程状态:
    • 新建状态
    • 就绪状态
    • 运行状态
    • 阻塞状态
    • 死亡状态
  • 常用方法:
    • sleep
    • join
    • yield
    • islive
    • start
    • setpriority
    • interrupt
  • 线程同步:多个对象操作同一个资源,并发
    • 队列+锁
    • Synchronized
      • 同步方法,弊端锁太多
      • 同步代码块锁
      • 第一个线程进来拿到锁,后面就要排队,直到这个人释放锁,后面拿到锁才能进去
      • 死锁:两个人都抱着对方的锁:互斥(一个资源只能被一个进程使用),请求与保持(一个进程堵塞,不能对这个资源抱住不放),不剥夺条件(该进程已经获得该资源,在没有使用完该资源的情况下不能强行拿走),循环等待
    • lock锁:ReentrantLock
      • lock锁
      • try-lock
      • unlock锁
  • 线程通信:
    • 缓冲区:消息队列
    • 标志位:红绿灯
    • wait(),notifyAll
  • 线程池(pool):池化技术
    • 池的大小
    • 最大连接数
    • 保持时间
    • 。。。。

网络编程

  • ip
  • 端口
  • Socket编程
  • Tcp
    • 三次握手
    • 四次握手
    • 面向连接
  • Udp
    • 无连接
    • Packet
  • URL
  • 聊天通信
  • 文件上传

GUI

  • AWT :Frame,监听时事件
  • Swing:文本框,标签,按钮,文本域,面板,布局方式,关闭窗口,列表
  • 贪吃蛇:Timer,键盘监听,游戏帧的概念

注解和反射:

  • 注解:
    • 元注解
    • 内置注解
    • 自定义注解
    • 反射读取注解
  • 反射
    • class:newinstance()
    • 类加载机制
    • Method:invoke()
    • Field:set()
    • Construct:newinstance(),获取的时候需要传递参数class的类型
    • 破坏私有:setAccessible(true)
    • 性能分析:正常>检测关闭的反射>默认反射
  • 单例模式
  • stream
  • forkjoin
这篇关于javaSE基础总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!