Super方法总结
Super方法总结
我就在想子类中的suoer.display()方法有什么用,于是我自己写了2个类测试。
`package cn.itcast.b_test;

import sun.management.resources.agent;

public class lzm {

private int  age;
public int getAge() {
	return age;
}
public void setAge(int age) {
	this.age = age;
}

public lzm() {
	// TODO Auto-generated constructor stub
}

public void display () {
	System.out.println(this.getAge());
	System.out.println("父类");
}

}

package cn.itcast.b_test;
import java.util.List;
import org.junit.Test;
import org.eclipse.jdt.internal.compiler.ast.SuperReference;
import org.springframework.test.context.TestExecutionListeners;

import com.sun.org.apache.xalan.internal.xsltc.compiler.sym;
import com.sun.script.javascript.RhinoScriptEngine;


public class lzm1 extends lzm {
	
	public lzm1() {
		// TODO Auto-generated constructor stub
	}


	@Test
     public void display() {
		super.display();
    	 this.setAge(2);
    	 System.out.println(this.getAge());
    	 super.display();
    	 System.out.println(this.getAge());
    	 System.out.println("子类");
	}

}

Super方法总结
上面是运行结果,我们可以看到子类的第一个super.display()就是调用父类中的方法,因为我没有设计父类中的age,所以默认是0.
当我在子类中this.setAge(2)使再调用父类中的方法,这时候就会将参数赋值给父类的属性。也就可以实现装饰类了。

那既然子类继承了父类中的方法,为什么要用super呢。
因为我们一般将子类也就是抽象类中的属性设为private,子类通过构造方法将属性值传给super(xx),再父类中的构造方法里this.xx=xx;那么子类也就可以访问改属性了。

引用:https://blog.csdn.net/zuoyang1990/article/details/53471494

相关文章:

  • 2021-08-21
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-02-12
  • 2021-06-29
  • 2021-04-07
相关资源
相似解决方案