20175204 张湲祯 2018-2019-2《Java程序设计》第五周学习总结

教材学习内容总结

-第六章接口与实现要点:

-接口:
1.使用关键字interface定义接口。
2.接口体中只有抽象方法,且访问权限是public;只包含常量声明,且访问权限都是public。
3.定义格式:[修饰符] interface 接口名 [extends 父接口名列表]{
[public] [static] [final] 常量;
[public] [abstract] 方法;
}
-实现接口:
1.接口由类实现以便使用接口中的方法,在类的声明中使用implements声明该类实现一个或多个接口。
2.基本格式:[修饰符] class [extends 父类名] [implements 接口列表]{ }
3.非抽象类实现接口,必须重写接口的所有方法,类在重写接口方法时要去掉abstract修饰符,给出方法体,用public修饰。
4.关键字interface前加public关键字,该接口可以被任何一个类实现。
5.如果接口不加public修饰,为友好接口可以被与处在同一包中的类实现。
-接口回调:
1.接口属于引用型变量,但接口无法调用类中的其他的非接口方法。
-abstract类与接口比较:
1.abstract类和接口都可以有abstract方法。
2.abstract类中既可以有常量也可以有变量。


-教材学习中的问题和解决过程:

-1.问题: 在学习接口时,有点不清楚继承父类和实现接口二者之间的关系。
解决方案:因为抽象类的继承,Java只支持单继承,但多重继承可以通过接口来实现。而实现一个接口就是要实现该接口的所有的方法(抽象类除外);接口中的方法都是抽象的;多个无关的类可以实现同一个接口,一个类可以实现多个无关的接口。(https://627648914.iteye.com/blog/2106357)(https://www.zhihu.com/question/20111251/answer/14012223


-代码调试中的问题和解决过程:

-1.问题:在编写第六章第4个例子时,发现输出是用的是printf语句而不是println,在运行时发现最后输出后没有换行;再改为println后显示编译错误,实际参数与形式参数列表长度不同。
解决方案:1.通过网上搜索(https://blog.csdn.net/qq_33271612/article/details/50700122
2.得知Java中print、printf、println的区别:
print将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后。
println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始。
printf是格式化输出的形式。


-代码托管(https://gitee.com/zyzgl/zyz


-其他

在学习第六章内容后,越发感觉到每一章的内容都与前几章息息相关,由于前几章基础不牢,导致在学习理解这一章时还得返回上一张看类的继承,每通过一章的学习总能发现上一章学习的不足和漏洞;这周还完成了实验一的任务,感觉还是得自己编写代码带来的收获大,知道该怎么用基础语句;感觉自己还需多看视频学习,对以前的基础知识回看和运用。

#20175204 张湲祯 2018-2019-2《Java程序设计》第五周学习总结的更多相关文章

  1. 2018-2019-2 20175204 张湲祯 实验二《Java面向对象程序设计》实验报告

    2018-2019-2-20175204 张湲祯 实验二 <Java开发环境的熟悉>实验报告 实验二 Java面向对象程序设计 一.实验内容: 初步掌握单元测试和TDD 理解并掌握面向对象 ...

  2. 201521123025<java程序设计>第五周学习总结

    1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...

  3. Java程序设计第五周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...

  4. 20175204 张湲祯 2018-2019-2《Java程序设计》2

    20175204 张湲祯 2018-2019-2<Java程序设计>2 必做课下作业MyCP 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP ...

  5. 20175204 张湲祯 2018-2019-2《Java程序设计》第九周学习总结

    20175204 张湲祯 2018-2019-2<Java程序设计>第九周学习总结 教材学习内容总结 -第十一章JDBC和MySQL数据库要点: 1.下载MySQL和客户端管理工具navi ...

  6. 20175204 张湲祯 2018-2019-2《Java程序设计》第八周学习总结

    20175204 张湲祯 2018-2019-2<Java程序设计>第八周学习总结 教材学习内容总结 -第十五章泛型与集合框架要点: 一.泛型 1.泛型(Generics)的主要目的是可以 ...

  7. 20175204 张湲祯 2018-2019-2《Java程序设计》第七周学习总结

    20175204 张湲祯 2018-2019-2<Java程序设计>第七周学习总结 教材学习内容总结 -第八章常用实用类要点: 一.String类: 1.String类所在的包:java. ...

  8. #20175204 张湲祯 2018-2019-2《Java程序设计》第六周学习总结

    20175204 张湲祯 2018-2019-2<Java程序设计>第六周学习总结 教材学习内容总结 -第七章内部类与异常类要点: 一.内部类: Java支持在一个类中定义另一个类,这样的 ...

  9. 20175204 张湲祯 2018-2019-2《Java程序设计》第四周学习总结

    20175204 张湲祯 2018-2019-2<Java程序设计>第四周学习总结 教材学习内容总结 -第五章子类与继承要点: -子类与父类: 1.通过使用关键字extends来定义一个类 ...

随机推荐

  1. Jsp监听器

    监听器: 监听器就是对内置对象的状态或者属性变化进行监听,并且做出反应的特殊的servlet,在web.xml文件中对监听器进行的配置. 内置对象有两种状态变化:产生.销毁,就是当产生内置对象的时候能 ...

  2. mysql jdbc 官方编程示例

    /* Basic example of an application using JDBC API of Connector/C++ */ /* Standard C++ includes */ #i ...

  3. RB-Tree删除详解

    红黑树的删除操作较于插入操作,情况更为复杂: 考虑到红黑节点的差异性,我们在此通过红黑节点来考虑这个问题,即仅仅通过要删除的节点是红节点,还是黑节点来讨论不同的情况: 1  删除的红节点为叶子结点(此 ...

  4. 360大牛:全面解读PHP面试

    让大家了解基本面试流程和面试的核心要求以及意义是什么并理解PHP面试考点主要以基础为核心,说明PHP面试考察范围. 有需要联系:QQ:1844912514

  5. Linux查看文件大小

    //查看系统中文件的使用情况 df -h //查看当前目录下各个文件及目录占用空间大小 du -sh * //查看welcome.txt文件占用空间大小 du -sh welcome.txt //方法 ...

  6. YApi二次开发环境部署

    YApi 是去哪儿网大前端技术中心开源的一个可视化的接口管理平台.下面是在CentOS7下搭建二次开发环境步骤. 1 安装MongoDB 具体安装参考CentOS7安装MongoDB 2 安装Node ...

  7. 文本编辑利器Notepad++ 10个强大而又鲜为人知的特性【转】

    文本编辑利器Notepad++ 10个强大而又鲜为人知的特性 - 为程序员服务

  8. (3)润写一个程序(类),用户输入一段英文,然后输出这段英文中所有长度为3个字母的单词井且如果单词如果有连续 复了2次,只输出一个【例: This isis a desk,程序输出 his is a desk】,(提示,有re正则匹配来做)

    import re x = input('Please input a string:') pattern = re.compile(r'\b[a-zA-Z]{3}\b') print(pattern ...

  9. 关于 iOS 性能优化方面的面试题,

    这是我前面几天碰到的面试题: 如何对定位和分析项目中影响性能的地方?以及如何进行性能优化? 我的答案: 定位方法: instruments   在iOS上进行性能分析的时候,首先考虑借助instrum ...

  10. linux下python安装

    下载包: wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tar.gz 解压安装: tar -zvxf  Python-3.6.3. ...