继承:

Extends在英文中的翻译是拓展.

但是java允许多重继承. 一条线.单线.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

在JAVA中,除了Object类, 每个类都有一个直接父类.

Object类是最高类.

override方法的覆盖(复写):

当父类中的某个方法不符合子类中的特征的时候,子类需要覆盖父类的方法重新编写.

子类方法覆盖父类方法,如果调用子类的方法,方法名和父类相同也会执行子类的方法,如果子类找不到调用的方法才会去父类中寻找,父类找不到再继续向上找直到找到为止.

方法的覆盖语法很简单. 方法名完全相同,只有方法的内容不同.方法名粘贴复制即可.

只有方法才有覆盖的概念,字段没有覆盖的概念.

子类的访问权限必须大于等于父类的访问权限.private不存在覆盖.  @override用来判断子类方法是否覆盖了父类的方法.

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

super关键字:

需求:在子类方法中调用父类中被覆盖的方法.

使用super.方法

子类初始化的过程:

在创建子类对象之前会创建父类对象.创建子类对象会调用子类构造器,在调用子类构造器之前会调用父类构造器.而且是无参的父类构造器super()

如果父类构造器是被写出来的.且不是无参数构造器.那么就需要自己写super()初始化构造器.而不用系统默认的隐藏的无参数构造器.

并且super()要作为第一个语句.因为必须要先有爸爸再有儿子. 1

如果父类没有可以被子类访问的构造器,则不能存在子类.因为子类的创建要先有父类.

因为name是类私有, 用getName进行暴露.

因为如果在子类中加入name.age信息,那么就必须要降低父类中name.age的限制安全等级.降为protected甚至更低才可以在子类中调用. 这样不利于信息安全.

说我我们在父类中设置name和age然后通过GetName向外暴露.    这样做的同时就修改了父类的构造器,将父类的构造器设置了参数,相应的,我们就需要修改子类默认的super(),

将super()加上name,age参数    如果外界需要调用age和name通过getName就可以调用.    this.要看清是谁来调用  如果是在Animal中调用this.name = name.   那么this.name指的是Animal的成员变量

如果在Public void say里调用的this.color,  say是Fish的方法.那么this.color指的是类Fish的Color =  private String color.

static不能与this或者super共存.   static是类级别的,    this和super是对象级别的. \

----------------------------------------------------------------------------------------------------------------------------------

Object类和常用类:

面向对象Part3的更多相关文章

  1. 面向对象 part3 构造函数 原型函数

    6.2创建对象 方法:对象字面量  object构造函数 缺点:都是创建单个对象.同一个接口创建多个对象,会产生大量重复代码 6.2.1工厂模式 用函数封装以特定的接口创建对象 function cr ...

  2. day 25 面向对象之接口、抽象类、多态、异常处理、反射、断言

    复习 '''继承​1.父类:在类后()中写父类们class A:passclass B:passclass C(A, B):pass​2.属性查找顺序:自己 -> ()左侧的父类 -> 依 ...

  3. python自动化开发-[第八天]-面向对象高级篇与网络编程

    今日概要: 一.面向对象进阶 1.isinstance(obj,cls)和issubclass(sub,super) 2.__setattr__,__getattr__,__delattr__ 3.二 ...

  4. python基础——18(面向对象2+异常处理)

    一.组合 自定义类的对象作为另一个类的属性. class Teacher: def __init__(self,name,age): self.name = name self.age = age t ...

  5. python语言(七)面向对象、异常处理

    一.异常处理 python解释器检测到错误,触发异常(也允许程序员自己触发异常).程序员编写特定的代码,专门用来捕捉这个异常(这段代码与程序逻辑无关,与异常处理有关).如果捕捉成功则进入另外一个处理分 ...

  6. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  7. angular2系列教程(六)两种pipe:函数式编程与面向对象编程

    今天,我们要讲的是angualr2的pipe这个知识点. 例子

  8. 一起学 Java(二)面向对象

    一.方法函数 函数也称为方法,就是定义在类中的具有特定功能的一段独立代码.用于定义功能,提高代码的复用性. 函数的特点1> 定义函数可以将功能代码进行封装,便于对该功能进行复用:2> 函数 ...

  9. js面向对象学习 - 对象概念及创建对象

    原文地址:js面向对象学习笔记 一.对象概念 对象是什么?对象是“无序属性的集合,其属性可以包括基本值,对象或者函数”.也就是一组名值对的无序集合. 对象的特性(不可直接访问),也就是属性包含两种,数 ...

随机推荐

  1. Underscore 整体架构浅析

    前言 终于,楼主的「Underscore 源码解读系列」underscore-analysis 即将进入尾声,关注下 timeline 会发现楼主最近加快了解读速度.十一月,多事之秋,最近好多事情搞的 ...

  2. 【C#】透屏幕,屏幕扩展

    if (!SCREEN_STATE) { ) { System.Windows.Forms.Screen s2 = System.Windows.Forms.Screen.AllScreens[]; ...

  3. Android----消息弹出框

    关于Android的知识,自从工作了就没有什么时间去总结学习过的知识,我个人比较喜欢学习后总结,今天就写一下关于android中消息弹出框的几种方式的简单示例,按照自己的思路写了一段,希望对和我一样在 ...

  4. vue.js第六课

    class与style绑定 绑定HTML class 对象语法 数组语法 绑定内联样式 对象语法 数组语法 自动添加前缀 1.class与style绑定. 数据绑定一个常见需求就是 操作元素的clas ...

  5. 进度条投票-W

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

  6. 一个简单的CSS3+js 实现3D BOX

    <!doctype html><html><head> <meta charset="UTF-8"> <title>Do ...

  7. 神秘代理-Proxy

    前言: 代理模式作为常见的设计模式之一,在项目开发中不可或缺.本文就尝试着揭开代理的神秘面纱,也欢迎各路人批评指正! 1.如何实现代理: [假设有个关于汽车移动(move)的计时需求]设计:Movea ...

  8. Junit的使用

    Junit是用于编写单元测试的框架.对于已经写好的函数,可以使用Junit生成单元测试代码. 自己的环境是:Linux Java环境是:JDK1.7 IDE:Eclipse Java EE IDE f ...

  9. bzoj 3676 回文串 manachar+hash

    考虑每个回文串,它一定是它中心字母的最长回文串两侧去掉同样数量的字符后的一个子串. 所以我们可以用manachar求出每一位的回文半径,放到哈希表里并标记出它的下一个子串. 最后拓扑排序递推就行了.. ...

  10. 【codeforces 442B】 Andrey and Problem

    http://codeforces.com/problemset/problem/442/B (题目链接) 题意 n个人,每个人有p[i]的概率出一道题.问如何选择其中s个人使得这些人正好只出1道题的 ...