⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 variableoverridedemo.java

📁 java程序设计教程的源码
💻 JAVA
字号:
//【例4-15】  成员变量的覆盖(隐藏)与super的使用
//程序清单4-15:  VariableOverrideDemo.java
package e4_15;
public class VariableOverrideDemo {
	public static void main(String args[]) {
		A obja;
		B objb = new B();
		obja = objb;// obja是objb的上转型对象
		// 给父类的成员变量a赋值
		objb.setA("若子类执行继承父类的操作,则使用继承自父类的变量。");
		// 上转型对象始终访问父类成员变量
		System.out.println("obja.a = " + obja.a);
		// 子类的同名变量a隐藏了父类的变量a
		System.out.println("objb.a = " + objb.a);
		// 给父类的成员变量a赋值
		objb.setAOfB("若子类执行自己定义的操作时,则使用自己定义的变量。");
		// 子类的同名变量a隐藏了父类的变量a
		System.out.println("objb.a = " + objb.a);
		System.out.println(objb.getAOfA());
		// 子类的同名变量a隐藏了父类的变量a
		System.out.println("objb.b = " + objb.b);
		objb.getBOfA();
	}
}
class A {// 类A
	String a;
	int b = 100;
	public String getA() { 	return a; }
	public void setA(String a) { this.a = a; }
}
class B extends A {// 类B继承类A
	String a;// 覆盖(隐藏)父类同名变量a,类型可相同
	double b = 1000;// 覆盖(隐藏)父类同名变量b,类型可不同
	public String getAOfB() { return a; }
	public void setAOfB(String a) {	this.a = a;	}
	public String getAOfA() {// 用super访问被隐藏的父类中的成员变量a
		return "super.a = " + super.a;
	}
	public void getBOfA() {// 用super访问被隐藏的父类中的成员变量b
		System.out.println("super.b = " + super.b);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -