目录

1、System.currentTimeMillis

2、标识符

3、用关键字final声明命名常量

4、自增和自减操作符

5、软件开发过程

6、Math.random()

7、判定闰年

8、switch语句:

9、操作符优先级表

10、常用数学函数

11、转义字符

12、字符型数据与数值型数据之间的转换

13、String对象

14、格式化控制台输出

15、输入输出重定向

16、生成随机字符:

17、foreach循环

18、Arrays类

19、命令行参数

20、获取二维数组的长度

21、Date类

22、静态变量和静态方法

23、对象数组

24、面向对象

25、类的关系

26、将基本数据类型值作为对象处理

27、Biglnteger 和 BigDecimal 类

28、String类

29、StringBulider和StringBuffer类

30、使用super关键字

31、方法重写

32、Object类及其toString()方法

33、对象转换和instanceof运算符

34、ArrayList

35、异常

36、异常类型

37、文件输入和输出

38、抽象类

39、抽象的Number类

40、Calendar和GregorianCalendar

41、接口

42、Comparable接口

43、Cloneable接口

44、File类

45、 JavaFX基础

46、属性绑定

47、Color类

48、Font类

49、Image和ImageView类

50、布局面板

​编辑 51、形状

52、事件和事件源

53、注册处理器和处理对象

54、内部类

55、匿名内部类处理器

56、使用lambda表达式简化事件处理

57、鼠标和键盘事件

58、可观察对象的监听器

59、动画

60、UI组件和多媒体


1、System.currentTimeMillis

System.currentTimeMillis返回从GMT(格林威治标准时间)1970年1月1日00:00:00开始到现在时刻的毫秒数(1s=1000ms)

2、标识符

由字母、数字、下划线和美元符号构成,必须以字母或下划线开头,不能以数字开头,不能是保留字

3、用关键字final声明命名常量

4、自增和自减操作符

5、软件开发过程

需求规范、系统分析、系统设计、实现、测试、部署和维护

  • 需求规范是一个规范化的过程,旨在理解软件要处理的问题,以及将软件系统需要做的 详细记录到文档中。这个阶段涉及用户和开发者之间紧密的接触
  • 系统分析旨在分析数据流,并且确定系统的输人和输出。当进行分析的时候,首先确定 输出,然后弄清楚需要什么样子的输入从而产生结果是有帮助的
  • 系统设计 是设计一个从输人获得输出的过程 。 这个阶段涉及使用多层的抽象 , 将问题分
    解为可管理的组成部分 , 并且设计执行每个组成部分的策略 。 可以将每个组成部分看作一个
    执行系统特定功能的子系统 。 系统分析和设计的本质是输入 、 处理和输出 ( IPO )
  • 实现 是将系统设计翻译成程序 。 为每个组成部分编写独立的程序 , 然后集成在一起工
    作 。 这个过程需要使用一门编程语言 , 比如 Java 。 实现包括编码 、 自我测试 , 以及调试
    ( 即 , 在代码中寻找错误 , 称为调试 )
  • 测试确保代码符合需求规范,并且排除错误。通常由一个没有参与产品设计和实现的独

    立软件工程团队完成这样的测试

  • 部署使得软件可以被使用。按照软件类型的不同,可能安到每个用户的机器上,或者安装在一个 Internet 可访问的服务器上

  • 维护是对软件产品进行更新和改进。软件产品必须在一直演化的环境中连续运行和改 进。 这要求产品的周期性改进 , 以修正新发现的错误 , 并且将更改集成到产品中

6、Math.random()

0.0<=Math.random()<1.0 (double)

7、判定闰年

如果某年可以被4整除而不能被100整除。或者可以被400整除,那么这一年就是闰年:

isLeapYear = ((year % 4 && year %100 != 0) || (year % 400 ==0))

8、switch语句:

switch(status){

case 0:__________;break;

case 1:__________;break;

......

case n:__________;break;

default:__________;

}

9、操作符优先级表

10、常用数学函数

(1)三角函数方法

(2)指数函数方法

(3)取整方法

(4)random方法

(5)min、max、abs方法(最小值、最大值、绝对值)

11、转义字符

12、字符型数据与数值型数据之间的转换

数值->字符:char ch = (char)number;

字符->数值:int number = (int)'A';

13、String对象

(1)简单方法

(2)比较方法

(3)获得子字符串

(4)获取字符串中的字符或者子串

(5)字符串和数字的转换

字符串->数字:

