java 中super的使用
2021/8/3 12:36:14
本文主要是介绍java 中super的使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1,新建Application类,作为程序的入口
package oop.demo05; //继承 public class Application { public static void main(String[] args) { /* 先执行 父类的无参、在执行了类的无参 Person 无参执行了 Student 无参执行了 */ Student s1 = new Student(); s1.say(); //说了一句话!! // System.out.println(s1.money);//1000000000 加了私有 修饰后,这个语句报错 System.out.println("s1.getMoney():" + s1.getMoney()); //s1.getMoney():1000000000 Student s2 = new Student(); s2.Test("向向"); s2.Test2(); } }
2,新建Person类
package oop.demo05; /* 继承 */ public class Person { // 无参构造 public Person() { System.out.println("Person 无参执行了"); } public void say(){ System.out.println("说了一句话!!"); } public int getMoney() { return money; } public void setMoney(int money) { this.money = money; } private int money=10_0000_0000; /* public 公共的 private 私有的 default 默认的 protected 受保护的 */ protected String name="小小向"; public void print(){ System.out.println("Person"); } //私有和不能被继承 private void print2(){ System.out.println("Person"); } }
3,新建Student类
package oop.demo05; public class Student extends Person { public Student() { // 隐藏代码,调用父类的无参构造 super(); System.out.println("Student 无参执行了"); } private String name="小玉"; public void Test(String name){ System.out.println("name:"+name);//向向 System.out.println("this.name:"+this.name);//小玉 System.out.println("super.name:"+super.name); // 小小向 ------------调父类; } public void print(){ System.out.println("Student"); } public void Test2(){ print();//Student this.print();//Student super.print();//Person // super.print2(); //不能调用,私有的 } }
4,新建Teacher类
package oop.demo05; public class Teacher extends Person{ }
5,super使用
## super注意点 1,super调用的是父类的构造方法,必须在构造方法的第一个 2,super必须只能出现在子类的方法或者构造方法中 2,super和this不能同时调用构造方法 ##vs this: 代表的对象不同: this 本身这调用者是这个对象 super 代表父类对象的引用 前提 this 没有继承也可以使用 super 只有在继承条件下才可以使用 构造方法 this() 调用的是本类的构造 super() 调用的是父类的构造
6,运行结果
这篇关于java 中super的使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-27消息中间件底层原理资料详解
- 2024-11-27RocketMQ底层原理资料详解:新手入门教程
- 2024-11-27MQ底层原理资料详解:新手入门教程
- 2024-11-27MQ项目开发资料入门教程
- 2024-11-27RocketMQ源码资料详解:新手入门教程
- 2024-11-27本地多文件上传简易教程
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器