黑马程序员入学Java知识总结
J2SE部分,Java高新技术部分,8K面试题部分等黑马入学要求的知识点总结!
一、黑马程序员—java概述与基础知识 ............................................................................... 5
1、何为编程? ................................................................................................................. 5 2、Java语言概述,历史、特点 ..................................................................................... 6 3、什么是跨平台性?原理是什么?JVM ..................................................................... 6 4、Jre和Jdk的区别? ...................................................................................................... 7 5、java虚拟机JVM ........................................................................................................ 7 6、 Java程序运行机制 ................................................................................................... 7 7、 学习java注意的地方 .............................................................................................. 7 8、Java语法格式 ............................................................................................................. 8 9、代码注释:单行//,多行/* */,文档注释/** */ ...................................................... 8 10、Java中的标识符 ....................................................................................................... 8 11、java中的常量和变量 ............................................................................................... 9 12、Java成员变量和局部变量 ....................................................................................... 9 14、基本数据类型转换之向上转型和向下转换 ......................................................... 11 15、Java的运算符 ......................................................................................................... 12 16、表达式和三目运算符 ............................................................................................. 12 17、程序流程控制 ......................................................................................................... 13 18、三大循环结构: ........................................................................................................ 15 19、嵌套循环与流程控制 ............................................................................................. 17 二、黑马程序员—方法与数组 ............................................................................................. 19
1、什么是方法(Method)? ...................................................................................... 19 2、 Java中方法的格式: ............................................................................................. 19 3、方法里的属性 ........................................................................................................... 20 4、方法特点 ................................................................................................................... 20 5、什么是方法的重载(Overload)? ........................................................................ 21 6、 可变参数 ................................................................................................................. 22 7、数组简介: ............................................................................................................... 22 8、一维数组的声明与初始化: ................................................................................... 23 9、数组的使用: ........................................................................................................... 24 10、分配内存空间 ......................................................................................................... 26 11、二维数组: ............................................................................................................. 27 12、操作数组的工具类-Arrays ..................................................................................... 27 13、Java5新特性对数组的支持: ............................................................................... 28 三、黑马程序员—面向对象(1) ....................................................................................... 29
1、什么叫面向对象? ................................................................................................... 29 2、类 ............................................................................................................................... 29
3、构造方法 ................................................................................................................... 30 4、static关键字 ............................................................................................................. 32 5、匿名对象 ................................................................................................................... 33 6、this关键字 ................................................................................................................ 33 7、面向对象之封装 ....................................................................................................... 33 8、访问修饰符 ............................................................................................................... 34 9、类的设计分析 ........................................................................................................... 34 10、面向对象之继承 ..................................................................................................... 35 11、子类访问父类和方法覆写 ..................................................................................... 36 12、super关键字和调用父类构造方法 ....................................................................... 36 13、面向对象之多态 ..................................................................................................... 38 14、引用变量类型转换 ................................................................................................. 39 四、黑马程序员—面向对象(2) ....................................................................................... 40
1、基本数据类型的包装类 ........................................................................................... 40 2、基本数据类型和包装类相互转换 ........................................................................... 41 3、基本类型和String之间的转换 ............................................................................... 41 4、Object类 ................................................................................................................... 42 5、代码块 ....................................................................................................................... 42 6、构造方法的私有化 ................................................................................................... 44 7、 Singleton模式(单例模式) 饿汉式和懒汉式 ........................................................ 45 8、final 关键字 ............................................................................................................. 47 9、抽象类 ....................................................................................................................... 47 10、抽象类的体现-模板模式 ....................................................................................... 49 11、接口(interface) ........................................................................................................ 51 12、接口的使用 ............................................................................................................. 52 13、面向接口编程之制定标准和简单工厂模式 ......................................................... 53 14、面向接口编程之适配器模式 ................................................................................. 55 15、 接口和抽象类的比较 ........................................................................................... 56 16、匿名内部类 ............................................................................................................. 57 17、枚举类 ..................................................................................................................... 57 五、黑马程序员—异常处理和常用类 ................................................................................. 60
1、异常 ........................................................................................................................... 60 2、异常处理格式 ........................................................................................................... 60 3、多异常处理 ............................................................................................................... 61 4、异常的分类 ............................................................................................................... 62 5、声明异常(throws) ................................................................................................ 63 6、throw ......................................................................................................................... 63 8、throw和catch同时使用 .......................................................................................... 64 9、常用类 ....................................................................................................................... 65 10、String方法 .............................................................................................................. 67 11、StringBuffer 与 StringBuilder ............................................................................... 69 12、Math和Random和UUID ..................................................................................... 72 13、Date和Calendar ..................................................................................................... 74 14、System ..................................................................................................................... 77
六、黑马程序员—线程技术 ................................................................................................. 78
1、进程和线程 ............................................................................................................... 78 2、创建线程方式 ........................................................................................................... 79 3、两种进程创建方式比较 ........................................................................................... 80 4、线程的生命周期 ....................................................................................................... 82 5、控制线程 ................................................................................................................... 83 6、多线程安全问题 ....................................................................................................... 85 7、多线程安全问题的解决方法 ................................................................................... 86 8、线程通信 ................................................................................................................... 90 七、黑马程序员—集合框架(1) ....................................................................................... 93
1、集合类 & 容器 ...................................................................................................... 93 2、Collection接口 ......................................................................................................... 94 3、Iterator接口 .............................................................................................................. 95 4、集合遍历输出方式 ................................................................................................... 96 6、TreeSet ...................................................................................................................... 99 7、List接口 ................................................................................................................. 103 8、List接口中常用类.................................................................................................. 105 9、Map接口 ................................................................................................................ 108 八、黑马程序员—集合框架(2) ..................................................................................... 111
1、Collections类 ......................................................................................................... 111 2、Arrays ...................................................................................................................... 113 3、泛型(Generic) ......................................................................................................... 114 4、泛型的使用 ............................................................................................................. 114 5、声明多个泛型类型和通配符 ................................................................................. 119 6、泛型的上限与下限 ................................................................................................. 119 7、泛型接口和方法 ..................................................................................................... 122 8、泛型的嵌套(map例子) ..................................................................................... 122 九、黑马程序员—IO操作(1) ........................................................................................ 123
1、IO的概述和File方法 ........................................................................................... 124 2、递归(Recursion) ...................................................................................................... 125 3、文件过滤器 java.io.FilenameFilter ........................................................................ 127 4、流 ............................................................................................................................. 128 5、操作流的步骤(重点) ......................................................................................... 129 6、字节流和字符流 ..................................................................................................... 130 7、文件拷贝 ................................................................................................................. 132 8、字节→字符转换流 ................................................................................................. 134 9、自动关闭资源的try语句 ...................................................................................... 135 十、IO文件操作(2) ....................................................................................................... 136
1、内存操作流 ............................................................................................................. 136 2、打印流 ..................................................................................................................... 138 3、格式化输出 ............................................................................................................. 139 4、标准流 ..................................................................................................................... 141 5、Scanner(简单文本扫描器) ..................................................................................... 142 6、缓冲流 ..................................................................................................................... 144
7、合并流(SequenceInputStream) .......................................................................... 146 十一、黑马程序员—网络编程 ........................................................................................... 147
1、什么是网络编程? ................................................................................................. 147 2、网络通讯要素 ......................................................................................................... 147 3、TCP和UDP的联系和用途 .................................................................................. 148 4、InetAddress与Socket............................................................................................. 149 5、UDP传输 ................................................................................................................ 150 6、TCP传输 ................................................................................................................ 154 8、小例子 ..................................................................................................................... 160 十二、黑马程序员—反射机制 ........................................................................................... 162
1、反射的概念 ............................................................................................................. 162 2、获得Class对象 ...................................................................................................... 164 3、九个预定义Class对象 .......................................................................................... 165 4、利用Class获取类的属性信息 .............................................................................. 166 5、Class中得到构造方法Constructor、方法Method、字段Field ......................... 167 6、利用反射创建对象 ................................................................................................. 172 7、使用反射调用方法 ................................................................................................. 176 8、使用反射调用可变参数方法 ................................................................................. 177 9、使用反射操作字段 ................................................................................................. 178 10、反射和泛型-反射来获取泛型信息...................................................................... 180 十三、黑马程序员—反射机制 ........................................................................................... 182
1、GUI(图形用户界面) ............................................................................................... 182 2、布局管理器 ............................................................................................................. 183 3、事件监听机制组成 ................................................................................................. 184 4、Dialog ...................................................................................................................... 191 5、菜单 ......................................................................................................................... 194 1、Eclipse的使用技巧 ................................................................................................ 198 2、静态导入(1.5特性,好处是不用写类名) ....................................................... 200 3、可变参数 ................................................................................................................. 201 5、基本数据类型的自动拆箱与装箱 ......................................................................... 202 6、枚举 ......................................................................................................................... 202 7、反射实现框架功能 ................................................................................................. 204 1JavaBean ............................................................................................ 206 2、内省综合案例和Beanutils工具包 ........................................................................ 206 3、注解(Annotation) ............................................................................................... 209 4、泛型 ......................................................................................................................... 212 1、类加载器 ................................................................................................................. 216 2、类加载器的委托机制 ............................................................................................. 217 3、一个类加载器的高级问题分析 ............................................................................. 221 4、 代理的概念与作用 ............................................................................................... 221 5、动态代理技术 ......................................................................................................... 223 6、分析JVM动态生成的类 ....................................................................................... 223 8、 实现类似spring的可配置的AOP框架 ............................................................. 230 黑马程序员——面试题之交通灯管理系统 ............................................................... 234
1、面向对象的分析与设计 ......................................................................................... 235 2、Road类的编写 ....................................................................................................... 236 3、Lamp类的编写 ...................................................................................................... 237 4、LampController类的编写 ...................................................................................... 240 5、MainClass类的编写 ............................................................................................... 241 黑马程序员——面试题之银行业务系统 ................................................................... 242 1、需求 ......................................................................................................................... 243 2、需求分析 ................................................................................................................. 243 3、NumberManager类 ................................................................................................ 244 4、NumberMachine类 ................................................................................................. 245 5、CustomerType枚举类 ............................................................................................ 245 6、ServiceWindow类 .................................................................................................. 246 7、MainClass类与Constants类 ................................................................................. 249
一、黑马程序员—java概述与基础知识
1、何为编程?
编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果