this与super的使用方法是什么?
public class DemoThis{
private String name;
private int age;
DemoThis(String name,int age){
setName(name);
//你可以加上this来调用 *** ,像这样:this。
setName(name);但这并不是必须的
setAge(age);
this。print(); br }
public void setName(String name){
this。name=name;//此处必须指明你要引用成员变量
public void etAge(int age){
this。
age=age;
public void print(){
System。out。println("Name="+name+" ge="+age);
//在此行中并不需要用this,因为没有会导致混杂的东西
public static void main(String[] args){
DemoThis dt=new DemoThis("Kevin","22");
这段代码很简单,不用阐明你也应该能看明白。
在构造函数中你看到用this。print(),你完全可以用print()来代替它,两者效果一样。下面我们修改这个程序,来演示super的用法。
class Person{
public int c;
private String name;
private int age;
protected void setName(String name){
this。
name=name;
protected void setAge(int age){
this。age=age;
protected void print(){
System。out。println("Name="+name+" Age="+age);
public class DemoSuper extends Person{
public void print(){
System。
out。println("DemoSuper:");
super。print();
public static void main(String[] args){
DemoSuper ds=new DemoSuper();
ds。
setName("kevin");
ds。setAge(22);
ds。print();
在DemoSuper中,重新定义的print *** 覆写了父类的print *** ,它首先做一些自己的事情,然后调用父类的那个被覆写了的 *** 。
输出结果阐明了这一点。