20165312 2017-2018-2 《JAVA程序设计》第6周学习总结
一、在本周学习过程中遇到的问题以及对上周测试的查漏补缺
- 编写110页代码时出现问题,主类Test中创建CPU对象、HardDisk对象、PC对象pc时,没有初始化变量
public class Test {
public static void main(String[] args) {
CPU cpu ;
cpu.setSpeed(2200);
HardDisk disk ;
disk.setAmount(200);
PC pc ;
pc.setCPU(cpu);
pc.setHardDisk(disk);
pc.show();
}
}
将代码修改为:
public class Test {
public static void main(String[] args) {
CPU cpu = new CPU();
cpu.setSpeed(2200);
HardDisk disk = new HardDisk();
disk.setAmount(200);
PC pc = new PC();
pc.setCPU(cpu);
pc.setHardDisk(disk);
pc.show();
}
}
后面根据娄老师的测试要求,将代码做了进一步的修改,使其测试其它类中的toString(),equals()。
- 上传第二个测试的代码时出现问题,使用
git push origin master
显示更新被拒绝,接着使用git pull --rebase origin master
显示正在进行变基操作,最后使用git push -f origin master
强制上传,成功。
- 下列关于Override的说法,正确的是( )
A . 子类所声明的成员变量的名字和从父类继承来的成员变量名字相同但类型不同时,子类会隐藏所继承的成员变量。
B . 除了继承的方法之外,子类新定义的方法可以操作子类继承的成员变量。
C . 子类重写的方法,方法名字、参数个数、参数类型和父类的方法完全相同。
D . 重写方法可以操作被子类隐藏的成员变量和方法。
正确答案:BC(这道题目我一开始认为A也是对的,因为我认为子类声明的成员变量的名字和从父类继承来的成员变量名字相同且类型相同时,子类会隐藏做继承来的成员变量,但是书p117上有原话)
二、本周学习总结
第八章
- 掌握String类常用的方法很重要
格式 | 作用 |
---|---|
public int length() | 求字符串长度 |
public boolean equals(String s) | 比较两字符串的字符序列是否相同 |
public boolean startsWith(String s)、public boolean endsWith(String s) | 判断两字符序列前后缀是否相同 |
public int compareTo(String s) | 按字典顺序进行大小比较 |
public boolean contains(String s) | 判断参数s是否被包含在字符串中 |
public int indexOf(String s)、public int lastIndexOf(String s) | 查找当前字符串中字符或子串,返回位置 |
public String substring(int startpoint) | 复制从startpoint位置至最后的位置上的字符 |
public String trim() | 去掉字符里的前后空格 |
- StringBuffer类
- StringBuffer类的对象的实体的内存空间可以自动的改变大小
- StringBuffer类中的方法主要偏重于对于字符串的变化.
- StringBuffer和String属于不同的类型,也不能直接进行强制类型转换.
- 常用方法
StringBuffer append(String s)
StringBuffer append(int n)
StringBuffer append(Object o)
public chat charAt(int n )
public void setCharAt(int n ,char ch)
StringBuffer insert(int index, String str)
public StringBuffer reverse()
- StringTokenizer类
- 构造方法
StringTokenizer(String s)
StringTokenizer(String s, String delim)
- tringTokenizer对象称作一个字符串分析器可以使用下列方法
StringTokenizer nextToken()
StringTokenizer hasMoreTokens()
StringTokenizer countTokens()
- 构造方法
- 当程序需要处理的时间时,使用Date类和Calendar类
- 如果程序需要处理很大的整数,使用BigInteger
第十五章
- 泛型
- 泛型类声明:
class 名称<泛型列表>
- 泛型类声明:
- 链表
- 遍历链表
iterator()
- 排序和查找
- 洗牌和旋转
- 遍历链表
- 堆栈:先进后出