Java程序初始化过程中方法覆盖问题

原创 2007年10月04日 20:02:00
 代码如下:
/**//*
 * Test.java
 *
 * Created on 2007-10-4, 19:32:43
 *
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 
*/


/** *//**
 *
 * 
@author Jeffery
 
*/


class Base ...{

    
int i;

    Base() 
...{
        add(
1);
        System.out.println(
"Base" + this.i);
    }


    
void add(int i) ...{
        
this.i += i;
        System.out.println(
"Base add i" + this.i);
    }

}


class MyBase extends Base ...{

    MyBase() 
...{
        add(
2);
        System.out.println(
"Mybase" + this.i);
    }


    
void add(int i) ...{
        
this.i += i * 2;
        System.out.println(
"Mybase add i" + this.i);
    }

}


public class Test ...{

    
public static void main(String[] args) ...{
        go(
new MyBase());
    }


    
static void go(Base b) ...{
        b.add(
8);
    }

}
最后输出i的值为22

分析:按照之前一篇文章总结在主函数中,首先执行new MyBase(),在这个过程中,子类会首先调用父类的构造函数Base(),但Base()函数执行add()方法时特别需要注意, 这个add方法由于是在新建MyBase对象时调用的,所以将会首先查找MyBase类中是否有此方法。所以Base函数中的add(1)实际上是执行的乘2的方法。

java程序执行过程中动态加载jar包

最近做一个远程接口测试系统,遇到了动态加载jar包的问题,如将用户上传的jar包动态加载后调用远程接口的方法,特将例子记录下来以便查找。...
  • baokx
  • baokx
  • 2015年09月16日 18:27
  • 1317

java程序开发过程中会话管理的技巧

有效安全用户的会话状态对Web应用程序来说至关重要。如淘宝的网上交易系统。因为在同一时间可能有数以千计的用户在使用这个系统。为此服务器必须要知道当用户在浏览不同网页查询并选购商品时,哪些商品是属于哪个...

编写,编译,运行Java程序过程中的编码解码过程

在编写,编译,运行Java程序过程中,包含有多个编码解码过程。 一、编写Java程序 某个文本编辑器(比如Intellij Idea内的文本编辑器)编辑Java程序,在将Java源代码片段保存到文件时...
  • DSLZTX
  • DSLZTX
  • 2015年10月16日 21:42
  • 937

记一次线上Java程序导致服务器CPU占用率过高的问题排除过程

1、故障现象客服同事反馈平台系统运行缓慢,网页卡顿严重,多次重启系统后问题依然存在,使用top命令查看服务器情况,发现CPU占用率过高。2、CPU占用过高问题定位2.1、定位问题进程使用top命令查看...

关于Java程序中类定义对象的处理,以及类中变量与方法的运行过程

首先先理解创建一个对象时,系统所要完成的3个工作: 1>为每个对象分配不同的存储空间,即不同的实例化对象要有不同的地址空间;(也可以理解为有多个对象同时指示着同一个实例) 2>如果类定义有初值,使...

记一次线上Java程序导致服务器CPU占用率过高的问题排除过程

原文链接:http://www.jianshu.com/p/3667157d63bb 1、故障现象 客服同事反馈平台系统运行缓慢,网页卡顿严重,多次重启系统后问题依然存在,使用top命令查...

java开发过程中对于乱码问题的解决方法

最近在做项目的时候由于要用到一个日志的功能,然后将操作日志写到文件中,最后定时从日志中读取文件写到数据库中,由于在定时任务中用到了RandomAccessFile记录日志的增量部分,所以产生了在用Ra...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java程序初始化过程中方法覆盖问题
举报原因:
原因补充:

(最多只允许输入30个字)