zoukankan      html  css  js  c++  java
  • 简单继承

    package com.xing.test;
    
    public class Peple168 {
        public String name;
        public int age;
        public String sex;
        public String sn;
        public Peple168(String name,int age,String sex,String sn){
            this.name=name;
            this.age=age;
            this.sex=sex;
            this.sn=sn;
        }
      public Peple168(String name){
          this.name=name;
    }
    @Override
    public String toString() { return "Peple168 [姓名=" + name + ", 年龄=" + age + ", 性别=" + sex + ", 身份证号=" + sn + "]"; } } package com.xing.test; public class Student168 extends Peple168 { private String stuNo; public Student168(String name, int age, String sex, String sn,String stuNo) { super(name, age, sex, sn);//由于子类不能继承父类的构造方法,因此要调用父类的构造方法,必须在子类的构造方法体的第一行使用super().已调用父类相应的构造方法,来完成子类对象的部分初始化工作。父类有两个构造方法,该子类中调用了有四个参数的方法 this.stuNo=stuNo; } @Override public String toString() { return "Student168 [姓名=" + name + ", 年龄=" + age + ", 性别=" + sex + ", 身份证号=" + sn + ",stuNo=" + stuNo + "]"; } } package com.xing.test; public class Teacher168 extends Peple168 { private int tYear; public Teacher168(String name, int age, String sex, String sn,int tYear) { super(name, age, sex, sn); this.tYear=tYear; } @Override public String toString() { return "Teacher168 [姓名=" + name + ", 年龄=" + age + ", 性别=" + sex + ", 身份证号=" + sn + ",tYear=" + tYear + "]"; } } package com.xing.test; public class Peple168Test { /** * @param args */ public static void main(String[] args) { Peple168 pp1=new Peple168("zhang", 15, "nv", "123555"); System.out.println(pp1); Peple168 pp2=new Student168("san", 16, "M", "564", "56"); System.out.println(pp2); Peple168 pp3=new Teacher168("wang", 56, "M", "564", 6); System.out.println(pp3); } }
    Peple168 [姓名=zhang, 年龄=15, 性别=nv, 身份证号=123555]
    Student168 [姓名=san, 年龄=16, 性别=M, 身份证号=564,stuNo=56]
    Teacher168 [姓名=wang, 年龄=56, 性别=M, 身份证号=564,tYear=6]

    如果在父类中存在有参的构造方法而并没有重载无参的构造方法,那么在子类中必须含有有参的构造方法,因为如果子类中不含有构造方法,默认会调用父类的无参构造方法,而在父类中并没有无参的构造方法,因此会出错。

    Java不允许多继承,即一个子类只能有一个直接父类而可以有多个间接父类。如果类声明的头部没有定义任何extends子句,则该类隐含继承java.lang.Object类

    super.member   member 是父类中的方法或属性名称,这种形式多用于子类的成员名隐藏了父类的同名成员的情况。

  • 相关阅读:
    separable-sss
    Separable Subsurface Scattering Computer Graphics Forum 2015
    GPU Gems 3》:真实感皮肤渲染技术总结
    Subsurface scattering support in Blinn-Phong material
    vue-3d-model
    Ubuntu16.04 安装显卡驱动 cuda,cudnn
    vue.js three.js component
    imagemagick Selective blur
    Leetcode 201.数字范围按位与
    Leetcode 190.颠倒二进制位
  • 原文地址:https://www.cnblogs.com/tjlgdx/p/6141401.html
Copyright © 2011-2022 走看看