20145229吴姗珊 《Java程序设计》小总结
20145229吴姗珊 《Java程序设计》小总结
教材学习内容总结
由于今天考试考到了操作题,根本无从下手,然后才意识到原来之前的学习都是蜻蜓点水,一味的把学习建立在给老师学,为家长学的基础上,每次都只是机械的敲代码,根本没有理解教材,因为今天考试考的是6,7章的内容然后自己一片空白,所以这次想从教材里入手,代码全部都托管了,踏踏实实的学一点东西,一些基础的东西,不是不懂装懂为了博客而博客的东西,至少有一点点改变,让自己的生活不再充满堕落与无知。
继承的必要性
如果某一数据成员改为其他名称,那么包含这个数据成员的所有类都要进行修改,这就造成了维护上的不便。因此需要把相同的程序代码提升为父类
子类
子类只能继承一个父类,继承除可避免类间重复的行为定义外,还有子类和父类存在着is-a的关系
子类如果继承抽象类,对于抽象方法有两种做法,一种做法是继续标志该方法为abstract,另一种做法是操作抽象方法
继承的好处
父类中定义的方法例如getName(),子类无需再次定义,可以直接取用;数据成员例如name改为其他名称,直接改父类,子类无须再次修改。
编译程序
编译程序就是语法检查器,要知道程序片段为何可以通过编译,为何却无法通过编译,就是将自己当作编译程序,检查语法的逻辑是否正确,方式是从=号右边往左读
对drawFight()方法而言,只知道传进来的会是一种Role对象,所以编译程序也只能检查你调用的方法以及Role是不是有定义
定义
有时候重新定义方法时,并非完全不满意父类中的方法,只是希望在执行父类中方法的前、后做点加工
多态定义:抽象来讲,就是使用单一接口操作多种类型的对象。对于课本范例,在showBlood()方法中,即可以通过Role类型操作剑士对象,也可以通过Role类型操作魔法师对象
class前也可以加上final关键字,class前使用了final关键字定义,那么表示这个类是最后一个了,不会再有子类,也就是不能被继承
重新定义:重新定义即是对待同一方法子类的修改
新定义:新定义则是一种合法的方法定义,定义一种新方法,对之前的方法没有任何影响。两者定义格式一样,新定义的产生往往是拼写错误。
super与this
两者可能看起来意思差不多,但是有了父类子类之后,this只是代表了当前类,super则代表了父类
而且两者只能选一个用,在构造的第一行才可以使用
垃圾收集
在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。JVM会把无法通过变量引用的对象当作垃圾对象进行搜集
接口定义
我理解的接口就是一段程序中可能有很多类会有共同的行为,但这些类本身并不具有任何关系,如果使用继承的话程序架构会不合理,所以使用统一的接口表示这些类具有共同的行为
对接口中的定义可以有两种处理方式:
1)操作接口中定义的方法
2)再度将该方法标示为 abstract
接口的出现将“多继承”通过另一种形式体现出来,即 “多实现”
接口与接口之间可以有继承关系
我们注意到该方法只定义了一个接口,但是并没有具体操作方法。如果想要拥有role中的行为必须操作接口。我们用关键字implements操作接口
使用interface来定义抽象的行为外观,方法要声明为public abstract,无须且不能有操作。为了方便,也可以省略public abstract,编译程序会协助补齐。可以使用接口枚举常数,只能定义为public static final。为了方便,也可以省略public static final
其他(感悟、思考等,可选)
任何学科的基础一定是书本,只有认真的看书本,不是一味的为了加分而学习,带着学知识的想法去学习,不管学了多少,至少自己的这一天没有白过,可能生活过得太过安逸,高中那种学习的激情已经没有了,但是我相信,如果建立了一种学习的习惯,那么不管怎样,总会比浑浑噩噩的过完整个大学好。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 100/100 | 1/1 | 17/17 | |
| 第二周 | 100/100 | 1/1 | 15/15 | |
| 第三周 | 100/100 | 1/1 | 17/17 | |
| 第四周 | 380/380 | 1/1 | 15/15 |
参考资料
20145229吴姗珊 《Java程序设计》小总结的更多相关文章
- 20145229吴姗珊两天小总结 《Java程序设计》第4周学习总结
20145229吴姗珊两天小总结 <Java程序设计>第4周学习总结 教材学习内容总结 由于自己的基础不好对知识的理解不透彻,所以这两天的学习还是集中在第六章和第七章,对知识点多了一点理解 ...
- 20145229吴姗珊 《Java程序设计》2天小总结
20145229吴姗珊 <Java程序设计>2天小总结 教材学习内容总结 由于这周学的内容比较简单,主要是关于日期.日期之类的东西.所以自己从书上看了一些内容 总结了第四章 认识对象 和第 ...
- 20145229吴姗珊 《Java程序设计》两天小总结
20145229吴姗珊 <Java程序设计>两天小总结 教材学习内容总结 第十章 输入\输出 1.java将输入\输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象 2.从应用程序 ...
- 20145229吴姗珊 《Java程序设计》课程总结
20145229吴姗珊 <Java程序设计>课程总结 (按顺序)每周读书笔记链接汇总 第一周:http://www.cnblogs.com/20145229ss/p/5248728.htm ...
- 20145229吴姗珊《Java程序设计》2天总结
20145229吴姗珊<Java程序设计>2天总结 教材学习内容总结 异常处理 1.使用try.catch Java中所有错误都会被包装成对象,可以尝试(try)执行程序并捕捉(catch ...
- 20145229吴姗珊 《Java程序设计》第3周学习总结
20145229吴姗珊 <Java程序设计>第3周学习总结 教材学习内容总结 第四章 认识对象 4.1类与对象 1.对象(Object):存在的具体实体,具有明确的状态和行为 2.类(Cl ...
- 20145229吴姗珊 《Java程序设计》第9周总结
20145229吴姗珊 <Java程序设计>第9周总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交 ...
- 20145229吴姗珊 《Java程序设计》第8周学习总结
20145229吴姗珊 <Java程序设计>第8周总结 教材学习内容总结 第十四章 NIO与NIO2 NIO: InputStream.OutputStream的输入输出,基本上是以字节为 ...
- 20145229吴姗珊 《Java程序设计》第7周学习总结
20145229吴姗珊 <Java程序设计>第7周学习总结 教材学习内容总结 第13章时间与日期 即使标注为GMT(格林威治时间),实际上谈到的的是UTC(Unix时间)时间. 秒的单位定 ...
随机推荐
- SlidingMenu+Fragment实现当前最流行的侧滑
1 http://www.krislq.com/2013/03/android_case_slidingmenu_fragment/ 2 https://github.com/jfeinstein10 ...
- quick-cocos2d-x3.2 scheduler使用注意事项
近期在使用scheduler时发现例如以下问题 调用: local scheduler = require(cc.PACKAGE_NAME .. ".scheduler") fun ...
- Heterogeneity Wins
 Heterogeneity Wins Edward Garson THE nATuRAl EvoluTion oF CoMpuTER TECHnology has brought about im ...
- 自定义Spring Shell
目录 概述 自定义内置命令 禁用内置命令 覆盖内置命令 自定义命令提示符 自定义命令行选项行为 自定义参数转换器 概述 官网:https://projects.spring.io/spring-she ...
- unity3d动态加载资源
在Unity3D的网络游戏中实现资源动态加载 分类: 最新学习2012-06-14 13:35 1127人阅读 评论(0) 收藏 举报 网络游戏nullvectorjson游戏string 用Unit ...
- iOS左滑手势失效
iOS7之后,苹果优化了一个小功能,就是对于UINavagationController堆栈里的UIViewController,只要轻轻在视图控制器的左边缘右滑一下,该视图控制器就会pop出栈(前提 ...
- WEBserver、应用程序server、HTTPserver差别
WEBserver.应用程序server.HTTPserver差别 WEBserver.应用程序server.HTTPserver有何差别?IIS.Apache.Tomcat.Weblogic.Web ...
- esper 附录A
A2 select irstream symbol, volume, price from MarketDate.win.time(5.5 sec) seconds seconds seconds s ...
- Tomcat startup.bat启动隐藏弹出的信息窗口
to make tomcat to use javaw.exe instead of java.exe using some startup parameter or environment vari ...
- Keepalived 集群在Linux下的搭建
[概述]:Keepalived 是一个免费开源的,用C编写.主要提供loadbalancing(负载均衡)和 high-availability(高可用)功能,负载均衡实现需要依赖Linux的虚拟服务 ...