首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java编程思想拾遗
晚山
创建于2021-05-25
订阅专栏
时隔几年,对此书进行的一个回顾拾遗,去重新理解Java语言结构的设计原因和一些普适的使用规范
暂无订阅
共15篇文章
创建于2021-05-25
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Java编程思想拾遗(15) 并发
如果你有一台多处理器的机器,那么就可以在这些处理器之间分布多个任务,从而极大地提高吞吐量,但是并发通常是指提高运行在单处理器上的程序的性能(或许这就是所谓的并行和并发的概念区别)。 如果使用并发来编写
Java编程思想拾遗(14)I/O系统
编程语言的I/O类库中常使用流这个抽象概念,它代表任何有能力产出数据源对象或者是有能力接收数据的接收端对象,“流”屏蔽了实际的I/O设备中处理数据的细节。 流的方向 在Java1.0中,类库的设计者首
Java编程思想拾遗(13)泛型
一般的类和方法,只能使用具体的类型:要么是基本类型,要么是自定义的类。如果要编写可以应用于多种类型的代码,这种刻板的限制对代码的束缚就会很大。有时候,拘泥于单继承体系也会使程序受限太多,即便使用了接口
Java编程思想拾遗(12)反射
运行时类型信息使得你可以在程序运行时发现和使用类型信息,它使你从只能在编译期执行面向类型的操作的禁锢中解脱了出来。 Java让我们在运行时识别对象和类的信息的两种方式:一种是传统的RTTI,它假定我们
Java编程思想拾遗(11)异常
发现错误的理想时机是在编译阶段,也就是在你试图运行程序之前,然而编译期间并不能找出所有的错误,余下的问题必须在运行期间解决。 使用异常所带来的的一个相当明显的好处是,它往往能够降低错误处理的复杂度,如
Java编程思想拾遗(10)容器
通常程序总是根据运行时才知道的某些条件去创建对象,在此之前不会知道所需对象的数量,甚至不知道确切的类型,为解决这个普遍的编程问题,需要在任意时刻和任意位置创建任意数量的对象,所以就不能依靠创建命名的引
Java编程思想拾遗(9)内部类
每个内部类都能独立地继承自一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。 如果没有内部类提供的、可以继承多个具体的或抽象的类的能力,一些设计与编程问题就很难
Java编程思想拾遗(8) 接口
抽象类 如果我们只有一个像Instrument这样的抽象类,那么该类的对象几乎没有任何意义,我们创建抽象类是希望通过这个通用接口操纵一系列类。因此,Instrument只是表示了一个接口,没有具体的实
Java编程思想拾遗(7) 多态
在面向对象的程序设计语言中,多态是继数据抽象和继承之后的第三种基本特征。 多态通过分离做什么和怎么做,从另一角度将接口和实现分离开来。多态不但能改善代码的组织结构和可读性,还能够创建可扩展的程序--即
Java编程思想拾遗(6) 复用类
复用分为组合和继承两种方式。 继承 当创建了一个导出类的对象时,该对象包含了一个基类的子对象,这个子对象与你用基类直接创建的对象是一样的,二者区别在于,后者来自于外部,而基类的子对象被包装在导出类对象
Java编程思想拾遗(5) 访问权限控制
访问权限 控制对成员的访问权限有两个原因: 第一,为了使用户不要碰触那些他们不该碰触的部分,这些部分对于类内部的操作时必要的,但是它并不属于客户端程序员所需接口的一部分。 第二,为了让类库设计者可以更
Java编程思想拾遗(4) 对象的初始化与清理
构造器 可以假想为编写的每个类都定义一个initialize()方法,该方法的名称提醒你在使用其对象之前,应首先调用initialize(),然而这意味着用户必须记得自己去调用此方法,为此Java提供
Java编程思想拾遗(3) 操作符
关系操作符 任何对象的==都是内存地址比较,基本类型的==是值比较。 对象默认的equals是内存地址比较,大多数Java类库覆写成内容比较。 按位操作符 编译器自行进行二进制的转换和运算,并将结果转
Java编程思想拾遗(2) 基本数据类型
基本变量 所有new出来的对象存储在堆中,而对于小而简单的变量,用new往往不是很有效,不如创建一个并非是引用的“自动”变量,这个变量直接存储“值”,并置于堆栈中。 基本类型具有的包装器类,使得可以在
Java编程思想拾遗(1)对象导论
抽象过程 汇编语言是对底层机器的轻微抽象,命令式语言在汇编语言基础上有了大幅的改进,但是它们所作的主要抽象仍要求在解决问题时基于计算机的结构,而不是基于所要解决的问题的结构。 OOP允许根据问题来描述