0%

JDK8新特性总汇

  • Lambda表达式和函数式接口

    Lambda表达式(也称为闭包)是Java 8中最大和最令人期待的语言改变。它允许我们将函数当成参数传递给某个方法,或者把代码本身当作数据处理

  • 接口的默认方法和静态方法

    默认方法和抽象方法之间的区别在于抽象方法需要实现,而默认方法不需要。接口提供的默认方法会被接口的实现类继承或者覆写

阅读全文 »

函数式编程思想:lamlbda(jdk8新特性)

在数学中,函数是有输入量,输出量的一套计算方案,相对而言面向对象过分强调“必须通过对象的形式来做事情”,而函数式编程则是尽量忽略面向对象的复杂语法–强调做什么,而不是以什么形式做

阅读全文 »

JDK7新特性总汇

  • 二进制字面量(比如0b110,它可以直接写出来,他代表二进制的110,也就是十进制的6)
  • 数字字面量可以出现下划线(100_00写法不会错,它表示10000)
  • switch 语句可以用字符串
  • 泛型简化、菱形泛型
  • 异常的多个catch可以合并,每个异常用 | 比如:catch(异常1 | 异常2)
  • try-with-resources 语句(jdk1.7标准的异常处理代码,就是之前那个关流的)

模板设计模式的概述

就是定义一个算法的骨架,而将具体的算法延迟到子类中来实现

优点和缺点

  • 优点

    使用模板方法模式,在定义算法骨架的同时,可以很灵活的实现具体的算法,满足用户灵活多变的需求

  • 缺点

    如果算法骨架有修改的 话,则需要修改抽象类

阅读全文 »

反射之——类的加载概述和加载时机

  • 概述

    当程序要使用某个类的时候,如果该类字节码文件还未被加载到内存中,则系统会通过加载、连接、初始化三个步骤来对这个类进行初始化

    • 加载
      就是将class文件读入内存中,并为之创建一个class对象,任何类被使用时系统都会建立一个class对象

    • 连接:
      1、验证:是否有正确的内部结构,并和其他类协调一致
      2、准备:负责为类的静态成员分配内存,并且设置默认初始化值
      3、解析:将类的二进制数据中的 符号引用 替换为直接引用

    • 初始化
      就是默认初始化、显示初始化、构造方法初始化等一系列初始化

阅读全文 »

UDP概念

UDP协议相对于TCP协议,它是不保证数据安全的,但是它的传输速度相对更快,它不需要客户端服务端进行连接。

ps:服务端必须指定端口号,发送端可以随机端口号,但是Packet数据报对象必须指定服务端的端口号

阅读全文 »

Gui的概述

它是一个图形用户接口

GUI的类

Frame

创建一个窗口

1
Frame f = new Frame();

ps:刚创建时不可见的

阅读全文 »