从品牌网站建设到网络营销策划,从策略到执行的一站式服务
this指向的是对象,而不是类。
创新互联建站专注于莲湖企业网站建设,成都响应式网站建设公司,成都商城网站开发。莲湖网站建设公司,为莲湖等地区提供建站服务。全流程按需求定制设计,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
一个类可以生成许多对象,比如:
Mammal m1=new Mammal();
Mammal m2=new Mammal();
m1.taisheng(); //m1调用了这个方法,当执行到this时,this指的就是m1
m2.taisheng(); //这里执行到this时,指的是m2
一、指代不同
1、super:是当前对象里面的父对象的引用。
2、this:指的是当前对象的引用。
二、调用函数不同
1、super:调用基类中的某一个构造函数(应该为构造函数中的第一条语句) 。
2、this:调用本类中另一种形成的构造函数(应该为构造函数中的第一条语句)。
三、引用对象不同
1、super:引用当前对象的直接父类中的成员(用来访问直接父类中被隐藏的父类中成员数据或函数,基类与派生类中有相同成员定义时如:super.变量名 super.成员函数据名(实参)。
2、this:代表当前对象名(在程序中易产生二义性之处,应使用this来指明当前对象;如果函数的形参与类中的成员数据同名,这时需用this来指明成员变量名)。
参考资料来源:百度百科-Java关键字super
参考资料来源:百度百科-java关键字
不管什么样都行,你记住,this.XXX都是从子类里调用的,调用的也都是子类的东西,不会调用父类的东西,如果这时子类没有XXX,那么就会出错。就算在继承里,父类有的,子类没有重新定义的方法,子类也是从父类继承过来的,也就是子类的东西了。要调用父类的东西,使用super.YYYY就没问题了,坚信这样的原则,不会让你越学越乱!
因为子类继承了父类的fun()方法,所以子类也会有一个fun()方法,
但是无法继承父类的私有方法say()方法,所以就不会重写say()方法
而子类又没有重写父类的fun()方法,所以子类中的fun()方法还是调用的是父类中的say()方法,所以就会输出父类中的内容
希望对你有帮助
this("未知名",0,"未知系");必须出现在构造方法的第一行,目的是在一个构造方法中调用属于本类的另一个构造方法
this("未知名",0,"未知系");调用的是构造方法public Student_mo(String n,int a,String d){
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图