int intValue = Integer.parseInt(intString);

double doubleValue = Double.parseDouble(doubleString);

数字->字符串:

String s = number + "";

14、格式化控制台输出

System.out.printf(format,item1,item2,...,itemn);

常用的格式标识符:

例子:

15、输入输出重定向

如果要输人大量的数值 , 那么从键盘上输入是非常繁琐的事 。 可以将这些数据用空格隔开, 保存在一个名为 input . txt 的文本文件中 , 然后使用下面的命令运行这个程序:
java SentinelValue < input.txt
类似地 , 还有输出重定向 ( output redirection ) , 输出重定向将输出发送给文件 , 而不是
将它们显示在控制台上 。 输出重定向的命令为 :
java ClassName > output.txt

16、生成随机字符:

(char)(‘a’ + Math.random() * ('z' - 'a' + 1))

17、foreach循环

Java 支持一个简便for循环 , 称为 foreach 循环 , 即不使用下标变量就可以顺序地遍
历整个数组 。 例如 , 下面的代码就可以显示数组 myList 的所有元素 :
for ( elementType element : arrayRefVar ) {
II Process the element
}

18、Arrays类

java . util . Arrays 类包括各种各样的静态方法 , 用于实现数组的排序和査找 、 数组的比较和填充数组元素, 以及返回数组的字符串表示 。 这些方法都有对所有基本类型的重载方法

19、命令行参数

main 方法的声明与众不同 , 它具有 String[ ] 类型参数 args 。 很明显, 参数 args 是一个字符串数组 。 main 方法就像一个带参数的普通方法 。 可以通过传递实参来调用一个普通方法。 那能给 main 传递参数吗 ? 当然可以 。 例如 , 在下面的示例中 ,TestMain 类中的 main 方法被 A 中的方法调用 , 如下所示 :

运行程序时,可以从命令行给main方法传递字符串参数,例如,下面的命令行用三个字符串arg0、arg1、arg2启动程序TextMain:

java TextMain arg0 arg1 arg2

当调用 main 方法时 , Java 解释器会创建一个数组存储命令行参数 , 然后将该数组的引
用传递给 args。然后 , Java 解释器传递参数 args 去调用 mai n 方法

20、获取二维数组的长度

行数: array.length()
列数: array[0].length()

21、Date类

Point2D类

22、静态变量和静态方法

实例方法可以调用实例方法和静态方法,以及访问实例数据域或者静态数据域。静态方 可以调用静态方法以及访问静态数据域。然而,静态方法不能调用实例方法或者访问实例数据域,因为静态方法和静态数据域不属于某个特定的对象。静态成员和实例成员的关系总结在下图中

23、对象数组

创建: Circ1e[] circleArray = new Circle[10];

初始化:for (int i = 0;i < circleArray.length;i++){

        Ci rcleArray [ i ] = new Ci rcleO ;
}

24、面向对象

面向过程范式重在设计方法。 面向对象范式将数据和方法都组合在对象中 。 使用面向对象范式的软件设计重在对象和对象上的操作。 面向对象方法结合了面向过程范式的功能以及将数据和操作集成在对象中的特性。
在面向过程程序设计中 , 数据和数据上的操作是分离的 , 而且这种做法要求传递数据给
方法 。 面向对象程序设计将数据和对它们的操作都放在一个对象中 。 这个方法解决了很多面
向过程程序设计固有的问题 。 面向对象程序设计方法以一种反映真实世界的方式组织程序 ,
在真实世界中 , 所有的对象和属性及动作都相关联 。 使用对象提高了软件的可重用性 , 并且
使程序更易于开发和维护 。 Java 程序设计涉及对对象的思考 , 一个 Java 程序可以看作是一
个相互操作的对象集合 。

25、类的关系

(1)关联: 关联是一种常见的二元关系 , 描述两个类之间的活动
(2)聚合: 聚集是关联的一种特殊形式 , 代表了两个对象之间的归属关系
(3)组合:如果一个对象只归属于一个聚集对象,那么它和聚集对象之间的关系就称为组合
(4)继承

26、将基本数据类型值作为对象处理

