20162327WJH程序设计与数据结构第七周总结
学号 20162327 《程序设计与数据结构》第7周学习总结
教材学习内容总结
- 1.关于接口的理解:接口可以理解为比较纯粹的抽象类
- 2.接口的特点:用interface定义接口
接口中的方法都是抽象的方法
接口中的方法都是public权限 - 3.接口和继承的联系与区别:一个类只能继承一个父类,而一个接口能实现多个接口
继承一个类用extends,实现一个接口用implements(一种特殊的继承) - 4.多态的特点:多态引用在不同的时候可以指向不同类型的对象
多态引用在运行时才将方法调用与它的定义绑定在一起
对象的类型决定调用的方法是哪个版本 - 5.Comparable接口:此接口中值包含一个方法compareTo,它带有一个对象类型参数,返回一个整型值
Iterator接口:它用来表示类的一组对象,提供一种从头至尾每次访问一个对象的机制,包含hasNext.next两个基本方法。
教材学习中的问题和解决过程
- 1问题:工厂方法模式
- 1解决方案:抽象工厂(ExportFactory)角色:担任这个角色的是工厂方法模式的核心,任何在模式中创建对象的工厂类必须实现这个接口。在实际的系统中,这个角色也常常使用抽象类实现。
具体工厂(ExportHtmlFactory、ExportPdfFactory)角色:担任这个角色的是实现了抽象工厂接口的具体JAVA类。具体工厂角色含有与业务密切相关的逻辑,并且受到使用者的调用以创建导出类(如:ExportStandardHtmlFile)。
抽象导出(ExportFile)角色:工厂方法模式所创建的对象的超类,也就是所有导出类的共同父类或共同拥有的接口。在实际的系统中,这个角色也常常使用抽象类实现。
具体导出(ExportStandardHtmlFile等)角色:这个角色实现了抽象导出(ExportFile)角色所声明的接口,工厂方法模式所创建的每一个对象都是某个具体导出角色的实例。
代码调试中的问题和解决过程
- 1问题:删除数组的一个元素并且将后面的元素向前移
- 1解决方案:
import java.io.*;
public class Shuzu {
public static void main(String[] args) {
String[] names = {1,2,3,4,5};
int i;
int n=names.length;
for(i=0;i<n;i++){
if(names[i].equals(2))
break;
}
int j =i;
for(i=j+1;i<n;i++) {
names[i-1]=names[i];
}
names[i-1]="";
n=n-1;
for(i=0;i<n;i++){
System.out.println(i+"\t"+names[i]);
}
}
}
代码托管
代码提交过程截图:
代码量截图:
结对学习情况:
我和我的搭档共同研究了数组中删除和添加元素的问题,效率奇高。下面,我们将共同研究TDD模式的运用以及测试代码的编写
上周考试错题总结
- 1.下面哪些Linux 命令可以ASCII码和16进制单字节方法输出Hello.java的内容?选BC
A .od -b -tx1 Hello.java
B .od -tcx1 Hello.java
C .od -tc -tx1 Hello.java
D .od -tbx1 Hello.java - 2.A _______________________ class represents a generic concept in a class hierarchy(_____表示类层次中的一般概念).选B
A .super(超类)
B .abstract(抽象类)
C .interface(接口类)
D .shadow(隐藏类)
E .generic(一般类) - 3.如果有以下的程序代码:选A
Int x=100;
Int y=100;
Integer wx=x;
Integer wy=y;
System.out.println(xy);
System.out.println(wxwy);
在JDK5以上的环境编译与执行,则显示的结果是
A .true、true
B .true、false
C .false、true
D .编译失败 - 4.如果有以下的程序代码:选C
String [][] strs={
{“Java”,“Java”,“Java”} ;
{“Java”,“Java”,“Java”,“Java”};
};
For(______ row:strs){
For(____ str:row){
.........
}
}
空白处应该分别填上
A .String、String
B .String、String[]
C .String[]、String
D .String[]、String[]
- 5.下面哪条命令可以把 f1.txt 复制为 f2.txt ?选AC
A .cp f1.txt f2.txt
B .copy f1.txt f2.txt
C .cat f1.txt > f2.txt
D .cp f1.txt | f2.txt
E .copy f1.txt | f2.txt - 6.如果有以下程序片段:选C
class Some{
String ToString(){
return "Some instance";
}
}
public class Main{
public static void main(String[] args){
Some some = new Some();
System.out.println(some);
}
}
以下描述正确的是
A .显示Some Instance
B .显示Some@XXXX,XXXX为十六进制的数字
C .发生ClassCastException
D .编译失败
解析:toString()方法返回一个表示引用对象自己正常信息的字符串,而这个字符串的内容由我们自己去定义,默认的字符串内容是“类名+哈希编码”。
点评过的同学博客和代码
- 本周结对学习情况
- 20162321
- 结对学习内容
我和我的搭档共同研究了数组中删除和添加元素的问题,效率奇高。下面,我们将共同研究TDD模式的运用以及测试代码的编写
- 上周博客互评情况
其他(感悟、思考等,可选)
这几天正在看老师推荐的浪潮之巅,确实让我有点热血沸腾。我只看了一部分,其中就有对微软、苹果、IMB、Intel等大型跨国公司的历史的介绍,但不只有历史,里边还有作者许多的分析和观点。让我对它们有了一个更深的了解。在现在这个互联网的时代,我们每个年轻人都有着很多的机会,因为我们赶上了这个大潮,我们有这个能力也有这个机会去挑战,所以我们还在等什么呢。本书给了我很大的动力,让我对未来是一片憧憬!
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 100/100 | 1/1 | 16/16 | |
| 第二周 | 257/257 | 1/1 | 22/22 | |
| 第三周 | 465/465 | 1/1 | 26/26 | |
| 第四周 | 875/875 | 2/2 | 40/40 | |
| 第五周 | 600/600 | 1/1 | 40/40 | |
| 第六周 | 330/330 | 1/1 | 36/36 | |
| 第七周 | 467/467 | 2/2 | 30/30 |
参考资料
20162327WJH程序设计与数据结构第七周总结的更多相关文章
- 20172306 2018-2019-2 《Java程序设计与数据结构》第九周学习总结
20172306 2018-2019-2 <Java程序设计与数据结构>第九周学习总结 教材学习内容总结 无向图 图是由结点和这些结点之间的连接构成 就图来说,结点叫做顶点,结点之间的连接 ...
- 20172306《Java程序设计与数据结构》第一周总结
20172306<Java程序设计>第一周学习总结 教材学习内容总结 本周主要学习<Android和Java>书中的第二十三章和第二十六章. 第二十三章:Android简介 A ...
- 20172306 2018-2019 《Java程序设计与数据结构》第一周学习总结
20172306 2018-2019 <Java程序设计与数据结构(下)>第一周学习总结 教材学习内容总结 第一章 概述 (程序=数据结构+算法 软件=程序+软件工程) 1.1 软件质量 ...
- 201771010134杨其菊《面向对象程序设计java》第七周学习总结
第七周学习总结 第一部分:理论知识 1.继承是面向对象程序设计(Object Oriented Programming-OOP)中软件重用的关键技术.继承机制使用已经定义的类作为基础建立新的类定义,新 ...
- 20172306《Java程序设计与数据结构》第九周学习总结
20172306<Java程序设计>第九周学习总结 教材学习内容总结 第十一章: try-catch语句.其中还有finally语句.try是进行某些操作,catch是捕获异常,并通过某些 ...
- 2017-2018-2 1723《程序设计与数据结构》第九周作业 & 第二周结对编程 总结
作业地址 第九次作业:https://edu.cnblogs.com/campus/besti/CS-IMIS-1723/homework/1878 (作业界面已评分,可随时查看,如果对自己的评分有意 ...
- 201771010123汪慧和《面向对象程序设计JAVA》第七周实验总结
一.理论部分 1.继承 如果两个类存在继承关系,则子类会自动继承父类的方法和变量,在子类中可以调用父类的方法和变量,如果想要在子类里面做一系列事情,应该放在父类无参构造器里面,在java中,只允许单继 ...
- 网易云课堂_C语言程序设计进阶_第七周:文件:文件访问、格式化输入输出、二进制输入输出
7.1文件 7.2底层操作 7.1文件 格式化的输入输出 printf %[flags][width][.prec][hIL]type Flag 含义 - 左对齐 + 在前面放+或- (space) ...
- 《JAVA程序设计》_第七周学习总结
一.学习内容 1.String类--8,1知识 Java专门提供了用来处理字符序列的String类.String类在java.lang包中,由于java.lang包中的类被默认引入,因此程序可以直接使 ...
随机推荐
- ArcGIS API for JavaScript 4.4 版本加载谷歌地图
ArcGIS API for JavaScript 4.X 版本升级后,API发生了很大的变化. 其中就支持了WebEarth展示,主要是通过 esri/views/SceneView 实现的. 在新 ...
- 【BZOJ2442】修建草坪(动态规划,单调队列)
[BZOJ2442]修建草坪(动态规划,单调队列) 题面 权限题..洛谷 题解 设\(f[i]\)表示前\(i\)个里面选出来的最大值 转移应该比较显然 枚举一个断点的位置,转移一下就好 \(f[i] ...
- [HDU5765]Bonds
题面 题意 给出一张\(n\)点\(m\)边无向连通图,求每条边出现在多少个割集中. \(n\le20,m\le\frac{n(n-1)}{2}\) sol 所谓割集,就是指把\(n\)个点分成两个集 ...
- 从 HelloWorld 看 Java 字节码文件结构
很多时候,我们都是从代码层面去学习如何编程,却很少去看看一个个 Java 代码背后到底是什么.今天就让我们从一个最简单的 Hello World 开始看一看 Java 的类文件结构. 在开始之前,我们 ...
- 用注解的方式实现Mybatis插入数据时返回自增的主键Id
一.背景 我们在数据库表设计的时候,一般都会在表中设计一个自增的id作为表的主键.这个id也会关联到其它表的外键. 这就要求往表中插入数据时能返回表的自增id,用这个ID去给关联表的字段赋值.下面讲一 ...
- ubuntu安装Eclipse无图标(手动创建软件图标) —— 其他的软件也一样
//退回根目录 cd / //进入图标存放目录 cd usr/share/applications/ //用文本编辑器打开打开eclipse的图标文件,没有会自动创建 sudo gedit eclip ...
- java容器类3:set/HastSet/MapSet深入解读
介绍 Set:集合,是一个不包含重复数据的集合.(A collection that contains no duplicate elements. ) set中最多包含一个null元素,否者包含了两 ...
- C#封装程序集属性方法注释说明
一.使用封装程序集好处: 在很多分布式应用程序开发中,针对每一种功能可能条用的接口不一样,往往习惯将需要被调用的接口,封装成DLL给调用方应用后使用,这样既规范了调用的方式,又避免了调用出现参数请求方 ...
- Maven 手动添加selenium JAR 包到本地仓库
安装Maven后我们会在用户目录下发现.m2 文件夹.默认情况下,该文件夹下放置了Maven本地仓库.m2/repository. 在intellij中创建maven项目时,添加 selenium 依 ...
- dhcp 的安装和配置文件
install: yum - y install dhcp modify : vim /etc/dhcp/dhcpd.conf ddns-update-style none;ignore cli ...

