java中多态父类的成员变量和方法调用问题
2016-12-06 20:32
330 查看
class Super { String name = "父类名字"; public void setName(String name) { System.out.println(this.getClass()); this.name = name;//赋值给父类的name,name 为字段指向当前类的字段 } public String getName() { return this.name; } } class Sub extends Super { String name = "子类的name"; } public class ExtendsDemo { public static void main(String[] args) { Super s = new Sub(); s.setName("张三"); System.out.println(s.getName()); System.out.println(s.name);//此时输出父类的name } }
在继承多态中:
1、对于方法的覆盖(override),new的谁就调谁,这就是多态。
2、对于成员变量的隐藏(hidden),this在哪个类就指向哪个类的成员变量,没有多态。
相关文章推荐
- Spring MVC RequestBody
- Java异常
- 拓扑排序学习笔记-Java
- springMVC学习笔记(八) ---- 拦截器
- 【12月6日】类的初始化(一):构造器和this关键字
- springMVC学习笔记(七) ---- json
- 彻底搞懂HashMap,HashTable,ConcurrentHashMap之关联.
- springMVC学习笔记(六) ---- 文件上传
- Java根据身份证号得到年龄通用方法
- springMVC学习笔记(五) ---- 数据处理的几种方式
- Java代码实现一维数组的二分查找(折半查找)(非递归方法)
- java中使用正则验证的写法
- 简单使用SAXReader解析xml数据
- LeetCode 409. Longest Palindrome(Java)
- Spring Boot 菜鸟教程 17 Cache-缓存
- JAVA WEB 浏览器兼容问题汇总
- Java并发编程(二): Java并发机制的底层实现原理
- JVM8-Class文件格式解读及其修改
- Eclipse-JDT的使用
- JAVA中int、String的类型转换