摘要: origin:http://blog.csdn.net/hikvision_java_gyh/article/details/8957450编写java程序时,引用变量只能调用它编译时的类项方法。而不能调用它运行时的类型的方法,即使它实际所引用的对象确实包含该方法。如果让这个引用变量调用它运行时类项的方法,则必须把它强制类项转化成运行时类项,需要用类项转化运算符(type)。强制类项转化:1.基本类项的转化只能在数值类项之间进行,数值:整数型,字符型,浮点型。但数值不能和布尔型之间进行类项转化。 2.引用类项只能把父类类项变量转化成子类类项。 总之,把子类对象变量赋给父类引用时,向上转型(系统 阅读全文
posted @ 2013-12-17 15:53 为自由奋斗 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 来源:http://blog.csdn.net/hikvision_java_gyh/article/details/8957456面向对象编程有三个特征,即封装、继承和多态。 封装隐藏了类的内部实现机制,从而可以在不影响使用者的前提下改变类的内部结构,同时保护了数据。 继承是为了重用父类代码,同时为实现多态性作准备。那么什么是多态呢? 方法的重写、重载与动态连接构成多态性。Java之所以引入多态的概念,原因之一是它在类的继承问题上和C++不同,后者允许多继承,这确实给其带来的非常强大的功能,但是复杂的继承关系也给C++开发者带来了更大的麻烦,为了规避风险,Java只允许单继承,派生类与... 阅读全文
posted @ 2013-12-17 10:55 为自由奋斗 阅读(2026) 评论(0) 推荐(0) 编辑
摘要: 来源:http://dev.yesky.com/436/7581936.shtml------------------在Java语言中, abstract class 和interface是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进 行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是有很大的区别的,对于它们的选择甚至反映出对 于问题领域本质的理解、对于设计意图的理 阅读全文
posted @ 2013-12-17 10:54 为自由奋斗 阅读(1326) 评论(0) 推荐(1) 编辑
摘要: 来源:http://www.cnblogs.com/sunnychuh/archive/2011/09/09/2172131.html---------------------java继承中对构造函数是不继承的,只是调用(隐式或显式)。以下是例子:public class FatherClass {public FatherClass() { System.out.println(100);}public FatherClass(int age) { System.out.println(age);}}public class SonClass extends FatherClass{ pub 阅读全文
posted @ 2013-12-17 10:52 为自由奋斗 阅读(12229) 评论(0) 推荐(5) 编辑