返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • Java 开发从入门到精通 第2版 扶松柏,王洋,陈小玉 著 专业科技 文轩网
  • 新华书店正版
    • 作者: 扶松柏,王洋,陈小玉著
    • 出版社: 人民邮电出版社
    • 出版时间:2019-09-01 00:00:00
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    文轩网图书旗舰店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

         https://product.suning.com/0070067633/11555288247.html

     

    商品参数
    • 作者: 扶松柏,王洋,陈小玉著
    • 出版社:人民邮电出版社
    • 出版时间:2019-09-01 00:00:00
    • 版次:2
    • 印次:1
    • 印刷时间:2019-09-01
    • 字数:1119千字
    • 页数:648
    • 开本:16开
    • 装帧:平装
    • ISBN:9787115504104
    • 国别/地区:中国
    • 版权提供:人民邮电出版社

    Java 开发从入门到精通 第2版

    作  者:扶松柏,王洋,陈小玉 著
    定  价:109
    出 版 社:人民邮电出版社
    出版日期:2019年09月01日
    页  数:648
    装  帧:平装
    ISBN:9787115504104
    主编推荐

     

    内容简介

    本书专门介绍Java编程,主要内容包括:Java基础知识、Java语法基础、条件语句、循环语句、数组、Java面向对象编程、集合、常用的类库、泛型、异常处理、I/O文件处理和流程、AWT、Swing、JavaFX基础知识、UI组件、事件处理程序、基于JavaFX框架的Web和多媒体开发、数据库编程、网络与通信编程、多线程和进程等。本书适合Java开发人员阅读,也适合计算机相关专业的师生阅读。

    作者简介

     

    精彩内容

    目录
    第1章计算机基础和Java开发入门1
    1.1计算机基础2
    1.1.1中央处理器2
    1.1.2比特和字节2
    1.1.3二进制3
    1.1.4编码格式3
    1.2初识Java4
    1.2.1何谓Java4
    1.2.2Java的特点5
    1.2.3Java的地位5
    1.3技术解惑6
    1.3.1对初学者的建议6
    1.3.2理解Java的垃圾回收机制6
    1.3.3充分利用JavaAPI文档7
    1.4课后练习7
    第2章第一段Java程序8
    2.1搭建Java开发环境9
    2.1.1安装JDK9
    2.1.2配置开发环境—Windows711
    2.1.3配置开发环境—Windows1011
    2.2编写第一段Java程序13
    2.2.1第一段Java代码13
    2.2.2关键字13
    2.2.3标识符14
    2.2.4注释14
    2.2.5main()方法15
    2.2.6控制台的输入和输出15
    2.3编译并运行Java程序15
    2.3.1编译Java程序15
    2.3.2运行Java程序16
    2.3.3Java11新特性:新的程序运行方式16
    2.4使用IDE工具—Eclipse17
    2.4.1Eclipse17
    2.4.2获得并安装Eclipse17
    2.4.3新建一个Eclipse项目20
    2.4.4编译并运行Eclipse项目23
    2.4.5使用Eclipse打开一个Java项目24
    2.5Java的运行机制25
    2.5.1编译型/解释型语言的运行机制25
    2.5.2Java程序则要先编译、后运行25
    2.6技术解惑26
    2.6.1遵循Java源文件的命名规则26
    2.6.2忽视系统文件的扩展名26
    2.6.3环境变量的问题26
    2.6.4大小写的问题27
    2.6.5main()方法的问题27
    2.6.6注意空格问题27
    2.6.7到底用不用IDE工具27
    2.6.8区分JRE和JDK28
    2.7课后练习28
    第3章Java语法基础29
    3.1常量和变量30
    3.1.1常量30
    3.1.2变量31
    3.2数据类型33
    3.2.1为什么要使用数据类型33
    3.2.2简单数据类型的取值范围34
    3.2.3字符型34
    3.2.4整型35
    3.2.5浮点型36
    3.2.6布尔型37
    3.3运算符38
    3.3.1算术运算符38
    3.3.2关系运算符和逻辑运算符41
    3.3.3位逻辑运算符42
    3.3.4条件运算符43
    3.3.5赋值运算符44
    3.3.6运算符的优先级45
    3.4字符串46
    3.4.1字符串的初始化46
    3.4.2String类47
    3.4.3StringBuffer类49
    3.5类型转换50
    3.5.1自动类型转换50
    3.5.2强制类型转换51
    3.6Java11新特性:新增的String函数51
    3.7技术解惑54
    3.7.1定义常量时的注意事项54
    3.7.2char类型中单引号的意义54
    3.7.3正无穷和负无穷的问题55
    3.7.4移位运算符的55
    3.8课后练习55
    第4章条件语句56
    4.1if语句详解57
    4.1.1if语句57
    4.1.2if语句的延伸58
    4.1.3有多个条件判断的if语句59
    4.2switch语句详解60
    4.2.1switch语句的形式61
    4.2.2无break的情况62
    4.2.3case语句后没有执行语句62
    4.2.4default可以不在末尾63
    4.3条件语句演练64
    4.3.1正确使用switch语句64
    4.3.2正确使用if语句64
    4.3.3switch语句的执行顺序65
    4.4技术解惑66
    4.4.1if…else语句的意义66
    4.4.2使用switch语句时的几个注意事项67
    4.4.3switch语句和if…elseif语句的选择68
    4.5课后练习68
    第5章循环语句69
    5.1循环语句70
    5.1.1for循环70
    5.1.2while循环语句72
    5.1.3do…while循环语句73
    5.2跳转语句74
    5.2.1break语句的应用74
    5.2.2return语句的应用76
    5.2.3continue语句77
    5.3技术解惑77
    5.3.1使用for循环的技巧77
    5.3.2跳转语句的选择技巧78
    5.4课后练习79
    第6章数组80
    6.1简单的一维数组81
    6.1.1声明一维数组81
    6.1.2创建一维数组81
    6.1.3初始化一维数组82
    6.2二维数组83
    6.2.1声明二维数组83
    6.2.2创建二维数组83
    6.2.3初始化二维数组84
    6.3三维数组85
    6.3.1声明三维数组86
    6.3.2创建三维数组的方法86
    6.3.3初始化三维数组86
    6.4操作数组87
    6.4.1复制数组87
    6.4.2比较数组87
    6.4.3排序数组88
    6.4.4搜索数组中的元素89
    6.4.5填充数组89
    6.4.6遍历数组90
    6.5技术解惑90
    6.5.1动态初始化数组的规则90
    6.5.2引用类型91
    6.5.3数组的初始化91
    6.6课后练习91
    第7章Java的面向对象(上)93
    7.1面向对象的基础94
    7.1.1面向对象的定义94
    7.1.2Java的面向对象编程94
    7.1.3一切皆为对象94
    7.1.4Java面向对象的几个核心概念95
    7.2创建类96
    7.2.1定义类96
    7.2.2定义属性97
    7.2.3定义方法97
    7.2.4定义构造器98
    7.3修饰符98
    7.3.1public修饰符98
    7.3.2private修饰符99
    7.3.3protected修饰符100
    7.3.4其他修饰符100
    7.4方法详解101
    7.4.1方法与函数的关系101
    7.4.2传递方法参数102
    7.4.3长度可变的方法102
    7.4.4不使用void关键字构造方法名103
    7.4.5递归方法104
    7.5使用this105
    7.6使用类和对象105
    7.6.1创建和使用对象106
    7.6.2使用静态变量和静态方法106
    7.7抽象类和抽象方法107
    7.7.1抽象类和抽象方法的基础107
    7.7.2抽象类必须有一个抽象方法108
    7.7.3抽象类的作用109
    7.8软件包110
    7.8.1软件包的定义110
    7.8.2在Eclipse中定义软件包110
    7.8.3在程序里插入软件包111
    7.9技术解惑112
    7.9.1在Java中传递引用类型的实质112
    7.9.2掌握this的好处113
    7.9.3推出抽象方法的原因114
    7.9.4使用抽象类的时机114
    7.9.5static修饰的作用115
    7.9.6数组内是同一类型的数据115
    7.10课后练习115
    第8章Java的面向对象(中)116
    8.1类的继承117
    8.1.1继承的定义117
    8.1.2父类和子类117
    8.1.3调用父类的构造方法118
    8.1.4访问父类的属性和方法119
    8.1.5多重继承120
    8.1.6重写父类的方法121
    8.2重写和重载122
    8.2.1重写122
    8.2.2重载124
    8.3隐藏和封装125
    8.3.1Java中的封装125
    8.3.2访问控制符125
    8.3.3Java中的包127
    8.3.4import129
    8.4接口129
    8.4.1定义接口129
    8.4.2接口里的常量和方法130
    8.4.3引用接口132
    8.4.4接口间的继承134
    8.4.5接口的私有方法134
    8.5技术解惑137
    8.5.1重写方法的注意事项137
    8.5.2重写和重载的区别138
    8.5.3举例理解类的意义138
    8.5.4Java包的一些规则138
    8.5.5探讨package和import机制138
    8.5.6接口编程的机理139
    8.5.7接口和抽象类的区别和联系140
    8.6课后练习141
    第9章Java的面向对象(下)142
    9.1构造器详解143
    9.1.1初始化构造器143
    9.1.2构造器重载143
    9.1.3调用父类构造器144
    9.2多态145
    9.2.1多态的定义145
    9.2.2演示Java中的多态147
    9.2.3使用instanceof运算符148
    9.3引用类型149
    9.3.14种引用类型150
    9.3.2引用变量的强制类型转换151
    9.4组合152
    9.5初始化块154
    9.5.1初始化块概述154
    9.5.2静态初始化块155
    9.6包装类156
    9.7final修饰符157
    9.7.1用final修饰变量158
    9.7.2final方法159
    9.8内部类160
    9.8.1内部类概述160
    9.8.2非静态内部类160
    9.8.3成员内部类162
    9.8.4局部内部类162
    9.8.5静态内部类163
    9.9匿名类163
    9.9.1定义匿名类164
    9.9.2匿名内部类164
    9.9.3匿名内部类使用final形参165
    9.10枚举类166
    9.10.1枚举类的方法166
    9.10.2模拟枚举类167
    9.10.3枚举类型168
    9.11Java11新特性:嵌套访问控制170
    9.12技术解惑172
    9.12.1构造器和方法的区别172
    9.12.2this在构造器中的作用173
    9.12.3子类构造器调用父类构造器的情况173
    9.12.4强制类型转换的局限性174
    9.12.5继承和组合的选择174
    9.12.6发生异常的原因174
    9.12.7用final修饰基本类型和引用类型变量之间的区别174
    9.12.8类的4种权限174
    9.12.9手工实现枚举类的缺点175
    9.13课后练习175
    第10章集合176
    10.1Java中的集合类177
    10.2Collection接口和Iterator接口178
    10.2.1Collection接口概述178
    10.2.2Iterator接口概述179
    10.2.3使用Collection接口中的方法来操作集合里的元素179
    10.3Set接口180
    10.3.1Set接口概述180
    10.3.2使用HashSet183
    10.3.3使用TreeSet类184
    10.3.4使用EnumSet类186
    10.4List接口188
    10.4.1List接口概述188
    10.4.2根据索引操作集合内的元素190
    10.4.3使用ArrayList和Vector类191
    10.5Map接口192
    10.5.1Map接口中的方法192
    10.5.2Map接口中的接口和类193
    10.5.3使用HashMap和Hashtable实现类196
    10.5.4使用SortedMap接口和TreeMap实现类197
    10.5.5使用WeakHashMap类199
    10.5.6使用IdentityHashMap类200
    10.5.7使用EnumMap类201
    10.6Queue接口201
    10.6.1LinkedList类202
    10.6.2PriorityQueue类203
    10.7集合工具类Collections203
    10.7.1排序操作203
    10.7.2查找和替换操作204
    10.8其他集合类205
    10.8.1Stack类205
    10.8.2属性类Properties206
    10.9创建不可变的List、Set和Map(Java9新增功能)209
    10.9.1Java9以前版本的解决方案209
    10.9.2Java9版本的解决方案209
    10.10使用var类型推断(Java10新增功能)211
    10.11技术解惑212
    10.11.1Collection集合元素的改变问题212
    10.11.2深入理解HashSet212
    10.11.3使用类EnumSet的注意事项213
    10.11.4ArrayList和Vector的区别213
    10.11.5TreeMap判断两个元素相等的标准213
    10.11.6分析Map类的性能213
    10.11.7LinkedList、ArrayList、Vector的性能问题214
    10.11.8用swap()方法交换集合中两个位置的内容214
    10.12课后练习214
    第11章常用的类库215
    11.1StringBuffer类216
    11.1.1StringBuffer类概述216
    11.1.2使用StringBuffer类216
    11.2Runtime类218
    11.2.1Runtime类概述218
    11.2.2使用Runtime类218
    11.3程序国际化220
    11.3.1国际化基础220
    11.3.2Locale类221
    11.3.3ResourceBundle类221
    11.3.4处理动态文本222
    11.3.5使用类代替资源文件223
    11.4System类224
    11.4.1使用System类224
    11.4.2垃圾对象的回收225
    11.5Date类225
    11.5.1使用Date类226
    11.5.2使用Calendar类226
    11.5.3使用DateFormat类227
    11.5.4使用SimpleDateFormat类228
    11.6Math类229
    11.7Random类230
    11.8NumberFormat类231
    11.9BigInteger类232
    11.10BigDecimal类233
    11.11复制对象235
    11.12Arrays类235
    11.13Comparable接口236
    11.13.1Comparable接口概述236
    11.13.2使用Comparable接口238
    11.13.3使用Comparator接口238
    11.14Observable类和Observer接口239
    11.15正则表达式241
    11.15.1正则表达式概述241
    11.15.2Java中的正则表达式类242
    11.15.3使用Pattern类和Matcher类243
    11.15.4String类和正则表达式243
    11.15.5Java9新增的正则表达式方法244
    11.15.6Java11新特性:正则表达式参数的局部变量语法245
    11.16Timer类和TimerTask类245
    11.16.1Timer类246
    11.16.2TimerTask类246
    11.17技术解惑247
    11.17.1StringBuffer和String的异同247
    11.17.2通过System类获取本机的全部环境属性247
    11.17.3分析对象的生命周期248
    11.17.4若未实现Comparable接口会出现异常248
    11.17.5正则表达式的好处248
    11.18课后练习249
    第12章泛型250
    12.1泛型概述251
    12.1.1泛型的优点251
    12.1.2类型检查251
    12.1.3使用泛型253
    12.2泛型详解253
    12.2.1定义泛型接口和类253
    12.2.2派生子类254
    12.2.3并不存在泛型类255
    12.3类型通配符255
    12.3.1设置类型实参的上限256
    12.3.2设置类型形参的上限257
    12.3.3设置通配符的下限258
    12.4泛型方法258
    12.5泛型接口260
    12.6泛型继承261
    12.6.1以泛型类为父类261
    12.6.2以非泛型类为父类262
    12.7强制类型转换263
    12.8擦除263
    12.8.1擦除的定义263
    12.8.2擦除带来的问题265
    12.9技术解惑266
    12.9.1Java语言中泛型的本质266
    12.9.2泛型方法和类型通配符的区别267
    12.9.3泛型类的继承规则268
    12.9.4类型擦除和泛型特性之间的联系268
    12.9.5使用原则和注意事项268
    12.10课后练习268
    第13章异常处理270
    13.1异常概述271
    13.1.1认识异常271
    13.1.2Java提供的异常处理类271
    13.2异常处理方式272
    13.2.1try…catch语句272
    13.2.2处理多个异常273
    13.2.3finally语句274
    13.2.4访问异常信息275
    13.3抛出异常276
    13.3.1使用throws抛出异常276
    13.3.2使用throw抛出异常278
    13.4自定义异常279
    13.4.1Throwable类及其子类279
    13.4.2使用Throwable类自定义异常281
    13.5Checked异常和Runtime异常的区别282
    13.5.1机制上的差异282
    13.5.2逻辑上的差异283
    13.6技术解惑283
    13.6.1使用嵌套异常处理是更合理的方法283
    13.6.2区别throws关键字和throw关键字284
    13.6.3异常类的继承关系284
    13.6.4子类Error和Exception284
    13.7课后练习284
    第14章I/O文件处理和流处理285
    14.1JavaI/O概述286
    14.2File类286
    14.2.1File类中的方法286
    14.2.2使用File类操作文件287
    14.3RandomAccessFile类290
    14.3.1RandomAccessFile类的常用方法290
    14.3.2使用RandomAccessFile类291
    14.4字节流与字符流292
    14.4.1字节流类和字符流类292
    14.4.2使用字节流292
    14.4.3使用字符流296
    14.5字节转换流299
    14.6内存操作流299
    14.7管道流301
    14.8打印流302
    14.8.1打印流概述302
    14.8.2使用打印流303
    14.9System类303
    14.9.1System.out304
    14.9.2System.err304
    14.9.3System.in305
    14.9.4输入/输出重定向305
    14.10BufferedReader类307
    14.10.1BufferedReader类概述307
    14.10.2使用BufferedReader类308
    14.11Scanner类309
    14.11.1Scanner类概述310
    14.11.2使用Scanner类310
    14.12数据操作流312
    14.12.1DataOutputStream类313
    14.12.2DataInputStream类313
    14.13合并流315
    14.14压缩流316
    14.14.1ZIP压缩输入/输出流概述316
    14.14.2ZipOutputStream类316
    14.14.3ZipFile类319
    14.14.4ZipInputStream类319
    14.15回退流320
    14.16字符编码321
    14.16.1得到本机编码322
    14.16.2产生乱码322
    14.17对象序列化323
    14.17.1Serializable接口323
    14.17.2对象输出流ObjectOutputStream324
    14.17.3对象输入流ObjectInputStream324
    14.17.4Externalizable接口325
    14.17.5关键字transient326
    14.17.6序列化一组对象327
    14.18Buffer类328
    14.18.1Buffer类中的主要方法329
    14.18.2使用Buffer类330
    14.19Channel类331
    14.20使用流API333
    14.20.1Java8中的流333
    14.20.2Java9中新增的Stream335
    14.21使用try…with…resources语句337
    14.21.1try…with…resources语句概述337
    14.21.2try…with…resources的改进(Java9新增功能)338
    14.22技术解惑341
    14.22.1使用File.separator表示分隔符341
    14.22.2综合演练创建和删除文件341
    14.22.3File类的复杂用法342
    14.22.4字节流和字符流的区别342
    14.22.5System.err和System.out的选择344
    14.22.6使用I/O实现一个简单的菜单效果344
    14.22.7对象序列化和对象反序列化操作时的版本兼容性问题345
    14.22.8不能让所有的类都实现Serializable接口346
    14.23课后练习346
    第15章AWT的奇幻世界347
    15.1GUI框架概述348
    15.1.1AWT框架348
    15.1.2Swing框架348
    15.1.3JavaFX框架348
    15.2AWT框架的结构349
    15.3容器350
    15.3.1容器概述350
    15.3.2容器中的常用组件351
    15.4布局管理器352
    15.4.1FlowLayout布局353
    15.4.2BorderLayout布局353
    15.4.3GridLayout布局355
    15.4.4GridBagLayout布局356
    15.4.5CardLayout布局356
    15.4.6BoxLayout布局管理器357
    15.5AWT中的常用组件357
    15.5.1AWT组件概览358
    15.5.2使用组件358
    15.6AWT中的对话框360
    15.6.1AWT对话框概述360
    15.6.2使用AWT对话框360
    15.7使用图像多分辨率API361
    15.7.1图像多分辨率概述361
    15.7.2图像多分辨率API详解361
    15.7.3图像多分辨率API实战362
    15.8javax.imageio.plugins.tiff364
    15.8.1ImageIO模块概述364
    15.8.2TIFF接口366
    15.9技术解惑367
    15.9.1使用绝对定位367
    15.9.2对事件处理模型的简化368
    15.9.3使用AWT开发动画368
    15.9.4图片缩放在现实中的意义368
    15.9.5AWT和Swing是窗体编程的两个主角368
    15.9.6AWT中的菜单组件不能创建图标菜单368
    15.9.7Java的事件模型368
    15.9.8事件和事件监听器370
    15.10课后练习372
    第16章Swing373
    16.1Swing概述374
    16.2Swing的组件375
    16.2.1Swing组件的层次结构375
    16.2.2Swing实现AWT组件376
    16.3拖放处理380
    16.4实现进度条效果381
    16.4.1创建一个进度条381
    16.4.2使用ProgressMonitor创建进度条对话框383
    16.5技术解惑383
    16.5.1贯穿Java开发的MVC模式383
    16.5.2Swing的优势383
    16.5.3使用JSlider和BoundedRangeModel测试滑动条效果384
    16.5.4使用ListCellRenderer改变窗体中列表项的外观385
    16.6课后练习385
    第17章JavaFX开发基础386
    17.1JavaFX概述387
    17.1.1JavaFX的特色387
    17.1.2安装e(fx)clipse插件387
    17.1.3认识第一个JavaFX程序389
    17.2JavaFX界面结构389
    17.2.1窗体结构剖析389
    17.2.2属性绑定391
    17.2.3样式属性和角度属性392
    17.3使用Color类设置颜色393
    17.3.1设置颜色的方法393
    17.3.2使用RGB方式设置颜色395
    17.3.3使用Web方式设置颜色395
    17.4绘制文字396
    17.4.1Text包概述396
    17.4.2绘制指定样式的文本397
    17.5绘制形状398
    17.5.1使用Line绘制线条398
    17.5.2使用Rectangle绘制矩形399
    17.5.3使用Circle绘制圆401
    17.5.4使用Ellipse绘制椭圆402
    17.5.5使用Arc绘制圆弧403
    17.5.6使用Polygon绘制多边形404
    17.5.7使用Polyline绘制折线405
    17.5.8使用CubicCurve绘制三次曲线406
    17.5.9使用QuadCurve绘制二次曲线407
    17.6显示图像408
    17.6.1使用Image显示图像408
    17.6.2使用ImageView显示图像409
    17.7界面布局410
    17.7.1使用Pane的画布功能411
    17.7.2使用StackPane实现特定面板功能412
    17.7.3使用FlowPane实现序列放置412
    17.7.4使用GridPane实现网格布局414
    17.7.5使用BorderPane实现区域布局415
    17.7.6使用HBox实现水平布局417
    17.7.7使用VBox实现垂直布局418
    17.8技术解惑419
    17.8.1Swing、AWT和JavaFX的区别419
    17.8.2JavaFX的属性类型419
    17.9课后练习420
    第18章使用JavaFXUI组件421
    18.1使用标签组件422
    18.1.1标签属性和方法422
    18.1.2标签组件实战演练423
    18.2使用按钮组件424
    18.2.1按钮属性和方法424
    18.2.2按钮组件实战演练425
    18.3使用复选框组件426
    18.3.1复选框属性和方法426
    18.3.2复选框组件实战演练427
    18.4使用单选按钮组件428
    18.4.1单选按钮属性和方法428
    18.4.2单选按钮组件实战演练429
    18.5使用文本框组件430
    18.5.1文本框的属性和方法430
    18.5.2文本框组件实战演练431
    18.6使用文本域组件432
    18.6.1文本域的属性和方法432
    18.6.2文本域组件实战演练432
    18.7使用选择框组件434
    18.7.1选择框的属性和方法434
    18.7.2选择框组件实战演练434
    18.8使用密码框组件435
    18.8.1密码框的属性和方法435
    18.8.2密码框组件实战演练436
    18.9使用组合框组件437
    18.9.1组合框的属性和方法437
    18.9.2组合框实战演练438
    18.10使用列表视图组件439
    18.10.1列表视图的属性和方法439
    18.10.2列表视图组件实战演练440
    18.11使用滚动条组件442
    18.11.1滚动条的属性和方法442
    18.11.2滚动条组件实战演练442
    18.12使用滑块组件444
    18.12.1滑块的属性和方法444
    18.12.2滑块组件实战演连445
    18.13使用树视图组件446
    18.13.1树视图的属性和方法446
    18.13.2树视图组件实战演练447
    18.14使用进度组件448
    18.14.1进度指示器448
    18.14.2进度条448
    18.14.3进度组件实战演练448
    18.15使用HTML编辑器组件449
    18.15.1HTML编辑器组件概述450
    18.15.2HTML编辑器组件实战演练450
    18.16使用菜单组件451
    18.16.1菜单组件概述451
    18.16.2创建菜单栏452
    18.17使用文件选择框组件453
    18.17.1文件选择框概述453
    18.17.2文件选择框组件实战演练454
    18.18使用颜色选择器组件456
    18.18.1颜色选择器概述456
    18.18.2颜色选择器组件实战演练458
    18.19技术解惑459
    18.19.1制作圆形按钮459
    18.19.2设置按钮的内容460
    18.19.3树表视图460
    18.20课后练习460
    第19章JavaFX事件处理程序461
    19.1JavaFX事件处理系统概述462
    19.1.1Java的事件模型462
    19.1.2JavaFX中的事件462
    19.1.3事件处理机制的流程463
    19.1.4事件处理465
    19.1.5事件和事件源465
    19.2使用快捷方法实现事件处理467
    19.2.1快捷方法概述467
    19.2.2处理按钮事件468
    19.3处理鼠标事件469
    19.3.1鼠标事件概述469
    19.3.2使用鼠标事件469
    19.4处理键盘事件470
    19.4.1键盘事件概述470
    19.4.2使用键盘事件471
    19.5使用事件过滤器472
    19.5.1注册和移除事件过滤器472
    19.5.2使用事件过滤器473
    19.6使用事件处理程序475
    19.6.1注册和移除事件处理程序475
    19.6.2使用事件处理程序476
    19.7使用可触摸设备的事件477
    19.7.1手势和触摸事件477
    19.7.2手势事件实战478
    19.8技术解惑483
    19.8.1实现鼠标移到按钮上按钮变大的效果483
    19.8.2实现JavaFX绑定483
    19.9课后练习483
    第20章JavaFX框架下的Web开发484
    20.1JavaFX内嵌浏览器概述485
    20.2使用WebView组件486
    20.2.1WebView组件概述486
    20.2.2WebView组件实战演练487
    20.3使用WebEngine接口488
    20.3.1WebEngine概述488
    20.3.2在JavaFX中执行JavaScript程序489
    20.3.3在Web页面中调用JavaFX程序492
    20.3.4实现弹出式窗口493
    20.4管理Web历史记录495
    20.4.1WebHistory概述495
    20.4.2网页浏览历史记录实战495
    20.5使用CSS文件496
    20.6使用FXML499
    20.6.1FXML概述499
    20.6.2FXML实战演练500
    20.7技术解惑504
    20.7.1JavaFX集合504
    20.7.2使用标题面板505
    20.8课后练习505
    第21章JavaFX框架下的多媒体开发506
    21.1变换操作507
    21.1.1变换概述507
    21.1.2变换操作507
    21.2动画效果510
    21.2.1过渡动画510
    21.2.2时间轴动画512
    21.3视觉特效514
    21.3.1混合特效514
    21.3.2发光特效515
    21.3.3模糊特效517
    21.3.4阴影特效519
    21.3.5内阴影特效520
    21.3.6倒影特效522
    21.3.7光照特效523
    21.43D特效524
    21.4.1JavaFX3D概述524
    21.4.2使用3D形状524
    21.4.33D镜头525
    21.4.4使用子场景527
    21.4.5使用光照529
    21.4.6使用材质530
    21.5音频和视频532
    21.5.1使用Media获取获得媒体源532
    21.5.2使用MediaPlayer播放并控制媒体532
    21.5.3使用MediaView显示视频533
    21.5.4控制播放的视频演练533
    21.6CSSAPI(Java9新增功能)535
    21.6.1使用传统方式535
    21.6.2使用SkinAPI536
    21.7技术解惑538
    21.7.1注册一个事件处理程序538
    21.7.2注意场景背景图的问题539
    21.7.3y-down坐标系和y-up坐标系539
    21.8课后练习539
    第22章数据库编程540
    22.1SQL基础541
    22.1.1数据定义541
    22.1.2数据操纵542
    22.2初识JDBC544
    22.2.1JDBCAPI544
    22.2.2JDBC驱动类型544
    22.2.3JDBC的常用接口和类545
    22.2.4JDBC编程的一般步骤547
    22.3连接Access数据库549
    22.3.1Access数据库概述549
    22.3.2连接本地Access数据库550
    22.4连接SQLServer数据库552
    22.4.1下载并安装SQLSever2016驱动552
    22.4.2测试连接553
    22.4.3获取SQLServer数据库中指定的表554
    22.5连接MySQL数据库555
    22.5.1下载并配置MySQL驱动555
    22.5.2将MySQL驱动加载到Eclipse中556
    22.5.3测试连接557
    22.6技术解惑557
    22.6.1连接池的功效557
    22.6.2服务器自带连接池的问题557
    22.6.3连接池模型559
    22.6.4数据模型、概念模型和关系数据模型559
    22.6.5数据库系统的结构560
    22.7课后练习560
    第23章网络与通信编程561
    23.1Java中的网络包562
    23.1.1InetAddress类562
    23.1.2URLDecoder类和URLEncoder类562
    23.1.3URL类和URLConnection类563
    23.1.4实践演练564
    23.2TCP编程567
    23.2.1使用ServerSocket567
    23.2.2使用Socket568
    23.2.3TCP中的多线程569
    23.3UDP编程572
    23.3.1使用DatagramSocket572
    23.3.2使用MulticastSocket574
    23.4代理服务器577
    23.4.1代理服务器概述577
    23.4.2使用Proxy创建连接578
    23.4.3使用ProxySelector选择代理服务器579
    23.5HTTP/2ClientAPI(Java10的改进)581
    23.5.1孵化器模块usergrid概述581
    23.5.2HTTP/2ClientAPI概述582
    23.5.3处理HTTP请求582
    23.6技术解惑584
    23.6.1使用异常处理完善程序584
    23.6.2使用ServerSocketChannel的弊端584
    23.6.3体会复杂的DatagramPacket585
    23.6.4MulticastSocket类的重要意义585
    23.6.5继承ProxySelector时需要做的工作585
    23.6.6代理服务无止境585
    23.6.7生成jdk.incubator.httpclient模块的Javadoc586
    23.7课后练习586
    第24章多线程和进程587
    24.1线程概述588
    24.1.1线程与进程588
    24.1.2线程的意义588
    24.1.3Java的线程模型589
    24.2创建线程590
    24.2.1使用Thread类创建线程590
    24.2.2使用Runnable接口创建线程592
    24.2.3使用Thread.onSpinWait()方法实现循环等待593
    24.3线程的生命周期594
    24.3.1线程的运行与停止594
    24.3.2线程的挂起和唤醒595
    24.3.3终止线程的3种方法596
    24.3.4线程的阻塞597
    24.3.5线程的死亡597
    24.4控制线程598
    24.4.1使用join方法599
    24.4.2慎重使用volatile关键字599
    24.4.3后台、让步和睡眠602
    24.5线程传递数据603
    24.5.1向线程传递数据的方法603
    24.5.2线程中返回数据的方法605
    24.6进程606
    24.6.1使用类ProcessBuilder606
    24.6.2使用类Process609
    24.6.3使用类ProcessHandle(Java9新增功能)609
    24.7技术解惑612
    24.7.1线程和函数的关系612
    24.7.2在run方法中使用线程名时产生的问题612
    24.7.3继承Thread类或实现Runnable接口的比较612
    24.7.4start()和run()的区别613
    24.7.5使用sleep()方法的注意事项613
    24.7.6线程的优先级613
    24.7.7如何确定发生死锁613
    24.7.8关键字synchronized和volatile的区别614
    24.7.9sleep()方法和yield()方法的区别614
    24.7.10分析Swing的多线程死锁问题614
    24.8课后练习615
    第25章大数据综合实战:爬取并分析知乎用户信息616
    25.1系统设计617
    25.1.1系统目标617
    25.1.2系统功能结构617
    25.2数据库设计618
    25.3知乎爬虫请求分析618
    25.4系统文件夹组织结构621
    25.5系统详细运行流程图622
    25.6具体编码623
    25.6.1核心模块代码的编写623
    25.6.2知乎抓取功能模块629
    25.6.3代理功能模块637
    25.7知乎用户大数据分析645
    25.7.1数据展示模块645
    25.7.2运行展示646
    25.8项目开发难点分析648

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购