20165219 2017-2018-2 《Java程序设计》第4周学习总结

20165219 2017-2018-2 《Java程序设计》第4周学习总结

课本知识总结

第五章

  • 在java中,继承时使用extends关键字,private成员也会被继承,只不过子类无法直接存取,必须通过父类提供的方法来存取

  • 检查多态语法逻辑是否正确,方法是从=右边开始读:右边是不是一种左边呢?

  • 多态:单一接口操作多种类型的对象。

  • java中规定内含抽象方法的类,一定要在class前标示abstract,表示这是一个定义不完整的抽象类。

  • 被声明protected的成员,相同包中的类可以直接存取,不同包中的类可以在继承后的子类直接存取。

  • java中有public、protected和private三个权限关键字,但实际上有四个权限范围。

  • 如果想取得父类中的方法,可以在调用方法前,加上super关键词。重新定义方法时要注意,对于父类中的方法权限,只能扩大不能缩小。如果返回类型是父类中方法返回类型的子类,也是可以编译的。

  • 如果子类构造函数中没有指定执行父类中哪个构造函数,默认会调用父类中无参构造函数。如果想执行父类中某构造函数,可以使用super()指定。this()和super()只能选择一个调用,且必须在构造函数的第一行。

第六章

  • 接口是一种特殊的类,里面全部是由全局常量(static final)和公共的抽象方法所组成。

  • 接口中的方法没有操作时一定得是公开且抽象的。

  • 类要操作接口必须用implements关键字。

  • 接口的数据成员,只允许被public, static, final修饰。接口的方法成员,只允许被public, abstract修饰。

  • 操作某接口时,对接口中定义的方法有2种处理方式,一是操作接口中定义的方法,二是再度将该方法标示为abstract.

  • 接口中的public abstract可以省略,但要注意:接口中的方法必须是“抽象方法”,不能有方法体,允许省略public及abstract关键字。

  • 接口中可以使用extends继承接口,并且可以继承多个接口,接口不能继承一个抽象类,却可以通过extends同时继承于多个接口。

教材学习中遇到的问题以及解决

  • 如果有两个接口都定义了某方法,那操作这两个接口的类会不会有错误?

解决:不会有错误,会照样通过编译。但在设计上要思考一下:两个接口都定义的方法是否表示不同的行为。

  • 如果子类构造函数中没有指定执行父类中哪个构造函数,默认会调用父类中无参数构造函数,那要怎样指定调用哪个函数呢?

解决:如果想执行父类中某构造函数,可以使用super()指定,要注意this()与super()只能选择一个调用,而且一定要在构造函数一一行执行。

代码调试中遇到的问题

本周按照课本敲完代码,有很多地方大致可以看懂,但是自己写不出来。

代码托管

代码行数截图
image

posted @ 2018-03-25 17:09  165219wyb  阅读(119)  评论(0编辑  收藏  举报