目录 第1章Java概述1 1.1初识Java1 1.1.1Java的发展1 1.1.2Java的特点2 1.2Java开发环境3 1.2.1Java运行机制3 1.2.2搭建开发环境4 1.2.3第一个Java程序6 1.3Eclipse集成开发环境8 1.3.1Eclipse简介8 1.3.2安装Eclipse9 1.3.3建立Java项目10 1.4Java命名规范13 1.5小结13 1.6习题13 第2章Java语言基础15 2.1Java程序结构15 2.2注释及编程风格17 2.2.1注释17 2.2.2Java编程风格17 2.3Java符号集18 2.3.1Java符号系统18 2.3.2标识符19 2.3.3关键字20 2.4数据类型21 2.4.1数据类型概念21 2.4.2常量22 2.4.3变量252.4.4整数类型26 2.4.5浮点数类型26 2.4.6字符类型27 2.4.7布尔类型28 2.5数据类型转换29 2.5.1自动转换29 2.5.2强制转换30 2.5.3字符串的转换30 2.6表达式与语句31 2.6.1算术表达式31 2.6.2赋值表达式32 2.6.3关系表达式33 2.6.4逻辑表达式34 2.6.5表达式语句35 2.6.6运算符的优先级35 2.7小结36 2.8习题36 〖3〗Java编程基础(微课版)目录〖3〗第3章程序流程控制39 3.1选择结构39 3.1.1if语句39 3.1.2switch语句42 3.1.3条件运算符45 3.2循环结构46 3.2.1while语句46 3.2.2do…while语句47 3.2.3for语句50 3.2.4嵌套循环51 3.3跳转语句53 3.3.1break语句53 3.3.2continue语句54 3.3.3return语句55 3.4小结56 3.5习题56 第4章数组58 4.1一维数组58 4.1.1声明一维数组58 4.1.2初始化一维数组59 4.1.3使用一维数组60 4.2二维数组62 4.2.1声明与初始化二维数组62 4.2.2使用二维数组63 4.3foreach语句65 4.4不规则数组66 4.5小结67 4.6习题68 第5章方法70 5.1传统方法70 5.1.1方法的概念70 5.1.2定义及调用传统方法70 5.1.3参数传递方式72 5.2形参长度可变方法73 5.2.1形参长度可变方法的概念73 5.2.2定义形参长度可变方法73 5.2.3调用形参长度可变方法74 5.3方法重载75 5.4递归方法77 5.5小结78 5.6习题78 第6章面向对象编程(上)80 6.1软件开发方法80 6.1.1结构化开发方法81 6.1.2面向对象开发方法81 6.2类与对象84 6.2.1定义类84 6.2.2创建使用对象86 6.2.3成员方法与数据成员90 6.3构造方法92 6.3.1构造方法的概念92 6.3.2使用构造方法93 6.3.3默认构造方法95 6.4匿名对象95 6.5封装性96 6.5.1封装的概念96 6.5.2private关键字97 6.5.3setter和getter方法99 6.6this关键字101 6.6.1this作用101 6.6.2引用数据成员102 6.6.3引用成员方法103 6.6.4调用构造方法104 6.6.5this本质105 6.6.6对象比较106 6.7综合案例108 6.7.1分析数据成员108 6.7.2分析构造方法和成员方法109 6.7.3画类图109 6.7.4编码测试110 6.8static关键字111 6.8.1static作用111 6.8.2修饰数据成员112 6.8.3修饰成员方法114 6.8.4修饰代码块117 6.8.5main方法119 6.8.6static综合应用120 6.9对象数组122 6.10内部类125 6.10.1内部类概念125 6.10.2成员内部类125 6.10.3静态内部类127 6.10.4局部内部类128 6.11小结128 6.12习题129 第7章面向对象编程(中)131 7.1继承131 7.1.1继承的概念131 7.1.2创建子类134 7.1.3方法覆写与属性覆盖137 7.2super关键字140 7.3final关键字144 7.3.1修饰类144 7.3.2修饰成员方法144 7.3.3修饰数据成员145 7.4instanceof运算符146 7.5抽象类147 7.5.1抽象类的概念147 7.5.2定义抽象类148 7.5.3抽象类的应用150 7.6接口152 7.6.1接口的概念152 7.6.2定义接口152 7.6.3应用接口156 7.7对象多态性160 7.7.1多态的概念160 7.7.2实现多态161 7.7.3对象转型163 7.7.4方法重载和对象多态的区别164 7.8对象多态案例166 7.9匿名内部类169 7.10小结171 7.11习题171 第8章面向对象编程(下)173 8.1类之间的6种关系173 8.1.1继承关系174 8.1.2实现关系174 8.1.3依赖关系175 8.1.4关联关系176 8.1.5聚合关系178 8.1.6组合关系181 8.2单例模式183 8.2.1单例模式的概念183 8.2.2两种单例模式184 8.2.3单例模式案例185 8.3简单工厂模式186 8.3.1简单工厂模式概念186 8.3.2简单工厂模式类图186 8.3.3简单工厂模式案例187 8.4小结189 8.5习题189 第9章包及访问控制权限192 9.1包192 9.1.1包的概念192 9.1.2定义包192 9.1.3使用包194 9.1.4常见包197 9.2访问控制权限197 9.3小结199 9.4习题199 第10章异常处理200 10.1基本概念200 10.2异常处理机制202 10.2.1异常处理方式202 10.2.2异常类结构203 10.3try…catch…finally语句205 10.4throws关键字209 10.5throw语句及自定义异常211 10.5.1throw语句211 10.5.2自定义异常211 10.6异常综合案例212 10.7小结213 10.8习题214 第11章泛型216 11.1基本概念216 11.2泛型类218 11.2.1定义泛型类218 11.2.2指定多个类型参数219 11.2.3泛型继承220 11.3通配符221 11.4泛型接口223 11.4.1定义泛型接口223 11.4.2实现泛型接口223 11.5泛型方法225 11.6受限泛型227 11.6.1泛型上限227 11.6.2泛型下限228 11.7小结229 11.8习题229 第12章常用类231 12.1包装类231 12.1.1包装类的概念231 12.1.2装箱与拆箱232 12.1.3包装类的应用233 12.2字符串类233 12.2.1String类233 12.2.2StringBuffer类235 12.2.3StringBuilder类237 12.3Object类237 12.3.1Object类简介237 12.3.2常用方法238 12.3.3接收任意对象241 12.4Runtime类243 12.5System类244 12.5.1System类简介244 12.5.2System类应用244 12.5.3垃圾回收对象246 12.6日期类247 12.6.1Date类247 12.6.2Calendar类247 12.6.3DateFormat类248 12.6.4SimpleDateFormat类250 12.7Math类252 12.8Random类252 12.9数值格式化类253 12.9.1NumberFormat类253 12.9.2DecimalFormat类254 12.10处理大数256 12.10.1BigInteger类256 12.10.2BigDecimal类257 12.11克隆接口Cloneable258 12.12Arrays类262 12.13比较接口263 12.13.1Comparable接口264 12.13.2Comparator接口265 12.14正则表达式267 12.14.1正则表达式简介267 12.14.2Pattern类和Matcher类267 12.14.3String类对正则表达式的支持270 12.15小结271 12.16习题272 第13章I/O系统274 13.1概述274 13.1.1I/O模型274 13.1.2I/O类结构276 13.2File类278 13.2.1File类简介278 13.2.2File类的应用278 13.3字节流281 13.3.1字节流类281 13.3.2FileInputStream类和FileOutputStream类282 13.3.3ByteArrayInputStream类和ByteArrayOutputStream类287 13.3.4PrintStream类288 13.4字符流289 13.4.1字符流类289 13.4.2FileReader类和FileWriter类290 13.4.3CharArrayReader类和CharArrayWriter类293 13.4.4PrintWriter类293 13.5缓冲流295 13.5.1字符缓冲流295 13.5.2字节缓冲流298 13.6字节流与字符流转换302 13.6.1转换机制302 13.6.2InputStreamReader类和OutputStreamWriter类302 13.7随机存取类RandomAccessFile305 13.7.1RandomAccessFile类简介305 13.7.2RandomAccessFile类读取数据306 13.7.3RandomAccessFile类输出数据307 13.8Scanner类309 13.8.1Scanner类简介309 13.8.2Scanner类应用309 13.9System类对I/O的支持311 13.9.1System.out312 13.9.2System.in312 13.9.3System.err313 13.9.4重定向I/O313 13.10数据流314 13.10.1DataOutputStream类314 13.10.2DataInputStream类316 13.11对象序列化318 13.11.1序列化简介318 13.11.2ObjectOutputStream类320 13.11.3ObjectInputStream类321 13.11.4Externalizable接口323 13.11.5transient关键字325 13.11.6序列化数组326 13.12新I/O327 13.12.1NIO简介328 13.12.2Buffer328 13.12.3Channel331 13.13小结333 13.14习题333 第14章集合336 14.1概述336 14.1.1集合的概念336 14.1.2集合框架337 14.1.3Collection接口338 14.1.4Iterator接口339 14.2Set接口339 14.2.1HashSet类339 14.2.2TreeSet类343 14.3List接口346 14.3.1ArrayList类347 14.3.2ListIterator接口349 14.3.3LinkedList类351 14.3.4Queue接口352 14.3.5Stack类353 14.4Map接口354 14.4.1Map简介354 14.4.2Map.Entry接口356 14.4.3HashMap类356 14.4.4TreeMap类359 14.4.5输出Map接口362 14.5属性类Properties363 14.5.1Properties类简介363 14.5.2Properties类应用364 14.6集合工具类Collections366 14.7小结368 14.8习题369 第15章JDBC编程372 15.1JDBC简介372 15.1.1JDBC概述372 15.1.2JDBC编程步骤374 15.1.3JDBC主要类和接口374 15.2连接数据库375 15.2.1MySQL简介375 15.2.2连接MySQL服务器376 15.3查询数据库379 15.3.1数据库操作环境379 15.3.2ResultSet接口380 15.3.3查询案例380 15.4操纵数据库383 15.4.1插入记录383 15.4.2修改记录385 15.4.3删除记录386 15.5PreparedStatement接口387 15.5.1PreparedStatement接口的优点387 15.5.2PreparedStatement接口的应用案例388 15.6小结392 15.7习题393 第16章注解395 16.1注解简介395 16.23种标准注解395 16.2.1@Override396 16.2.2@SuppressWarnings396 16.2.3@Deprecated397 16.3自定义注解398 16.44种元注解400 16.4.1@Target400 16.4.2@Retention402 16.4.3@Documented403 16.4.4@Inherited403 16.5小结404 16.6习题404 第17章图形用户界面406 17.1概述406 17.1.1图形用户界面简介406 17.1.2AWT407 17.1.3Swing409 17.2JFrame容器411 17.3基本组件413 17.3.1JLabel413 17.3.2JButton414 17.3.3JTextField416 17.4布局管理器418 17.4.1FlowLayout418 17.4.2BorderLayout419 17.4.3GridLayout421 17.4.4绝对定位422 17.5其他容器424 17.5.1JPanel424 17.5.2JSplitPane427 17.5.3JTabbedPane429 17.6事件处理431 17.6.1基本概念431 17.6.2事件处理机制434 17.6.3窗体事件435 17.6.4动作事件437 17.6.5键盘事件440 17.6.6鼠标事件442 17.6.7适配器445 17.7其他常用组件448 17.7.1JRadioButton448 17.7.2JCheckBox450 17.7.3JComboBox452 17.7.4JList454 17.7.5菜单456 17.7.6JTable460 17.7.7JFileChooser464 17.7.8树467 17.8小结470 17.9习题471 第18章反射473 18.1概述473 18.2Class类474 18.3获取类结构475 18.3.1获取父类477 18.3.2获取接口478 18.3.3获取构造方法479 18.3.4获取成员方法480 18.3.5获取数据成员481 18.4调用方法483 18.4.1调用构造方法483 18.4.2调用成员方法484 18.4.3调用setter和getter方法485 18.5访问数据成员487 18.6小结488 18.7习题488 第19章多线程490 19.1概述490 19.1.1进程与线程490 19.1.2线程生命周期492 19.2多线程实现方式493 19.2.1继承Thread类493 19.2.2实现Runnable接口495 19.3线程常用方法497 19.3.1基本方法497 19.3.2强制执行498 19.3.3线程礼让500 19.4线程同步501 19.4.1同步概念501 19.4.2同步代码块502 19.4.3同步方法503 19.4.4同步锁505 19.5死锁507 19.6生产者与消费者问题509 19.7小结512 19.8习题512 第20章网络编程515 20.1网络编程基础515 20.1.1InetAddress类515 20.1.2URL类517 20.1.3URLConnection类519 20.2TCP编程521 20.2.1Socket通信机制521 20.2.2ServerSocket类与Socket类522 20.2.3TCP编程案例522 20.3UDP编程526 20.3.1UDP通信机制526 20.3.2DatagramPacket类与DatagramSocket类526 20.3.3UDP编程案例527 20.4小结531 20.5习题531