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. UVA 11082 矩阵解压(网络流建模)

    矩阵解压 紫书P374 建模真的是挺难的,如果直接给我这题,我是想不到用网络流的,所以还应多做网路流建模,学会如何转化成网络流 还有,现在用的EK算法是比较慢的,还应去看看Dnic和ISAP,并且理解 ...

  2. [Tex学习笔记]开方

    $$\sqrt[n]{\frac{a}{b}}$$ $$\sqrt[\uproot{7}n]{\frac{a}{b}}$$

  3. PCL还是SAP?

    When you first created the Hello solution in Visual Studio, you had a choice of two application temp ...

  4. 修复eclipse中使用mave update project后JRE都变成1.5的问题

    在项目中的parent pom中添加如下代码即可 <properties> <project.build.sourceEncoding>UTF-8</project.bu ...

  5. nodejs初探(二)第一个nodejs程序“hello world”

    直接用文本编辑器编写helloworld.js,保存在桌面 var http = require("http"); http.createServer(function(reque ...

  6. eclipse 3.7 配置svn

    1.首先需要安装SVN客户端TortoisSVN.地址:http://tortoisesvn.net/ 2.eclipse低版本的需要安装Subversive Revision Graph,地址:ht ...

  7. Node以数据块的形式读取文件

    在Node中,http响应头信息中Transfer-Encoding默认是chunked. Transfer-Encoding:chunked Node天生的异步机制,让响应可以逐步产生. 这种发送数 ...

  8. RedHat5--yun源无法使用问题解决

    YUM是Redhat Linux在线安装更新及软件的工具,但是这是RHEL5的收费功能,如果没有购买Redhat的服务时不能使用RHEL5的更新源的,会提示注册. 由于CentOS是从Redhat演化 ...

  9. PHP获取日期

    <?php echo "今天:".date("Y-m-d")."<br>"; echo "昨天:".d ...

  10. 44. 普通对象建一个用户方法,提交时报:失败:建立业务逻辑对象失败:业务逻辑定义更新到数据库失败:ORA-00904: "DEFVERSION": 标识符无效

    LBBIZPROCESSDEFSLBHISTORYBIZPROCESSDEFSLBHISTORYMULTIWFDEFSDESIGNLBHISTORYWORKFLOWDEFSDESIGNLBMULTIW ...