更新时间:2022-11-14 10:44:34 来源:极悦 浏览1064次
相信大家对Java super的定义已经有所了解,Java中的super关键字是一个引用变量,用于引用直接父类对象。
每当您创建子类的实例时,都会隐式创建父类的实例,该实例由超引用变量引用。
super 可用于引用直接父类实例变量。
super 可用于调用直接父类方法。
super() 可用于调用直接父类构造函数。
我们可以使用 super 关键字来访问父类的数据成员或字段。如果父类和子类具有相同的字段,则使用它。
动物 类{
字符串颜色= “白色” ;
}
类 狗 扩展 动物{
字符串颜色= “黑色” ;
无效 打印颜色(){
System.out.println(color); //打印Dog类的颜色
System.out.println( super .color); //打印Animal类的颜色
}
}
类 TestSuper1{
公共静态无效 主要(字符串参数[]){
狗 d=新 狗();
d.printColor();
}}
输出:
黑色的
白色的
在上面的例子中,Animal 和 Dog 两个类都有一个共同的属性 color。如果我们打印颜色属性,它会默认打印当前类的颜色。要访问父属性,我们需要使用 super 关键字。
super 关键字也可以用于调用父类方法。如果子类包含与父类相同的方法,则应使用它。换句话说,如果方法被覆盖,则使用它。
动物 类{
无效 吃(){System.out.println(“吃...” );}
}
类 狗 扩展 动物{
void eat(){System.out.println( "吃面包..." );}
void bark(){System.out.println( "吠叫..." );}
无效 工作(){
超级.eat();
吠();
}
}
类 TestSuper2{
公共静态无效 主要(字符串参数[]){
狗 d=新 狗();
d.work();
}}
输出:
吃...
叫声...
在上面的例子中,Animal 和 Dog 两个类都有eat() 方法,如果我们从Dog 类调用eat() 方法,它会默认调用Dog 类的eat() 方法,因为优先级是local。
要调用父类方法,我们需要使用 super 关键字。
super 关键字也可以用来调用父类的构造函数。让我们看一个简单的例子:
动物 类{
Animal(){System.out.println( "创建了动物" );}
}
类 狗 扩展 动物{
狗(){
超级();
System.out.println( "狗被创建" );
}
}
类 TestSuper3{
公共静态无效 主要(字符串参数[]){
狗 d=新 狗();
}}
输出:
动物被创造出来
狗被创造出来
以上就是关于“Java中关键字super的用法”介绍,大家如果对此比较感兴趣,想了解更多相关知识,不妨来关注一下本站的Java教程,里面还有更丰富的知识等着大家去学习,相信对大家一定会有所帮助的。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习