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

教材学习内容总结

  • 理解封装、继承、多态的关系
  • 理解抽象类与接口的区别
  • 掌握S.O.L.I.D原则
  • 了解模式和设计模式
  • 能正确覆盖方法
  • 了解垃圾回收机制
  • 掌握Object类
  • 掌握enum

get到的重点

第六章 继承与多态

  • 相关概念:

    • 继承:避免多个类间重复定义共同行为
    • 子类与父类:
      • 父类:

        • 对有着共同特性的多类事物,进行再抽象成一个类,这个类就是多类事物的父类
        • 父类的意义在于可以抽取多类事物的共性
      • 子类既可以是一个子类,也可以是一个父类;父类既可以是一个父类,也可以是一个子类
      • 在Java中只有单一继承,即子类只能继承一个父类
      • 子类与父类间会有is-a的关系(子类 is a 父类
    • is-a
    • 多态:
      • 继承可以复用代码,更大的用处是实现「多态」
      • 封装是继承的基础,继承是多态的基础
      • 「用父类声明对象引用,用子类生成对象」就有了多态
    • 覆盖:子类中有和父类中可访问(可继承到子类)的同名同返回类型同参数表的方法,就会覆盖从父类继承来的方法
    • 抽象方法、抽象类:
      • Java中有抽象方法的类一定是抽象类,但抽象类中的方法不一定都是抽象方法
      • 抽象类不能使用new生成对象
  • 关键字:
    • extends

      • 继承父类的行为,再扩充父类原本没有的行为
      • 继承时使用extends关键字,private成员也会被继承,但子类无法直接存取,必须通过父类提供的方法来存取(父类愿意提供访问方法的话)
    • 权限关键字:

      • public:权限最大

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

      • private:权限最小

        但实际上有四个权限范围(未定义权限关键字时默认为包范围):

        |关键字 | 类内部| 相同包类|不同包类|

        | -------- | :----------------

        20155314 2016-2017-2 《Java程序设计》第4周学习总结的更多相关文章

        1. 20155336 2016-2017-2《JAVA程序设计》第九周学习总结

          20155336 2016-2017-2<JAVA程序设计>第九周学习总结 教材学习内容总结 第十六章 JDBC(Java DataBase Connectivity)即java数据库连接 ...

        2. 20145213《Java程序设计》第九周学习总结

          20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

        3. 20145213《Java程序设计》第二周学习总结

          20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

        4. 20145213《Java程序设计》第一周学习总结

          20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

        5. 21045308刘昊阳 《Java程序设计》第九周学习总结

          21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

        6. 20145330孙文馨 《Java程序设计》第一周学习总结

          20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

        7. 20145337 《Java程序设计》第九周学习总结

          20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

        8. 20145337 《Java程序设计》第二周学习总结

          20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

        9. 20145218《Java程序设计》第一周学习总结

          20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

        10. 《Java程序设计》第九周学习总结

          20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

        随机推荐

        1. github 上如何直接预览仓库中的html,搭建自己的主页

          前言:最近在写vue+element ui 的一些demo,就在github上建了个仓库来管理,但是希望能直接在github上就能预览效果,所以才有了这篇文章.转载请注明出处:https://www. ...

        2. JAVA虚拟机的生命周期

          一个运行时的Java虚拟机实例的天职是:负责运行一个java程序.当启动一个Java程序时,一个虚拟机实例也就诞生了.当该程序关闭退出,这个虚拟机实例也就随之消亡.如果同一台计算机上同时运行三个Jav ...

        3. CSS相对定位|绝对定位(五)之z-index篇——张鑫旭

          by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=1855 补充于2016 ...

        4. Ajax 的几种方法应用

          一,js实现ajax异步请求,简单例子 try.jsp <%@ page language="java" import="java.util.*" pag ...

        5. js实现放大镜的效果

          <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

        6. 计时器(Chronometer)

          计时器(Chronometer) 常用属性:format(计时器的计时格式) 常用方法: setBase(long base) 设置计时器的起始时间 setFormat(String format) ...

        7. Charles基础

          一.Charles 监控其他设备连接方式 1.XP系统:控制面板——>Internet选项——>连接(tab)——>局域网(LAN)设置——>局域网设置——>代理服务器, ...

        8. Jmeter入门--工具组成和线程组

          1.Jmeter工具组成部分: 资源生成器:用于生成测试过程中服务器,负载机的资源代码.(LoadRunner中的VuGen) 用户运行器:通常是一个脚本运行引擎,根据脚本要求模拟指定的用户行为.(L ...

        9. python文本文件处理和用户输入

          #用户输入 a = input('please input: ') #这个输入什么即是什么,比如输入1,则a变量=1,输入'abc',则a变量 = 'abc',输入abc则报错,因为会把abc当做一个 ...

        10. 【Pygame】 简易五子棋

          import pygame import sys import time import random pygame.init() screen_size = (800,560) WIDTH = 720 ...