基本数据类型值不是一个对象 , 但是可以使用 JavaAPI 中的包装类来包装成一个对象
数值包装类相互之间都非常相似 。 每个都包含了 doubleValue()  、 floatValue()  , intValue( ) 、 longValue () 、 shortValueO 和 byteValue ( )方法。这些方法将对象 “转换” 为基本类型值
每一个数值包装类都有常量 MAX_ VALUE 和 MIN_ VALUE 。MAX_VALUE 表示对应的基本数据类型的最大值
每个数值包装类都会包含方法 doubleValue() 、 floatValue ( ) 、 intValue() 、longValue()和 shortValue() 。 这些方法返回包装对象的 double 、 float 、 int 、 long 或 short 值

27、Biglnteger 和 BigDecimal 类

Biglnteger 类和 BigDecimal 类可以用于表示任意大小和精度的整教或者十进 制數。

28、String类

(1)字符串的替换和分隔

(2)依照模式匹配、替换和分隔

(3)字符串和数组之间的转换

char[] chars = "java".toCharArray();

(4)格式化字符串

和printf很像:

String s = String.format("% 7.2f% 6 d % - 4s " , 45.556 , 14 , nAB " );

29、StringBulider和StringBuffer类

30、使用super关键字

  • 调用父类的构造函数:super()
  • 调用父类的方法 :super.method(参数)

31、方法重写

要重写一个方法 , 需要在子类中使用和父类一样的签名以及一样的返回值类型 来对该方法进行定义
​​​​​​

  • 仅当实例方法是可访问时 , 它才能被覆盖 。 因为私有方法在它的类本身以外是不能访问的, 所以它不能被覆盖 。 如果子类中定义的方法在父类中是私有的 ,那么这两个方法完全没有关系
  • 与实例方法一样 , 静态方法也能被继承 。 但是 , 静态方法不能被覆盖 。 如果父类中定义的静态方法在子类中被重新定义, 那么在父类中定义的静态方法将被隐藏 。 可以使用语法: 父类名 静态方法名 ( SuperClassName . staticMethodName ) 调用隐藏的静态方法

​​​​

32、Object类及其toString()方法

Java 中的所有类都继承自 java . lang . Object 类,可重写toString()方法

33、对象转换和instanceof运算符

Student b = (Student)o;

34、ArrayList

Java 提供 ArrayList 类来存储不限定个数的对象类。ArrayList 是一种泛型类,具有一个泛型类型

E。创建一个 ArrayList时 , 可以指定一个具体的类型来替换E
对于列表有用的方法:
String [ ] array = {”red“,"green","blue"};
ArrayList<String> list = new Array<>{Arrays.asList(arrat));
Arrays 类中的静态方法 asList返回一个列表,该列表传递给ArrayList的构造方法用于创建一个 ArrayLi st
反过来 , 可以使用下面代码从一个数组列表来创建一个对象数组:
String[] array1 = new String[list.size()];
list.toArray(array1);
调用 list . toArray ( arrayl ) 将 list 中的内容复制到 array1 中
如果列表中的元素是可比较的 , 比如整数 、 双精度浮点数或者字符串 , 则可以使用 java. util . Collections 类中的静态的 sort 方法来对元素进行排序
可以使用 java . util .Collections类中的静态的shuffle方法来随机打乱列表的元素

35、异常

一个异常可能是通过 try 块中的 throw 语句直接抛出 , 或者调用一个可能会抛出异常的方法而抛出。

36、异常类型

根类:java.lang.Throwable

异常类分为三种主要类型: 系统错误、异常和运行时异常

声明异常:public void myMethod() throws Exception1,Exception2,...,ExceptionN

抛出异常:throw new IllegalArgumentException("Wrong Argument");

捕获异常:

try {
statements;
}
catch ( Exceptionl exVar1 ){
handler for exceptionl;
}
catch ( Exception 〗 exVar 2 ){
handler for exception 2;
}
..
catch ( ExceptionN exVarN ){
handler for except ! onN;
}

37、文件输入和输出

使用 Scanner 类从文件中读取文本数据, 使用 PrintWriter 类向文本文件写入数据
File 对象封装了文件或路径的属性 , 但是它既不包括创建文件的方法 , 也不包括从 / 向文件读 / 写数据 ( 称为数据输入输出 , 简称 I / O ) 的方法 。 为了完成 I / O 操作 ,需要使用恰当的 Java I / O 类创建对象 。 这些对象包含从 / 向文件读 / 写数据的方法 。文本文件本质上是存储在磁盘上的字符。本节介绍如何使用 Scanner 和 PMntWriter 类从 ( 向 ) 文本文件读 ( 写) 字符串和数值信息。二进制文件将在17 章介绍。   
(1)使用PrintWriter写数据

哎呀还没搞懂!明天来搞!

38、抽象类

父类中定义了相关子类中的共同行为。接口可以用于定义类的共同行为(包括非相关的类)。

抽象类不可以用于创建对象 。 抽象类可以包含抽象方法 , 这些方法将在具体的子类中实现。
抽象类和常规类很像 , 但是不能使用 new 操作符创建它的实例 。 抽象方法只有定义而没有实现。 它的实现由子类提供 。 一个包含抽象方法的类必须声明为抽象类 。

39、抽象的Number类

Number 类是教值包装类 、 Biglnteger 以及 BigDecimal 的柚象父类

40、Calendar和GregorianCalendar

GregorianCalendar 是抽象类 Calendar 的一个具体子类

41、接口

接口在许多方面都与抽象类很相似,但是它的目的是指明相关或者不相关类的多个对象的共同行为

修饰符 interface 接口名{

常量声明

方法签名

}

42、Comparable接口

Comparable 接口定义了 compareTo 方法 , 用于比较对象
package java . lang ;
public interface Comparab 1 e < E > {
    public int compareTo (E o );
}
Comparable 接口是一个泛型接口 。 在实现该接口时 , 泛型类型 E 被替换成一种具体的类型。 Java 类库中的许多类实现了 Comparable 接口以定义对象的自然顺序 。 Byte 、 Short 、Integer、 Long 、 Float 、 Double 、 Character 、 Biglnteger 、 BigDecimalx Calendar 、 String以及 Date 类 都 实 现 了 Comparable 接口
由于所有 Comparable 对象都有 compareTo 方法 , 如果对象是 Comparable 接口类型的实例的话, Java API 中的 j ava . util . Arrays . sort ( Ob j ect[] ) 方法就可以使用 compareTo 方法 来对数组中的对象进行比较和排序

43、Cloneable接口

package java . lang ;
public interface Cloneable {
}

44、File类

45、 JavaFX基础

— 个 Stage 对象是一个窗体 。 当应用程序启动的时候,一个称为主舞台的 Stage 对象由 JVM 自动创建
节点只能加到一个面板中一次。将一个节点加入到一个面板中多次或者不同面板中将引起运行时错误

46、属性绑定

JavaFX 引人了一个称为属性绑定的新概念 , 可以将一个目标对象和一个源对象绑定 。如果源对象中的值改变了, 目标对象也将自动改变 。 目标对象称为绑定对象或者螂定属性,源对象称为可绑定对象或者可观察对象

47、Color类

48、Font类

49、Image和ImageView类

50、布局面板

(1)FlowPane

FlowPane 将节点按照加人的次序 , 从左到右水平或者从上到下垂直组织 。 当一行或者一列排满的时候, 开始新的一行或者一列

(2)GridPane

GridPane 将节点布局在一个网格 ( 矩阵 ) 中 。 节点放在一个指定的列和行索引中

(3)BorderPane

BorderPane 可以将节点放置在五个区域 : 顶部 、 底部 、 左边 、 右边以及中间 , 分别使用 setTop( node ) 、 setBottom (node)、setLeft(node)、 setRight(node)和 setCenter( node ) 方法

(4)HBox和VBox

HBox 将它的子节点 ( children ) 布局在单个水平行中。VBox 将它的子节点布局在单个垂直列中

 51、形状

Shape 类是一个抽象基类,定义了所有形状的共同属性。这些厲性有 fill、stroke, strokeWidth

(1)Text

(2)Line

(3)Rectangle

(4)Circle和Ellipse

(5)Arc

(6)Polyon和Polyline

Polygon 类定义一个连接一个点序列的多边形,PolyLine 类类似于Polygon 类,不同之处是 Polyline 类不会自动闭合

52、事件和事件源

一个事件可以被定义为一个告知程序某件事发生的信号 。 事件由外部的用户动作, 比如鼠标的移动 、 单击和键盘按键所触发
产生一个事件并且触发它的组件称为事件源对象, 或者简单称为源对象或者源组件 。 例如, 一个按钮是一个按钮单击动作事件的源对象 。 一个事件是一个事件类的实例 。 Java 事件类的根类是 java . util . EventObject 。 JavaFX 的事件类的根类是 javafx . event .Event

53、注册处理器和处理对象

54、内部类

一个内部类可以如常规类一样使用。通常,在一个类只被它的外部类所使用的时候,才将它定义为内部类。一个内部类具有以下特征:

一个简单的内部类的用途是将相互依赖的类结合到一个主类中 。 这样做减少了源文件的数量。 这样也使得类文件容易组织 , 因为它们都将主类名作为前缀
一个简单的内部类的用途是将相互依赖的类结合到一个主类中 。 这样做减少了源文件的数量。 这样也使得类文件容易组织 , 因为它们都将主类名作为前缀。
另外一个内部类的实际用途是避免类名的冲突.

55、匿名内部类处理器

一个匿名内部类是一个没有名字的内部类 。 它将一步实现定义一个内部类以及创建一个内部类的实例。

56、使用lambda表达式简化事件处理

lambda 表达式可以被看作使用精简语法的匿名内部类
( typel paraml , type 2 param 2 , … ) - > expression
或者 ( typel paraml , type 2 param 2 , … ) - > { statements ; }

57、鼠标和键盘事件

(1)鼠标事件

(2)键盘事件

58、可观察对象的监听器

— 个 Observable 类的实例被认为是一个可观察对象 , 它包含了一个 addListener ( Invalid ationListener listener ) 方法用于添加监听器 。 监听器类必须实现 InvalidationListener 接口以重写invalidated ( Observable o ) 方法 , 从而可以处理值的改变 。 一旦 Observable 中的值改变了, 通过调用 invalidatecKObservable o)方法,监听器得到通知。每个绑定属性都是Observable 的实例

