java多态

java多态,java引用类型分为编译时类型和运行时类型。父类型的变量对应子类型的引用,编译的时候类型是父类型,运行的时候类型就是子类型。所以在编译的时候只能访问到父类对象里面有的成员,不能访问到子类里面的成员,如果父类中的方法在子类中重写了,那么在运行的时候调用的就是子类中的方法,字段不存在多态,父类型调用的就是父类型的,子类型调用就是子类型的。

package frank;
public class App extends Parent
{
	public String asc = "3";
	public static void main(String[] args)
	{
		Parent p = new App();
		p.get();//子类方法
		System.out.println(p.asc);//父类中的2
	}
	public App(String tag)
	{
		super(tag);
	}
	public App()
	{
		super("null");
	}
	public void get()
	{
		System.out.println("子类方法!");
	}
}
class Parent
{
	public String asc = "2";
	public Parent(String tag)
	{
		this.tag = tag;
	}
	public Parent()
	{
		this("无值");
	}
	public void get()
	{
		System.out.println("父类方法!");
	}
}

  

posted on 2013-08-02 15:59  wp456  阅读(204)  评论(0)    收藏  举报

导航