9.Super详解

super注意点:

  1. surper()是调用父类的构造方法,而且必须在构造方法的第一个
  2. super必须只能出现在子类的方法或者构造方法中!
  3. super()和this()不能同时调用构造方法!
  4. Vs this:

代表的对象不同:

this:本身调用者这个对象

super:代表父类对象的引用

前提:

this:没有继承也可以使用

super:只有在继承条件下才可以使用

构造方法:

this();本类的构造

super();父类的构造!

 1 package com.oop.demo05;
 2
 3 //Java中,所有的类,都默认直接或者间接的继承Object类
 4 //Person 人
 5 public class Person {
 6
 7     public Person() {
 8         System.out.println("Person无参构造执行了");
 9     }
10
11     protected String name = "duanfu";
12
13     public void print() {
14         System.out.println("Person");
15     }
16 }
 1 package com.oop.demo05;
 2
 3 //学生 is 人:派生类,子类
 4 //子类继承了父类,就会拥有父类的全部方法
 5 public class Student extends Person {
 6
 7     public Student() {
 8         //隐藏代码;默认调用了父类的无参构造
 9         super();//调用父类的构造器,必须要在子类构造器的第一行
10         System.out.println("Student无参构造执行了");
11     }
12
13     private String name = "leiwei";
14
15     public void print() {
16         System.out.println("Student");
17     }
18
19     public void test1() {
20         print();//Student
21         this.print();//Student
22         super.print();//Person
23     }
24
25     public void test(String name) {
26         System.out.println(name);//雷伟
27         System.out.println(this.name);//leiwei
28         System.out.println(super.name);//duanfu
29     }
30
31 }
 1 package com.oop;
 2
 3 import com.oop.demo05.Student;
 4
 5 public class Application {
 6
 7     public static void main(String[] args) {
 8
 9         Student student = new Student();
10         //student.test("雷伟");
11         student.test1();
12
13     }
14
15 }

原文地址:https://www.cnblogs.com/duanfu/p/12222566.html

时间: 2024-10-10 21:01:51

9.Super详解的相关文章

第十一章、super()详解

目录 第十一章.super()详解 一.引出super()来由 第十一章.super()详解 一.引出super()来由 原始用法: 在python类的方法中,要调用父类的某个方法,通常是类.方法() 使用非绑定的类方法(用类名来引用的方法),并在参数列表引入待绑定的对象self,达到调用父类方法的目的. 缺点: 这样做的缺点是,当一个子类的父类发生变化时(如类B的父类由A变为C时),必须遍历整个类定义,把所有的通过非绑定的方法的类名全部替换过来 如果代码简单,这样的改动或许还可以接受.但如果代

super()方法详解

super()方法详解 一.单独调用父类的方法 需求:编写一个类,然后再写一个子类进行继承,使用子类去调用父类的方法1. 使用方法1打印: 胖子老板,来包槟榔. 那么先写一个胖子老板的父类,执行一下: class FatFather(object): def __init__(self, name): print('FatFather的init开始被调用') self.name = name print('FatFather的name是%s' % self.name) print('FatFat

Spring事务管理(详解+实例)

写这篇博客之前我首先读了<Spring in action>,之后在网上看了一些关于Spring事务管理的文章,感觉都没有讲全,这里就将书上的和网上关于事务的知识总结一下,参考的文章如下: Spring事务机制详解 Spring事务配置的五种方式 Spring中的事务管理实例详解 1 初步理解 理解事务之前,先讲一个你日常生活中最常干的事:取钱. 比如你去ATM机取1000块钱,大体有两个步骤:首先输入密码金额,银行卡扣掉1000元钱:然后ATM出1000元钱.这两个步骤必须是要么都执行要么都

startActivityForResult和setResult详解

原文:startActivityForResult和setResult详解 startActivityForResult与startActivity的不同之处在于:1.startActivity( ) 仅仅是跳转到目标页面,若是想跳回当前页面,则必须再使用一次startActivity( ).2.startActivityForResult( ) 可以一次性完成这项任务,当程序执行到这段代码的时候,假若从T1Activity跳转到下一个Text2Activity,而当这个Text2Activit

23、磁盘管理—磁盘阵列(RAID)实例详解

磁盘阵列(RAID)实例详解 raid技术分类 软raid技术 硬raid技术 Raid和lvm的区别 为什么选择用raid RAID详解 RAID-0 RAID-1 RAID-5 Raid-10 Raid的管理 案例:创建一个raid10+冗余盘 磁盘阵列(RAID)实例详解 Raid(磁盘阵列)级别介绍 Raid有"廉价磁盘冗余阵列"的意思,就是利用多块廉价的硬盘组成磁盘组,让数据分部储存在这些硬盘里面,从而达到读取和写入加速的目的:也可以用作数据的冗余,当某块硬盘损毁后,其他硬盘

WebView使用详解(三)——WebChromeClient与LoadData补充

前言: 我不会忘了我 忘了我曾说过一定会得到的梦想 --<老大>小柯 相关文章 1.<WebView使用详解(一)--Native与JS相互调用(附JadX反编译)> 2.<WebView使用详解(二)--WebViewClient与常用事件监听> 一.WebChromeClient 1.概述 (1). 与WebViewClient的区别 很多同学一看到这里有Chrome,立马就会想到google 的Chrome浏览器:这里并不是指Chrome浏览器的意思,而是泛指浏览

【Android】RecyclerView详解(一)

1.介绍 RecyclerView是比 ListView 更高级且更具灵活性的组件. 此组件是一个用于显示庞大数据集的容器,可通过保持有限数量的视图进行非常有效的滚动操作. 如果您有数据集合,其中的元素将因用户操作或网络事件而发生改变,请使用 RecyclerView 小组件. RecyclerView使用起来很方便因为它: 提供了一种插拔式的体验,高度的解耦,异常的灵活使用; 显示的样式更丰富包括水平,竖直,Grid,瀑布显示方式; 可以通过ItemDecoration自定义Item间的间隔;

Android高效率编码-第三方SDK详解系列(三)——JPush推送牵扯出来的江湖恩怨,XMPP实现推送,自定义客户端推送

Android高效率编码-第三方SDK详解系列(三)--JPush推送牵扯出来的江湖恩怨,XMPP实现推送,自定义客户端推送 很久没有更新第三方SDK这个系列了,所以更新一下这几天工作中使用到的推送,写这个系列真的很要命,你要去把他们的API文档大致的翻阅一遍,而且各种功能都实现一遍,解决各种bug各种坑,不得不说,极光推送真坑,大家使用还是要慎重,我们看一下极光推送的官网 https://www.jpush.cn/common/ 推送比较使用,很多软件有需要,所以在这个点拿出来多讲讲,我们本节

Android触摸屏事件派发机制详解与源码分析二(ViewGroup篇)

1 背景 还记得前一篇<Android触摸屏事件派发机制详解与源码分析一(View篇)>中关于透过源码继续进阶实例验证模块中存在的点击Button却触发了LinearLayout的事件疑惑吗?当时说了,在那一篇咱们只讨论View的触摸事件派发机制,这个疑惑留在了这一篇解释,也就是ViewGroup的事件派发机制. PS:阅读本篇前建议先查看前一篇<Android触摸屏事件派发机制详解与源码分析一(View篇)>,这一篇承接上一篇. 关于View与ViewGroup的区别在前一篇的A