还是那些继承实例二

来源:互联网 发布:flashas3程序员招聘 编辑:程序博客网 时间:2024/05/16 09:30
package com.zjlolife.extend;public class Client {public static void main(String []args){Animal bird = new Bird(2);bird.say();System.out.println(bird.i);}}class Animal {public int i = 3;public void say() {}} class Bird extends Animal {public int i;public void say() {System.out.println(i);}public Bird(int i) {this.i = i;}}//结果为://2//3//子类向上转型后,无法访问自己的成员变量i,只能访问父类的成员变量i,此时同名变量子类的被隐藏了。//但是却可以通过say()访问间接访问到自己的成员变量i。。值得思考。。。 总结:当一个类,编译期间是父类型的时候,是不能直接访问本身的成员变量,但是运行的时候会表现出自己的行为,并且可以通过行为来间接访问自己的成员变量,如上面的say()方法,就可以间接访问本身的成员变量i,但是在编译期间的时候却不能直接访问本身的成员变量i,同名的时候访问的父类的成员变量i哦!!!!
	
				
		
原创粉丝点击