59、动画

(1)PathTransition

PathTransition 类制作一个在给定时间内 , 节点沿着一条路径从一个端点到另外一个端点的移动动画

(2)FadeTransition

FadeTransition 类在一个给定的时间内 , 通过改变一个节点的透明度来产生动画。 

(3)TimeLine

PathTransition 和 FadeTransition 定义了特定的动画 。 Timeline 类可以用于通过使用一个或者更多的 KeyFrame ( 关键帧 ) 来编写任意动画 。 每个 KeyFrame 在一个给定的时间间隔内顺序执行
一个 KeyFrame 可以使用以下语句来构建:
new KeyFrame ( Duration duration , EventHandler < ActionEvent > onFinished )

60、UI组件和多媒体

整本书中 , 前缀 lbl、bt、chk、rb 、tf、pf 、ta、cbo 、 lv、seb、 sld 和 mp 被用 于定义 Label 、 Button 、 CheckBox 、 RadioButton 、 TextField 、 PasswordField 、 TextArea、 ComboBox、 ListView 、 Scroll Bar x Slider 和 MediaPlayer 的引用变量 。

(1)Labled和Label

标签 ( label ) 是一个显示小段文字 、 一个节点或同时显示两者的区域 。 它经常用来给其他组件( 通常为文本域)做标签。标签和按钮共享许多共同的属性 。 这些共同属性定义在Labeled 类

