文档章节

Java之继承与多态5.3.1--super的用法

Watto
 Watto
发布于 2017/04/05 12:09
字数 402
阅读 4
收藏 0

package com.javaSE08.supe;
//子类可以修改父类的状态,定义了和父类同名的成员变量,父类的那个成员变量就被隐藏,可以通过super.成员变量来调用
/*子类可以重写父类的行为,定义了和父类同名的方法,父类的方法被重写,要求方法名相同,参数也要相同,访问权限不能缩小
可以通过super.成员方法来调用父类的成员方法*/
//super的使用
//1.表示父类的对象,可以调用父类被隐藏的成员变量或被重写的成员方法
//2.super()或者super(参数列表),调用父类的构造方法,必须写在第一行
public class Son extends Father {
    //成员变量
    String name;
    int age;
    
    //构造方法
    public Son(String name, int age) {
        //super("张三",45);
        this.name = name;
        this.age = age;
        System.out.println(name);
        System.out.println(super.name);
    }
    
    public Son(){
        //super();    //调用父类无参数的构造方法,即使不写,也会默认调用这条语句
        super("张三",45);    //调用父类中String,int参数的构造方法
        
    }
    //吃肯德基
    public void eat(int t){
        System.out.println("在吃肯德基");
        super.eat();        //调用父类被重写的方法
    }
    
    //重写
    public void print(){
        System.out.println("Father:"+name+"--"+age);
    }
    
}
 

 

package com.javaSE08.supe;

public class Father {
    //成员变量
    String name="老张";
    int age = 50;
    //构造方法
    public Father(){
        System.out.println("父类空参数的构造方法");
    }
    public Father(String name,int age){
        this.name = name;
        this.age = age;
    }
    
    //成员方法
    
    public void eat(){
        System.out.println("在吃东西");
    }
    
    public void print(){
        System.out.println("Father:"+name+"--"+age);
    }
    
    
    
}
 

 

package com.javaSE08.supe;

public class Test {
    public static void main(String[] args) {
        //创建一个son对象
        Son son = new Son("小张",17);
        
        son.eat();
        son.print();
        
    }
}
 

© 著作权归作者所有

Watto
粉丝 1
博文 71
码字总数 27737
作品 0
杭州
程序员
私信 提问
Java基础笔记 -------------面向对象上(三大特性)

面向对象三个特性:继承(Inheritence)、封装(Encapsulation)、多态(Polymorphism). 1、封装(Encapsulation): 类包含了数据与方法,将数据与方法放在一个类中就构成了封装(一般来说,...

查封炉台
2014/04/21
0
0
Java程序员从笨鸟到菜鸟之(三)面向对象之封装,继承,多态(下)

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188 上接:Java程序员从笨鸟到菜鸟之(二)面向对象之封装,继承,多态(上) 五:再谈继承 继承是一种联结类的层...

长平狐
2012/11/12
106
0
Java中类的属性不体现多态性

多态出现的缘由:java的引用变量有两种类型:一个是编译时的类型,一个是运行时类型。 编译时类型:声明该变量时使用的类型决定。 运行时类型:实际赋给该变量的对象决定 如果编译时和运行时...

仟昭
2018/07/02
0
0
小谈Java Enum的多态性

Enum+多态,我没说错,不过Enum是不可以被继承的,也不可以继承自别人,只是能实现接口而已,何谈多态? 不过还是先看看“现象”吧: Java代码 public enum Fruit { APPLE, PEAR, PEACH, OR...

关西大汉弹琵琶
2015/05/30
0
0
Java 面试题问与答:编译时与运行时

Q:下面的代码片段中,行A和行B所标识的代码有什么区别呢? public class ConstantFolding { static final int number1 = 5; static final int number2 = 6; static int number3 = 5; stati......

heroShane
2014/02/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

高并发场景下的缓存有哪些常见的问题?

一、缓存一致性问题 当数据时效性要求很高时,需要保证缓存中的数据与数据库中的保持一致,而且需要保证缓存节点和副本中的数据也保持一致,不能出现差异现象。 这就比较依赖缓存的过期和更新...

别打我会飞
22分钟前
1
0
List list = new ArrayList()为何父类引用指向子类对象(多态)

态:要有继承,方法的重写,父类引用指向子类对象 疑问一:父类引用指向子类对象 与指向父类对象 Animal cat = new Cat(); //向上转型。 父类引用指向子类对象,该引用不能再访问子类新增加的...

architect刘源源
23分钟前
0
0
分而治之-快速排序

快速排序的思想: 快速排序首先在数组中确定1个枢纽项(比如数组中的第一个元素),将大于该枢纽项的元素放到右侧,小于该枢纽项的元素放到左侧,这样枢纽项将数组划分成两部分。接着继续对划...

万山红遍
今天
4
0
Qt编写自定义控件9-导航按钮控件

前言 导航按钮控件,主要用于各种漂亮精美的导航条,我们经常在web中看到导航条都非常精美,都是html+css+js实现的,还自带动画过度效果,Qt提供的qss其实也是无敌的,支持基本上所有的CSS2属...

飞扬青云
今天
3
0
Python开发工具:pyJasper

原文:https://www.oschina.net/p/pyjasper 前言 pyJasper是 JasperReports 网络服务器的 Python 客户端。 pyJasper 是一组 Python 基础工具,可以用来处理 JasperReports 报表 。因为 Jasper...

A_裙232550246
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部