
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
Java编程开发语言随着互联网的不断发展而被众多程序员掌握并应用到许多不同的软件开发项目之中,而本文我们就通过案例分析来简单了解一下,Java编程开发基础语法分享。
JDK1.8之后有哪些新特性
接口默认方法:Java8允许我们给接口添加一个非抽象的方法实现,只需要使用default关键字即可。
Lambda表达式和函数式接口:Lambda表达式本质上是一段匿名内部类,也可以是一段可以传递的代码。
StreamAPI:用函数式编程方式在集合类上进行复杂操作的工具,配合Lambda表达式可以方便的对集合进行处理。
Java8中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。
使用StreamAPI对集合数据进行操作,就类似于使用SQL执行的数据库查询。也可以使用StreamAPI来并行执行操作。
简而言之,StreamAPI提供了一种高效且易于使用的处理数据的方式。
方法引用:方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器。
与lambda联合使用,方法引用可以使语言的构造更紧凑简洁,减少冗余代码。
日期时间API:Java8引入了新的日期时间API改进了日期时间的管理。Optional类:著名的NullPointerException是引起系统失败常见的原因。
很久以前GoogleGuava项目引入了Optional作为解决空指针异常的一种方式,不赞成代码被null检查的代码污染,期望程序员写整洁的代码。
新工具:新的编译工具,如:Nashorn引擎jjs、类依赖分析器jdeps。
构造器是否可以重写
Constructor不能被override(重写),但是可以overload(重载),所以你可以看到⼀个类中有多个构造函数的情况。
wait()和sleep区别
来源不同:sleep()来自Thread类,wait()来自Object类。
对于同步锁的影响不同:sleep()不会该表同步锁的行为,如果当前线程持有同步锁,那么sleep是不会让线程释放同步锁的。
wait()会释放同步锁,让其他线程进入synchronized代码块执行。
使用范围不同:sleep()可以在任何地方使用。wait()只能在同步控制方法或者同步控制块里面使用,否则会抛IllegalMonitorStateException。
恢复方式不同:两者会暂停当前线程,但是在恢复上不太一样。sleep()在时间到了之后会重新恢复;
wait()则需要其他线程调用同一对象的notify()/nofityAll()才能重新恢复。
&和&&的区别
&运算符有两种用法:
按位与;
逻辑与。
&&运算符是短路与运算。逻辑与跟短路与的差别是非常巨大的,虽然二者都要求运算符左右两端的布尔值都是true整个表达式的值才是true。
&&之所以称为短路运算,是因为如果&&左边的表达式的值是false,右边的表达式会被直接短路掉,不会进行运算。
注意:逻辑或运算符(|)和短路或运算符(||)的差别也是如此。
Java有哪些数据类型?
Java语言是强类型语言,对于每一种数据都定义了明确的具体的数据类型,在内存中分配了不同大小的内存空间。
分类
基本数据类型
数值型
整数类型(byte,short,int,long)
浮点类型(float,double)
字符型(char)
布尔型(boolean)
引用数据类型
类(class)
接口(interface)
数组([])
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。