(2)按钮

按钮( button ) 是单击时触发动作事件的组件 。 JavaFX 提供了常规按钮 、 开关按钮 、 复选框按钮和单选按钮。 这些按钮的公共特性在 ButtonBase 和 Labeled 类中定义 ,如图所示。

(3)复选框

复选框用于提供给用户进行选择。 如同 Button, CheckBox 继承了来自 ButtonBase 和Labeled 的所有属性

(4)单选按钮

单选按钮( radio button ) 也称为选项按钮 ( option button ), 它可以让用户从一组选项中选择一个单一的条目。 从外观上看 , 单选按钮类似于复选框 。 复选框是方形的 , 可以选中或者不选中; 而单选按钮显示一个圆 , 或是填充的 ( 选中时 ) , 或是空白的 ( 未选中时)

(5)文本域

文本域(text field)可用于输入或显示一个字符串。TextField 是 TextlnputControl 的子类

(6)文本区域

(7)组合框

组合框 ( combo box ) 也称为选择列表 ( choice list ) 或下拉式列表 ( drop - down list) , 它包含一个条目列表 ,用户能够从中进行选择。使用组合框可以限制用户的选择范围 , 并避免对输人数据有效性进行繁琐的检査

(8)列表视图

列表视图是一个组件,它完成的功能与组合框基本相同,但它允许用户选择一个或多个值。

(9)滚动条

滚动条(ScrollBar)是一个允许用户从一个范围内的值中进行选择的组件

(10)滑动条

Slider 与 ScrollBar 类似 , 但是 Slider 具有更多的属性 , 并且可以以多种形式显示。

