首页 > 编程语言 >Java中的super关键字

Java中的super关键字

时间:2023-07-24 22:44:54浏览次数:30  
标签:Xiaoming Java Person System 关键字 super public out

Java中super是一个关键字,和this的比较类似。

1、特点:

  (1)super 指向的是当前对象的父类型, 而 this 指向的是当前对象;

  (2)虽然在大部分情况下 super 可以省略,但如果需要使用父类的方法或者属性,则必须使用 super;

 1 public class Person {
 2 
 3     public Person() {
 4         System.out.println("我是一个人类");
 5     }
 6 
 7     public static void person1() {
 8         System.out.println("父类的方法");
 9     }
10 
11 }
12 
13 
14 public class Xiaoming extends Person {
15 
16     public Xiaoming() {
17         System.out.println("我是小明");
18         super.person1();  //  调用父类的方法需要使用 super
19     }
20 
21     public static void main(String[] args) {
22         Xiaoming xiaoming = new Xiaoming();
23     }
24 
25 }

 

(3)super的使用语法是 " super. " 或者 " super() " ;

(4)super在构造函数中只能是在首行,这点和 this 相同 , 当创建子类对象时, 需要先初始化父类;

 1 public class Person {
 2     
 3     public Person() {
 4         System.out.println("我是一个人类");
 5     }
 6 
 7 }
 8 
 9 public class Xiaoming extends Person {
10 
11     public Xiaoming() {
12         System.out.println("我是小明");
13     }
14 
15     public static void main(String[] args) {
16         Xiaoming xiaoming = new Xiaoming();
17     }
18 
19 }
20 
21 输出:
22 我是一个人类
23 我是小明
24 
25 Process finished with exit code 0

 

(5)如果在构造函数中没有显示地写出 super , 则会默认有一个 super() ;

(6)super 不能出现在静态方法中;

    当我们在静态方法中使用super() 时,便会报错

1     public static void person1() {
2         super();   //  错误写法
3         System.out.println("父类的方法");
4     }
5 
6 }

 

  

标签:Xiaoming,Java,Person,System,关键字,super,public,out
From: https://www.cnblogs.com/xiaoliuqq/p/17578556.html

相关文章

  • Java-Day-35( 类加载 + 细化解释各阶段 )
    Java-Day-35类加载基本说明反射机制是java实现动态语言的关键,也就是通过反射实现类动态加载静态加载:编译时加载相关的类,如果没有则报错,依赖性太强在非具备idea辅助型的工具里编写代码时importjava.util.Scanner;publicclasstest{publicstaticvoidmain(......
  • Java-Day-36( 通过反射获取类的结构信息 + 通过反射访问类中的成员 + 章节练习 )
    Java-Day-36通过反射获取类的结构信息第一组:java.lang.Class类以下说的包含本类和父类——也包括超类等方法属性之类的若是输出时不加.getName,则都是输出:com.zyz.Zyz()publicclasstest{publicstaticvoidmain(String[]args){}@Testpubl......
  • 老杜 JavaWeb 讲解(十四) ——JSP+Servlet改造oa项目
    (十四)JSP改造oa项目相关视频:38-Servlet和JSP改造oa项目使用Servlet+JSP完成oa项目的改造使用Servlet处理业务,收集数据。使用JSP展示数据。将之前原型中的html文件,全部修改为jsp,然后在jsp文件头部添加page指令(指定contentType防止中文乱码),将所有的JSP直接拷贝到web......
  • 关于 yield 关键字(C#)
    阅读目录〇、前言一、yield关键字的使用1.1yieldreturn:在迭代中一个一个返回待处理的值1.2yieldbreak:标识迭代中断1.3返回类型为IAsyncEnumerable的异步迭代器1.4迭代器的返回类型可以是IEnumerator或IEnumerator1.5不能使用yield的情况二、使用yie......
  • 价值年薪70W的JAVA进阶学习路线!终于让我从阿里P8手里抠出来了
    作为一个男人我感觉必须得做点什么来证明一下自己,现在我又回来了,准备把自己的节操准备补一下。另外给各位未来的Java程序员说一句,别的我不清楚,学习编程请从一而终咱们学习编程就挺难的,有这些先驱者来带领咱们学习,咱们应该感激,而且最重要的事跟着你选定的一家一直学下去因为每家学校......
  • 用Java集合中的Collections.sort方法对list排序的两种方法
    用Collections.sort方法对list排序有两种方法第一种是list中的对象实现Comparable接口,如下:   <strong>/**02 *根据order对User排序03 */04 publicclassUserimplementsComparable{05 privateStringname;06 privateIntegerorder;07 publicStringgetN......
  • tokyotyrant-java客户端
    目录:概述演示[一]、概述java实现了对ttserver服务端的连接和访问。相关的源代码和jar包可以到其官网下载。官网地址:http://code.google.com/p/tokyotyrant-java/如果是maven构建项目的,在pom.xml的<dependencies>节点中增加如下依赖配置即可:1 <dependency>2<groupId>......
  • 为什么有一些什么方法都没有的接口会存在?比如java.lang.Cloneable
    /***Aclassimplementsthe<code>Cloneable</code>interfaceto*indicatetothe{@linkjava.lang.Object#clone()}methodthatit*islegalforthatmethodtomakea*field-for-fieldcopyofinstancesofthatclass.*<p>*Invo......
  • Java类加载
    Java类加载类加载过程加载:JVM将class文件加载到内存中,并生成class对象连接(验证、准备、解析):JVM校验class对象的规范性等初始化:JVM执行class对象中的静态代码块的语句和对静态变量的赋值操作使用:创建实例化对象、调用方法等卸载:类加载机制类加载源码protectedClass<?>lo......
  • java 中保留一位小数有以下几种方法
    使用String.format()方法,它可以按照指定的格式化字符串来输出数值,比如“%.1f”表示保留一位小数。例如:doublenum=3.14159;Stringresult=String.format("%.1f",num);//result="3.1"复制使用DecimalFormat类,它可以按照指定的模式来格式化数值,比如“#.#......