6.2 接口实例 6.2.1 接口与回调 在java.swing包中有一个Timer类,可以使用它在到达给定的时间间隔时发出通告,假如程序中有一个时钟,就可以请求每秒钟获得一个通告,以便更新时钟的表盘. 在构造定时器时,需要设置一个时间间隔,并告知定时器,当到达时间间隔时需要做些什么操作,(java将某个类的对象传递给定时器,然后的定时器调用这个对象的方法.)-----定时器需要知道调用了哪一个方法,并要求传递的对象所属的的类实现了java.awt.event包的ActionListener接口…
6.1 接口不是类,是对类的一组需求的描述,这些类需要遵守接口描述的统一格式进行定义.例如:Arrays类中sort方法(可以对对象数组进行排序)前提是对象所属的类必须实现了Comparable 接口. public interface Comparable { int compareTo(Object other) } Comparable public interface Comparable<T> { int compareTo(T other) } Comparable泛型 接口的方法…
6.1.2 接口不是类,不能实例化一个接口:但是可以声明接口的变量:Comparable x;    接口变量必须引用实现了接口的类对象:x = new Employee(); 检查一个对象是否属于某个特定类(instanceof); 检查一个对象是否属于某个特定的接口(instance):if (anObject instanceof  Comparable){...} 6.1.3 接口与抽象类 抽象类只能扩展一个类(单一继承): 6.1.4 静态方法 由一个字符串序列构造一个文件或目录的途径…
目录 1.多态.动态绑定 2.覆盖 3.阻止继承:final 类和方法 4.抽象类(abstract修饰) 5. 4 个访问修饰符: 6.toString() 7.对设计继承关系很有帮助的建议 8.接口 9.默认方法 1.多态.动态绑定 一个对象变量(例如, 变量 e) 可以指示多种实际类型的现象被称为多态(polymorphism). 在运行时能够自动地选择调用哪个方法的现象称为动态绑定(dynamic binding). 2.覆盖 如果在子类中定义了一个与超类签名相同的方 法, 那么子类中的…
6.2.3   对象克隆 Cloneable 接口,这个接口指示一个类提供了一个安全的clone方法.(稍作了解) 为一个对象引用的变量建立副本时,原变量和副本都是同一个对象的引用,任何一个变量改变都会影响另一个变量. Employee original =new Employee("John Public",50000);Employee copy=original;copy.raiseSalary(10);//(加工资的一个方法) 如果希望copy是一个新对象,它的初始状态与ori…
jdk是java开发工具包,里面包含了javac.jar.javadoc.java等工具,可以在bin目录中找到.有一个文件夹是jre,即jdk也包含了java运行环境.jre可单独安装,只是运行java程序. jdk安装完之后还要设置执行路径,也就是把jdk/bin添加到执行路径中,所谓的执行路径是指操作系统搜索可执行文件的目录列表.p14 java中用到浮点数时大部分都是用double,因为float的7位有效数字在大部分情况下不能满足需要.float数字后面有一个F后缀,没有后缀的为dou…
目录 1.java的关键术语 2.==和equals 3.空串与 Null 串 4.构建字符串 5.封装 6.对象的三个主要特性 7.依赖(dependence).聚合(aggregation).继承(inheritance) 8.对象变量 9.clone 10.静态域.静态常量 11.静态方法 12.方法参数 13.重载 14.域和局部变量 15.构造器 16.对象析构 17.包 18.编译器.虚拟机和包 19.继承 20.Java 不支持多继承 1.java的关键术语 2.==和equals…
---恢复内容开始--- 异常.断言 所有的异常都继承自Throwable类,异常包括已检查异常和未检查异常,应该抛出已检查异常,而未检查异常要么是不可控的(Error),要么是应该避免发生的(RuntimeError).p475 对于子类中覆盖了父类方法的方法,其抛出的异常不能比父类中方法抛出的异常更特定,也可以直接不抛出异常.特别的,如果父类中的方法没有抛出异常,那么子类覆盖的方法不能抛出异常.p476 通常应该捕获那些知道应该如何处理的异常,而对于那些不知道该怎么处理的异常将继续进行传递.…
这是一篇备忘性质的读书笔记,仅记录个人觉得有用的知识点 本文作为一个目录索引,部分章节跳过 吐槽:此书中文翻译有不少地方不太通顺,这种情况我要把英文版对应的部分也读一遍才能明白(说实话,英文里的从句表达能力确实比中文清晰不少,不过从句多了之后也不太好理解) 虽然翻译这么厚一本书确实比较辛苦,很多英文长句确实不好翻译,翻译得不太通顺就算了,但是有很多地方翻译出来和原书的意思不一样就过分(甚至是沿袭的错误,第9版的中文版里错得一样,很怀疑每版有没有重新校对) P.S.这也是很多引进的大部头技术书籍的…
<Java核心技术卷一>是唯一可以和<Java编程思想>媲美的一本 Java 入门书.单从技术的角度来看,前者更好一些.但上升到思想层面嘛,自然后者更好,两者的偏重点不同. 思想不会变,所以<Java编程思想>还停留在第 4 版(2007 年):而技术是要更新迭代的,所以<Java核心技术卷一>来到了第十版(2016 年). 我们来看一下<Java核心技术卷一>第十版的大纲. 前九章:包括 "Java 程序设计概述".&quo…