Java编程实现静态多态,java基础--多态-域与静态方法1(java编程思想)
看以下例子:
package extendsTest;
/**
*
* @author xiaoyu
*
*/
class Super{
public int field=0;
public int getField(){
return field;
}
}
class Sub extends Super{
public int field=1;
public int getField()
{
return field;
}
public int getSuperField(){
return super.field;
}
}
public class TestExtendsField {
public static void main(String args[]){
Super super1=new Sub();
System.out.println(super1.field+";"+super1.getField()+";");
Sub sub=new Sub();
System.out.println(sub.field+";"+sub.getField()+";"+sub.getSuperField());
}
}
输出结果:
0;1;
1;1;0
结果分析:当Sub转型为Super引用时,任何域访问操作都将由编译器解析,因此不再是多态的。本例中,
为Super.field和Sub.field分配了不同的存储空间。
这样,Sub实际上包含了两个field;它自己的和它从Super处得到的,然而在Sub中的field时所产生的默认域并非Super.field。
因此为了得到Super.field,必须显示的指明super.field.
Java编程实现静态多态,java基础--多态-域与静态方法1(java编程思想)相关推荐
- 0基础学python编程难吗-对于0基础的人,直接学Python编程合适吗?
原标题:对于0基础的人,直接学Python编程合适吗? 随着人工智能行业的火热,Python语言引起独有的优势成为人工智能行业编程语言的首选,一时间受到大家的追捧,已经有越来越多的人选择从零开始学习, ...
- 0基础学python编程难吗-对于0基础的人,直接学 Python 编程合适吗?
对于0基础的人,直接学 Python 编程合适吗? 我只能说非常合适,因为在目前的编程语言中,Python的抽象程度是最高的,是最接近自然语言的,非常容易上手,Python 可以让你更好的理解编程这件 ...
- AIDE手机编程初级教程(零基础向) 1.2 初识界面编程
第一章 第一个应用 系列教程导航 1.2 初识界面编程 文章目录 为什么 讲解 后记 为什么 对于一个Android应用来说,一个好看的界面是非常重要的.在上一篇文章,你已经学会了自定义我们的第一个应 ...
- java怎么访问静态属性_Java基础——java静态变量面试题
Java面试中主要考察的就是应聘者的基础知识的掌握情况,静态变量是属于静态存储方式,是java中基础性的内容.下面就为大家准备了10道java静态变量面试题,希望可以帮助到有面试需要的朋友们. 1.s ...
- AIDE手机编程初级教程(零基础向) 2.1.2 Java基础一 下篇
第二章 第一个游戏 系列教程导航 2.1 Java基础一 你好 2.1.2 下篇 文章目录 尝试 成功 数据类型 后记 尝试 还记得吗?在上篇,我们提出了一个进阶任务:打印多句"你好,XXX ...
- java多线程nullpointerexception_温故而知新!越是基础越容易被忽略,java最全基础知识,附赠资料...
一.hashMap与hashTable与ConcurrentHashMap: 1.HashMap是继承自AbstractMap类,而HashTable是继承自Dictionary类.不过它们都同时实现 ...
- java while语句打印三角形_java基础之五小节带你走进java流程控制—多重循环
四.多重循环 在一个循环语句内部再嵌套一个或多个循环,称为多重循环/嵌套循环.while.do-while与for循环可以任意嵌套,可以嵌套任意多层.一般工作中多见的就是两层. 4.1 多重循环 打印 ...
- java吃货联盟系统源码_吃货联盟 源代码 Java初级小项目
咳咳,今天博主给大家写一个小的项目:吃货联盟订餐系统.博主不是大神(互联网架构师的路上ing),也是小白一个,不过是刚入门的小白^_^.项目功能也很简单:只是模拟日常的订餐流程呦,所以有错误以及功能不 ...
- 【java基础18:方法覆盖与多态】什么时候使用方法覆盖 toString方法的覆盖 多态的基础语法与作用 向上/向下转型
目录 方法覆盖Override 多态 方法覆盖Override 方法覆盖初体验,什么样的程序要方法覆盖 /*当前程序存在的问题(设计上的问题)??鸟儿在执行move()方法的时候,最好输出的结果是:& ...
- java 多态判断非空_重拾JavaSE基础——多态及其实现方式
今天是比较抽象的多态,希望能给大家带来帮助 主要内容 多态 为什么使用多态 多态的形式 多态的概念 多态的劣势 多态存在的必然条件 类型转换 多态的实现原理 多态的分类 运行时多态的形式 实现原理 常 ...
最新文章
- 10个迷惑新手的Cocoa,Objective-C开发难点和问题
- Nginx常见的错误及解决方法
- Jenkins安装目录说明
- 手动发布证书吊销列表
- Google 的 “行星级” cron 系统
- protobuf android ndk,直接在Android NDK端使用tensorflow(不使用JAVA api)
- comet学习(三)cometd心跳机制
- STM32中使用PS2手柄
- 天猫商城应用自定义类代码
- python使用pip安装openxml_Word文件的OpenXML解析(以Python3为例)
- 监控摄像头镜头大小的区别
- (转)LRC歌词编辑攻略1
- Ruby中按照指定编码读取文件
- RANSAC与其改进
- CC2530模块进行ZigBee实验小结
- 数位DP 学习笔记1(数位DP入门)
- Linux中nohup的使用
- 小程序banner广告和激励广告
- 在Windows下配置与使用CVSNT - dudu - 博客园
- python数字求和_对Python中的数字列表求和
热门文章
- uri=/struts-tags 出错
- python数组取数_python 取数组
- 两个空间点直接距离投影公式_HBAO(屏幕空间的环境光遮蔽)
- vim youcopleteme php,将vim / youcomepleteme与anaconda python集成
- 对“善于提问,主动解决问题”的程序员的吐槽
- Ubuntu 16.04安装Bless十六进制编辑器
- [转]Struts2.3.16.1+Hibernate4.3.4+Spring4.0.2 框架整合
- spring Mvc 执行原理 及 xml注解配置说明 (六)
- sleep()和wait()的区别-转
- [导入]Myeclipse中XML不出智能提示