super、this关键字

super调用(父类)

调用方法

   语法: super.父类方法名(形参列表);
        可以在子类方法和构造器中使用,调用父类被覆盖的方法。

实例变量

语法: super.父类实例变量名;
        可以在子类方法或构造器中使用,调用父类被覆盖的实例变量。

构造器

  语法: super(实参列表);
  1、只能出现在子类构造器中,且是代码首行,所以这里super和this调用构造器不能同时出现.
  2、当调用子类构造器来初始化子类对象时,当前类默认的无参构造器中会有super();也就是不断调用父类构造器,直到最顶端java.lang.Object类构造器,然后从顶端依次向下执行输出(如果有输出的话),最后才执行当前类构造器。

this调用(当前类)

调用方法

   语法: this.方法名(形参列表);
        可以在方法或构造器中使用,调用当前类的方法。

实例变量

语法: this.父类实例变量名;
        可以在子类方法或构造器中使用,调用当前类的实例变量。

构造器

  语法: this(实参列表);
  只能出现在构造器中,调用当前类的其他构造器,必须在代码首行,所以这里super和this调用构造器不能同时出现.

时间: 2024-08-06 13:19:58

super、this关键字的相关文章

java中static,super,final关键字辨析

1:static关键字 利:1)对对象的共享数据提供单独的空间存储. 2)修饰的方法可以直接被类名调用 弊:1)生命周期长. 2)访问出现限制(只能访问静态) 它可以有静态方法,静态类,静态变量 2:super关键字 1)使用super关键字调用父类的成员变量和成员方法. 格式1:super.成员变量 格式2:super.成员方法([参数1,参数2...]) 2)使用super关键字调用父类的构造方法 格式1:super([参数1,参数2...]) 总结:this代表当前对象(可以输出或地址).

self ,super , static关键字

1.self关键字  自己的   代表当前对象和当前类的. a.如果self是在对象方法中使用的话,self就代表当前的对象. self其实是一个指针,是当前对象的地址. 有什么用? 对象方法中,是可以声明一个和属性名字相同的局部变量的. 在对象方法里,如果你直接使用这个名字相同的这个变量,得到的值是这个局部变量的值. 如果我就是要拿到属性的值呢?就是用self关键字去执向. 如果在对象方法中,要去调用当前对象的其他的对象方法,就使用self去调用. b. self也是可以用在类方法中的,sel

this,final super,static关键字

this关键字 this调用构造方法: 在之前学习方法之间调用时,可以通过方法名进行调用.可是针对构造方法,无法通过构造方法名来相互调用. 构造方法之间的调用,可以通过this关键字来完成. |------构造方法调用格式: this(参数列表); |------构造方法的调用: package com.oracle.demo01; public class student { private String name; private int age; public student(){ //t

8.python之面相对象part.5(子类调用父类的方法,以及super关键字)

python中子类要调用父类的某个方法,在python早期版本中是这样实现的: class A: def __init__(self): print "enter A" print "leave A" class B(A): def __init__(self): print "enter B" A.__init__(self) print "leave B" b = B() >>>enter B enter

你真的了解[super ]关键字吗?

前言 此篇文章是看了阮老师的es6教程,看到super关键字的时候觉得有必要总结梳理一下,原文还是参考 ECMAScript 6入门. 正文 super 这个关键字,既可以当作函数使用,也可以当作对象使用. 1.当作函数使用 super作为函数调用时,代表父类的构造函数.ES6 要求 ,子类的构造函数必须执行一次super函数. 即作为 函数 使用时下面的代码时 固定使用套路 : ``` class A { constrctor(){ } } class B extends A { constr

Java8基础之super关键字

相信学过Java语言的小伙伴都熟悉super这个关键字,接下来,我们来研究他的一些基础用法吧. 定义名字为Father的类 package superkeyworld; public class Father { public String name; public int age; public Father() {} public Father(String name, int age) { this.name = name; this.age = age; System.out.print

Class的使用,构造方法,实例属性和实例方法,静态属性和静态方法,this和super关键字,类的继承

s6新增了一种定义对象实例的方法,Class(类)这个概念,作为对象的模板.class可以看作只是一个语法糖,通过class关键字,可以定义类.让对象原型的写法更加清晰.更像面向对象编程的语法. 一.  Class的基本用法 1.  constructor方法 1 //定义类 2 class Point { 3 constructor(x, y) { 4 this.x = x; 5 this.y = y; 6 } 7 8 toString() { 9 return '(' + this.x +

继承 各种关键字

一.关键字this, static, package和import语句 this:(this表示当前对象) --在类的方法定义中使用this关键字代表使用该方法的对象的引用 --当必须指出当前使用方法的对象是谁时要使用this --有时this可以处理方法中成员变量和参数重名的情况 --this可以看作是一个变量, 它的值是当前对象的引用 static 静态的(不在堆里面也不在栈里面, 在数据区(data seg)): --类名直接 . 出来的变量是静态变量, 每个类里面的静态变量只有一份, 是

Java中static关键字的作用和用法详细介绍

static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static修饰的成员变量和成员方法独立于该类的任何对象.也就是说,它不依赖类特定的实例,被类的所有实例共享. 只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们.因此,static对象可以在它的任何对象创建之前访问,无需引用任何对象. 用public修饰的static成员变量和成员方法本质是全局变量和全局方法,当声明它类

Java内构造函数、关键字、权限修饰符、访问控制及面向对象的特性!

1, 构造函数(构造方法) 在使用 new 来创建一个对象的时候就是调用的这个类的一个构造方法(构造函数), 构造方法名与类同名, 并且没有返回值(没有返回值也不要写void) 空参的构造函数和有参数的构造函数 注释, 命名规则!!!!!!!!!! 2, 继承中的构造函数: --子类的构造方法必须调用父类的构造方法 --super(), 调用父类的构造方法, this()调用本类中另外的构造方法 3, 关键字this, static, package和import语句 this: --在类的方法