父类和子类以及super关键字】的更多相关文章

super和this关键字的特点类似:super代表的是父类对象的引用. 当子父类的成员出现同名时,可以通过super来进行区分. 子类的构造方法中,通过super关键字调用父类的构造方法. public class JaveTeacher extends Teacher{ public JaveTeacher(String name,String scholol){ super(name,school); //父类构造方法完成对相关字段值的初始化 } } 列程: public class Te…
成员变量的隐藏:当父类和子类有相同的成员变量时,即定义了与父类相同的成员变量时,就会发生子类对父类变量的隐藏.对于子类的对象来说,父类中的同名成员变量被隐藏起来,子类就会优先使用自己的成员变量,父类成员隐藏. public class yincang {public static void main(String []args){ SonA son=new SonA(); son.showson(); FatherA father=new FatherA(); father.showfather…
一.Java中方法的参数传递(重点) Java中参数传递都是值传递 Java中的值分两种: 1.如果传递的参数是基本数据类型: 传递的值就是基本数据类型的值. 传递的时候,其实是把基本数据类型的值,复制一份,传递到方法内部 2.如果传递的参数是引用数据类型: 传递的值是对象的地址值. 把地址值复制一份传递给方法的参数. 二.面向对象特征2:继承 面向对象三大特征:1.封装 2.继承 3.多态 继承的语法: extends 被继承的类 继承的特点: 1.在继承的时候,被继承的类我们称之为父类或超类…
背景: 在java继承的概念中我们得知,被声明为私有的类成员对所属的类来说仍然是私有的.类之外的任何代码都不能访问,包括子类. super关键字的两种用法: 1.用于调用超类的构造函数: 2.用于访问超类中被子类的某个成员隐藏的成员: 例:使用super调用超类的构造函数 矩形实体代码: public class Rectangular { private double width; private double height; Rectangular(double w,double h){ w…
只要this关键字掌握了,super关键字不在话下,因为他们原理都差不多的.. this&super 什么是this,this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针.当你想要引用当前对象的某种东西,比如当前对象的某个方法,或当前对象的某个成员,你便可以利用this来实现这个目的.要注意的是this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this.his也可作为构造函数来使用.在后面可以看到 而什么是super,可以理解为是指向自己超(父)类对…
this 在java中,this是一个引用当前类对象的引用变量,主要有以下几种用法: 引用当前类的实例变量· this关键字可以用来引用当前类的实例变量.如果实例变量和某个方法的参数之间存在歧义(实例变量和参数命名相同),则通过this.变量名 可用于明确地指定实例变量以解决歧义问题. 调用当前类方法 可以使用this关键字调用当前类的方法,格式:this.方法名.如果不使用this关键字,编译器会在调用方法时自动添加此 this 关键字. 调用当前类的构造函数 this()构造函数调用可以用来…
重写 含义 在Java中,子类可继承父类中的方法,而不需要重新编写相同的方法.但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写.方法重写又称方法覆盖. 重写与重载的异同点 相同点 都是作用在方法上 不同点 重载时作用在同一个类中,多个方法名相同,参数列表不同(方法签名不同)而采用的方式 重写是作用在不同类,该类继承于需要修改方法的父类. 区别: 重载是在同一个类中,方法名相同,参数列表不同 重写是作用在两个有继承关系的子类中,方法签名相同 需要重写的原因 在一…
在子类中,若要调用父类中被覆盖的方法,可以使用super关键字. package text; class Parent {    int x;    public Parent()    {                    System.out.println("Parent Created1");      }    public void show(){        System.out.println("Parent Created2");    }…
public class SuperClass{ public void printA(){ System.out.print("SuperClass-printA"); printB(); } public void printB(){ System.out.print("SuperClass-printB"); } } public class ChildClass extends SuperClass{ public void printA(){ System…
用super调用父类构造方法 类如果没有显式声明构造方法,则自动生成无参数的默认构造方法. 1.先用一个无参数的父类构造方法验证一下, 执行子类构造方法会自动调用父类的构造方法.测试代码: class Human3{ public Human3(){ System.out.println("构造一个人"); } } class Pupil3 extends Human3{ public Pupil3(){ // super(); //本句注释与不注释执行结果是一样的 System.ou…