Super的作用:

1. super可以直接调用父类的属性和方法。

2. super可以在子类的构造器中调用父类的构造器。

我们知道:实例化一个对象时,会调用构造器。

我们发现,仅仅实例化的是Student类的实例,但是父类的构造器也自动被调用了! 这是为啥?? 因为,在子类构造器中的第一行代码,总是会默认调用父类的无参构造器。

当super调用父类构造器时,调用必须是子类构造函数中的第一个语句。如下,故意在子类的构造器的第二句调用super(“张三丰”,100), 所以报错!

对父类构造器的调用,必须是子类构造器的第一句。

经典判断题:

1. 当父类的构造器不是被private修饰时,子类才能继承父类的构造器。 错!

a) 因为,构造器,在任何条件下,都不会被子类继承。

2. 构造器不能被子类继承,但是可以被子类调用。 对!

a) 因为,子类可以再构造器中的第一句,利用super();来调用父类构造器。

对比: 我们学过的this,可以代表当前对象。 而现在学习完的super不能代表任何对象,super仅仅表示父类的特征。

类与类之间的关系:

1. 依赖

2. 关联

3. 继承

依赖就是一个类的对象,作用另外一个类的方法中的局部变量。就是依赖关系:

此时,我们说: Person依赖于Ship,完成了crossOcean这个动作。

依赖关系,是比较弱的关系, 假设一个人,穿越10次海洋, 是不是每次都依赖于同一艘船?

关联关系: 一个类的对象,作为另外一个类的属性,构成了关联关系。

易维(深圳)科技有限公司

多维你的世界

微信:EVisYOJOY

微博:http://weibo.com/EVisYOJOY

官网:http://www.evister.com/

联系&投稿:service@evister.com

toString的理解的更多相关文章

  1. 【java基础】为什么重写toString()方法?

    不得不说,有很多java初学者写java实体类的时候,并没有真正理解重写toString() 方法,可能是口头知道也可能是跟风随带添加toString() 方法,并没有真正理解其意义,如果真要被问起来 ...

  2. Ado.net之连接数据库

    一.Ado.net的核心 Ado.net的核心为两组重要的类,一个负责处理软件内部的实际数据(DataSet),另一个负责与外部数据系统通信(DataProvider) DataSet:包含一个或多个 ...

  3. (转载)深入了解MyBatis参数

    原文地址:http://blog.csdn.net/isea533/article/details/44002219 深入了解MyBatis参数 相信很多人可能都遇到过下面这些异常: "Pa ...

  4. 20155203 实验二《Java面向对象程序设计》实验报告

    20155203 实验二<Java面向对象程序设计>实验报告 一.实验内容 参考http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTE ...

  5. JS高级学习笔记(1)- 数据类型及转换规则

    必读: Javascript对象Oject的强制类型转换 JavaScript筑基篇(二)->JavaScript数据类型 聊一聊valueOf和toString 深入理解JavaScript系 ...

  6. 关于toString()和valueOf()以及Object.prototype.toString.call()的结合理解

    一.先说说String(): String()是全局函数,把对象的值转换为字符串. 语法:String(obj); 任何值(对象)都有String()方法,执行过程是这样的:首先,如果该对象上有toS ...

  7. 深入理解Javascript中的valueOf与toString

    基本上,javascript中所有数据类型都拥有valueOf和toString这两个方法,null除外.它们俩解决javascript值运算与显示的问题,本文将详细介绍,有需要的朋友可以参考下. t ...

  8. 对ToString("X2 ")的理解

    /// <summary>        /// 将byte型转换为字符串        /// </summary>        /// <param name=&q ...

  9. C# ToString("x2")的理解

    1).转化为16进制. 2).大写X:ToString("X2")即转化为大写的16进制. 3).小写x:ToString("x2")即转化为小写的16进制. ...

随机推荐

  1. PowerDesigner里数据表里AUTO_INCREMENT(自增)的设置

    使用流程: File->New Model->Model types->Physical Data Model->Physical Diagram 在下边DBMS里选择:MyS ...

  2. [Linux] LVM的条带化

    一.什么是条带化 当多个进程同时访问一个磁盘时,可能会出现磁盘冲突.磁盘系统对访问次数(每秒的IO操作,IOPS)和数据传输速率(读写速率,TPS)有限制. 当达到这些限制时,后面需要访问磁盘的进程就 ...

  3. TEST设置

  4. String 及其数组的相关问题

    由其他类型转String一般用三种方法 方法1:采用 Object.toString()方法 请看下面的例子: Object object = getObject(); System.out.prin ...

  5. $.when().then()

    当两个Ajax请求是成功的则执行函数myFunc,如果任一个有错误则执行myFailure. $.when($.ajax("/page1.php"), $.ajax("/ ...

  6. Java之重载与覆盖

    有的时候,类的同一种功能有多种实现方式,到底采用哪种实现方式,取决于调用者给定的参数.例如我们最常用的System.out.println()能够打印出任何数据类型的数据,它有多种实现方式.运行时,J ...

  7. Spark Idea Maven 开发环境搭建

    一.安装jdk jdk版本最好是1.7以上,设置好环境变量,安装过程,略. 二.安装Maven 我选择的Maven版本是3.3.3,安装过程,略. 编辑Maven安装目录conf/settings.x ...

  8. CSS盒子模型学习记录1

    http://www.blueidea.com/tech/web/2007/4545.asp 代码试验: html代码: <!DOCTYPE html PUBLIC "-//W3C// ...

  9. 【227】◀▶ IDL 其他常用函数

    参考:Programming and Control Routines —— 编程和控制函数 01   N_ELEMENTS 表达式或者变量的元素个数. 02   DEFSYSV 定义系统变量. 03 ...

  10. MySQL表分区技术

    MySQL表分区技术 MySQL有4种分区类型: 1.RANGE 分区 - 连续区间的分区 - 基于属于一个给定连续区间的列值,把多行分配给分区: 2.LIST 分区 - 离散区间的分区 - 类似于按 ...