|
51 | 51 | + 如果希望拷贝的数组长度增加,则需要指定具体的长度. |
52 | 52 | + 如果数组元素是数值型,则多余的元素将被赋值0;如果数组的元素是boolean型,则多余的元素将被赋值false. |
53 | 53 | 相反,如果长度小于原始数组的长度,则只拷贝前面的元素. |
54 | | - + 要想快速的打印二维数组可以使用: Arrays,deepToString(a) |
| 54 | + + 要想快速的打印二维数组可以使用: Arrays.deepToString(a) |
| 55 | +### 0X02 对象与类 |
| 56 | +1. 类是构造对象的模板或蓝图. |
| 57 | +2. 封装是将数据和行为组合在一个包中,并对对象的使用者隐藏了数据的实现方式.对象中的数据称为实例域,操纵数据的过程称为方法. |
| 58 | +3. 对象的三个主要特性: |
| 59 | + + 对象的行为: 可以对对象施加哪些操作,或可以对对象施加哪些方法. |
| 60 | + + 对象的状态: 当施加那些方法时,对象如何响应. |
| 61 | + + 对象的标识: 如何辨别相同行为,不同状态的对象. |
| 62 | +4. 类之间的关系: |
| 63 | + + 依赖: 如果一个类的方法操纵另一个类的对象,就说一个类依赖另一个类. |
| 64 | + + 聚合: 类A的对象包含类B的对象. |
| 65 | + + 继承: 类A扩展类B,类A不但包含类B继承的方法,还会拥有一些额外的功能. |
| 66 | +5. 使用预定义类: |
| 67 | + + 一个对象变量并没有实际包含一个对象,而仅仅是引用了一个对象. |
| 68 | + + 所有的Java对象都存储在堆中.当一个对象包含另一个对象变量时,这个变量依然包含着指向另一个堆对象的指针. |
| 69 | + + 在Java8之前,所有关于时间和日期的API都存在各种使用方面的缺陷,主要有: |
| 70 | + + Java的java.util.Date和java.util.Calender类易用性差,不支持时区,而且他们都不是线程安全的. |
| 71 | + + 用于格式化日期的类DateFormat被放在java.text包中,它是一个抽象类,所以需要实例化一个SimpleDateFormat对象来 |
| 72 | + 处理日期格式化,且DateFormat也是线程非安全的. |
| 73 | + + 对日期的计算方式繁琐,而且容易出错,因为月份是从0开始的,从Calender中获取的月份需要加一才能表示当前月份. |
| 74 | +6. 用户自定义类: |
| 75 | + + 在实现一个类时,由于公有数据非常危险,所以应该将所有的数据域都设置为私有的. |
| 76 | + + final修饰符大都应用于基本类型域,或不可变域. |
| 77 | +7. 静态域和静态方法: |
| 78 | + + 可以认为静态方法就是没有this参数的方法. |
| 79 | + |
| 80 | + |
55 | 81 |
|
56 | 82 |
|
57 | 83 |
|
|
0 commit comments