翻看think in java时,看到这么一段“可以在运行时刻修改这些成员对象,以实现动态修改程序的行为”。本来以为继承算是一种方法,但紧跟着看到“继承(inheritance)并被具备这样的灵活性,因为编译器必须对通过集成而创建的类施加编译时刻的限制。”仔细一想,倒也是的。
那么,我的问题是,要想在运行时修改修改类的成员,动态修改程序行为,都有什么方法呢?
那么,我的问题是,要想在运行时修改修改类的成员,动态修改程序行为,都有什么方法呢?
解决方案 »
- DataOutputStream 与BufferedOutputStream
- String a = null;和String a=“”哪种好?
- 请教高手关于java运算符的一个小问题
- Java gui设计的问题
- 除0异常问题,大家快答一下啊
- swt GUI处女作,欢迎赏评!
- 各位JAVA老大们,帮我个忙好吧?我有个简单的JAVA题目不会做
- 急问怎么在面板上绘制的直线上添加鼠标响应
- 请问各位高手:我在jbuilder里开发web应用。读文件的路径问题如何解决?(在线等)
- 一个关于线程的简单问题~``帮忙看看~`谢谢(在线)
- 一次性地给一个HashMap服赋值怎么写,不要一个个put
- 在XP下为什么连不上SQL server2000?
现在我稍稍明白了点,举例来说:子类和父类保持相同的变量和方法定义,然后子类以不同实现重载该方法.这样就可以定义一个被不同子类对象使用的接口,并且子类的重载方法是在运行时被调用.
例 class supClass{
int i;
int j;
supClass(){
i=1;
j=2;
} int plus(){return 0}
} class subClass{
int plus(){return i+j;}
} class a{
public static voed main(String args[]){
subClass bb = new subClass();
supClass aa;//定义一个通用接口
aa = bb;
return bb.plus();//子类的重载方法会在运行时调用
}
}
-----------------------------------------------------------------------------------
以上是我查了一些书籍后对运行时修改程序的一个认识,不知道对不对,如果有人路过,请输出你的看法,谢谢.
另外
subClass bb = new subClass();
supClass aa;//定义一个通用接口
aa = bb;
return aa.plus();//这样才能看到多态的效果
fs.method();
至于我说的“运行时修改程序”是think in java翻译的一个说法,我想多态的效果应该就是这种情况。