首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
醉过才知酒浓同学
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
59
文章 56
沸点 3
赞
59
返回
|
搜索文章
赞
文章( 56 )
沸点( 3 )
EffectiveJava-7-通用程序设计
性能优势,对于数组索引的边界值只计算一次。 1. 过滤:如果需要遍历集合,并删除选定的元素,就要使用显示的迭代器,以便调用其remove方法 ; 2. 转换:如果需要修改集合或数组的值,就需要集合的迭代器或数组索引了; 3. 平行迭代:如果需要并行的遍历多个集合或数组,就需要用…
EffectiveJava-8-异常
1. 异常机制的设计初衷适用于不正常的情形,so,很少有JVM对其进行优化; 2. 把代码放在try-cache中阻止了现代JVM实现本来可能要执行的某些特定优化; 3. for遍历并不会导致冗余的检查,有些现代的JVM会将它们优化掉; 1. 使api更加易于学习和使用(通用,…
EffectiveJava-9-并发
1. 将它保存在静态域中,作为类初始化的一部分; 2. 将它保存在volatile域,final域或者通过正常锁定访问的域中; 3. 将它放到并发的集合中; 1. 重用线程池中的线程,避免线程的创建和销毁所带来的性能开销; 2. 能有效控制线程池中的最大并发数,避免大量线程之间…
EffectiveJava-10-序列化
1. 使这个类的到处API永远的束缚在该类的内部表示法上; 2. 消耗过多的空间;(如上链表项只是实现细节,不值得记录在序列化形式中,会消耗过多空间) 3. 消耗过多时间;(序列化逻辑并不了解对象图的拓扑关系,所有它必须经过一个昂贵的图遍历,但上面例子中沿着next引用遍历是非…
EffectiveJava-6-方法
1. 可能在处理过程中失败,并产生令人费解的异常 2. 更糟糕的情况是正常返回,但计算出错误的结果 3. 最糟糕的是正常返回,但使得某个对象处于被破坏但状态,在将来某个不确定的时候,某个不想干的点上引发错误 对于某些参数,方法本身没有用到,却被保存起来供以后使用,检验这类参数的…
EffectiveJava-5-枚举和注解
1. int枚举: 引入枚举前,一般是声明一组具名的int常量,每个常量代表一个类型成员,这种方法叫做int枚举模式。 int枚举模式是类型不安全的,例如下面两组常量:性别和动物种类,二者不存在任何关系,然而却可以将ANIMAL_DOG传入一个需要性别参数的方法中,编译器不会出…
EffectiveJava-4-泛型
1. 数组是协变的, 如果Sub是Super的子类,那么数组Sub[]也是Super[]的子类; 2. 数组是具体化的,在运行时才知道并检查它们的元素类型约束;
EffectiveJava-3-类和接口
1. 不提供任何修改对象状态的方法 2. 保证类不会被扩展:用final修饰或将所有构造方法私有化并提供公有的静态工厂方法 3. 使所有域都是final的(实际上只要没有方法能够对域产生外部可见的改变即可,如延迟初始化,懒汉单例等,都不能让该域是final的) 4. 使所有域都…
EffectiveJava-2-对于所有对象都通用的方法
1. equals通用约定: 2. 不需要覆盖equals对情况: 3. 需要覆盖equals的情况: 4. 注意equals方法的写法: 1. hashCode通用约定: 2. 为不相等的对象产生不相等的散列码(hashCode方法的返回值):
Homebrew安装及使用
使用 Homebrew 安装 Apple(或您的 Linux 系统)没有预装但 你需要的东西。 Homebrew 会将软件包安装到独立目录,并将其文件软链接至 /usr/local 。 Homebrew 不会将文件安装到它本身目录之外,所以您可将 Homebrew 安装到任意位…
下一页
关注了
1
关注者
2
收藏集
0
关注标签
0
加入于
2020-07-14