Java基础 简单回顾相关推荐

  1. Java基础知识回顾之七 ----- 总结篇

    前言 在之前Java基础知识回顾中,我们回顾了基础数据类型.修饰符和String.三大特性.集合.多线程和IO.本篇文章则对之前学过的知识进行总结.除了简单的复习之外,还会增加一些相应的理解. 基础数 ...

  2. 【Java基础知识回顾篇】之打怪升级Day001

    Java基础知识回顾篇之打怪升级Day001 目录 Java基础知识回顾篇之打怪升级Day001 简介 一.为什么现在主流的是Java8和Java11? 二.简单尝试编写java程序 1.编写一个He ...

  3. Java基础简单题目练习

    一.回文数判断 1.通过获取所输入整数的各个位数上的值来判断是否为回文数. a.代码如下: import java.util.Scanner; public class Test { public s ...

  4. Java基础知识回顾之一 ----- 基本数据类型

    前言 在开始工作至今,学习各种各样的技术之中发现自己的很多Java的基础知识都忘了⊙﹏⊙b汗... 而且越是学习越是发现Java基础的重要性,所以准备单独抽一下时间进行Java基础的重新学习.在重新学 ...

  5. Java基础知识回顾之四 ----- 集合List、Map和Set

    前言 在上一篇中回顾了Java的三大特性:封装.继承和多态.本篇则来介绍下集合. 集合介绍 我们在进行Java程序开发的时候,除了最常用的基础数据类型和String对象外,也经常会用到集合相关类. 集 ...

  6. Java基础知识回顾之三 ----- 封装、继承和多态

    前言 在上一篇中回顾了java的修饰符和String类,这篇就来回顾下Java的三大特性:封装.继承.多态. 封装 什么是封装 在面向对象程式设计方法中,封装是指一种将抽象性函式接口的实现细节部份包装 ...

  7. Java基础知识回顾之六 ----- IO流

    前言 在上一篇文章中,回顾了Java的多线程.而在本篇文章中主要介绍Java IO的相关知识. IO的介绍 什么是IO? IO的名称又来是Input与Output的缩写,也就是输入流和输出流.输入流用 ...

  8. [JAVA基础] 简单又不简单的数组

    引言 相信有过编程基础的小伙伴都知道数组这个数据结构,它应该也是我们第一个接触的数据结构,学过C或者C++的应该知道数组和指针紧密相关,那么在java里没有了指针,java里的数组又有哪些不同的特点呢 ...

  9. Java基础知识回顾

    1.Java集合 (1).几种集合(List.Set和Map)的区别          JAVA中几种集合(List.Set和Map)的区别   java常用集合总结 Java集合类: Set.Lis ...

最新文章

  1. Android性能优化(3)
  2. 建立集群间ssh信任关系
  3. 数字转化成时分秒(二)
  4. 来入门一下kotlin吧
  5. ServerSocketChannel API用法
  6. linux spf13 vim安装,Linux 下安装 spf13-VIM
  7. docker 安装svnserver
  8. 云端服务器怎么修改密码,云端服务器怎么设置登录密码
  9. 文件服务器 excle 变为temp,WPS的excel表格保存之后变成tmp_共享文档无法保存EXCLE 生成TMP...
  10. linux下载finger程序,Linux的finger命令
  11. (翻译)链接需要鼠标悬停效果的原因
  12. python写入excel怎么跨列居中_python文件读写(三)-Excel表格三剑客xlwt,xlrd,xlutils...
  13. 按键精灵_Wscript.Shell操作
  14. HTML CSS个人网页设计与实现——人物介绍丁真(学生个人网站作业设计)
  15. ppt版的pdf文件,被加密,知晓密码,想得到去水印后的ppt
  16. 环境化学试题及标准答案
  17. Thymeleaf是干什么的
  18. Ubuntu10.04编译太阳神三国杀
  19. XDF php 图形计数器 v1.1
  20. 武汉最最最牛逼的 IT 公司全在这了

热门文章

  1. cocos creator实例--Cocos Creator实现的 大炮英雄 游戏
  2. 基于Linux开源VOIP系统LinPhone[六]
  3. Review-Java多线程
  4. ELK搭建 - Docker篇
  5. camera 驱动原理
  6. 码流分析工具ffprobe.exe介绍
  7. python 中 pandas 忽略警告错误
  8. Webx3 FrameWork 教程
  9. OpenCV函数汇总(所有函数)---219个函数
  10. 数字后端文件——SDF文件格式实例