20145301第四周学习总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20145301第四周学习总结相关的知识,希望对你有一定的参考价值。

20145301第四周学习总结

教材学习内容总结

第六章

6.1 何谓继承

  • 何谓继承 面向对象中,子类继承父类,避免重复的行为定义,不过并非为了避免重复定义行为就使用继承,滥用继承而导致程序维护上的问题时有所闻。如何正确判断使用继承的时机,以及继承之后如何活用多态,是学习继承时的重点。:

  • 通过extends继承的父类可以是不加abstract关键字的普通类,也可以是加了abstract关键字的抽象类。继承普通类时可以覆写父类的方法,或者创建自己独有的方法,或者这两者都不使用。继承抽象类时,必须覆写抽象类中的全部抽象方法

  • implements继承的父类是且必须是一个interface定义的接口类,且接口中不能定义方法体,只能拥有私有变量和方法名。子类必须实现所有接口中的方法

  • 如果一个方法中含有与成员变量同名的局部变量,则方法中对该变量的访问以局部变量进行访问,也就是说,方法体中的局部变量覆盖了成员变量。如果要在该范围内访问成员变量,就必须使用this关键字

  • 不能在静态上下文和静态代码块中使用this关键字,编译器不允许这么做。

  • 子类可以重写父类的方法,或者说可以覆盖父类的方法,只要在子类中定义与父类相同的方法就可以了。但是,方法的声明一定要和父类的方法声明一样

  • 可以使用super关键字应用父类的方法,然后再添加新的业务代码。

    6.2继承语法细节

第七章

7.1 何谓借口

  • 初始流程 , 构造函数是与类名称同名的方法,不用声明返回类型;构造函数可多个,只需参数类型和个数有所区别,这称为重载构造函数;如果没有定义构造函数,系统会自动为其添加一个无参数、无内容的构造函数;创建对象时,数据成员就会初始化,如果没有指定初始值,则会使用默认值初始化;如果撰写了对象初始区块,对象建立之后会先执行对象初始区块,接着才调用指定的构造函数。
  • 操作流程 , 在类中定义方法,如果不用返回值,方法名称前可以声明 void ;在java命名习惯中,方法名称首字母是小写,后面单词首字母大写;方法可定义多种,对于类似方法可定义相同名称,只要其参数的个数、类型有所区别;当定义取值的方法时,统一规定命名方式,以get开头,后加首字母大写的单词。
  • 内部数据 , 如果有些数据是类所私有的,在java中可以使用private 关键词定义,当没有提供方法存取 private 成员时,用户就不能进行存取,即封装了类私有数据,让用户无法直接存取,而必须通过所提供的操作方法,经过定义了的流程才有可能存取私有数据;private也可用在方法或构造函数声明上。
  • 封装目的 , 主要是隐藏对象细节,将对象当作黑箱进行操作。

7.2 借口语法细节

问题和解决过程

问题

  • 开源中国代码托管问题,我在Mac版上暂未找到一劳永逸的办法。
  • 其中一个有关import的代码编译不通过,截图如下:

解决过程

已完成最近一段时间主要的代码托管。 截图如下:

其他

  • 重载和覆盖的区别: 
    重载发生在同一个类之中,重载要求函数名相同,参数不同。特别的函数的返回类型不影响重载。 
    覆盖发生在父子类之间,覆盖同样要求函数名相同,并且参数也相同。
    两同是即是函数名和参数是相同的;两小是抛出的异常更小或相同,返回类型更小或相同;一大是访问权限更大或相同。  
    构造函数和静态方法支持重载,但是不可以被覆盖。

  • 抽象类和接口的区别:  
    在设计理念上,一个类只能继承一个抽象类,但是可以实现多个接口。  
    抽象类可以含有普通成员变量和非抽象的方法,而接口的成员变量和方法都有固定的修饰。即:public static final 和 public abstract。对于继承者来说,抽象类的方法子类可以不全部复写,但是接口的方法抽象类是必须全部复写的。  
    抽象类也可以implements接口,可以实现接口中的方法,也可以不实现。抽象类不可以被final修饰。抽象类可以包含非抽象方法。

    心得体会

    这周感觉学习比较吃力

学习进度条

目标 代码行数 博客量学习时间重要成长
目标 4000行 30篇 400小时 ----
第一周  100/4000  2/30 15/400 hello java
第二周 350/4000 3/30 40/400 流程控制
第三周 500/4000 4/30 50/400 类与对象、封装
第四周 700/4000 5/30 50/400 继承、接口

参考资料

    • 《Java学习笔记》
    • 《Java学习笔记》学习指导
    • 毕向东java教学

以上是关于20145301第四周学习总结的主要内容,如果未能解决你的问题,请参考以下文章

20145301第三周学习总结

20145301 《信息安全系统设计基础》第6周学习总结

20145301 《信息安全系统设计基础》第1周学习总结

20145301第五周学习总结

第四周学习总结

20145301第二周学习总结