`
newLinuxJava
  • 浏览: 44311 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Java源码的一个小问题

阅读更多
在java.lang.Integer类中方法parseInt(String s)和valueOf(String s, int radix)的定义如下:
(1)
    public static int parseInt(String s) throws NumberFormatException {
        return parseInt(s,10);
    }
以及:
(2)
    public static Integer valueOf(String s, int radix) throws NumberFormatException {
        return Integer.valueOf(parseInt(s,radix));
    }

问题:为什么(2)中(return那一行)的valueOf方法的调用要在前面用上Integer类型?
         或者说,直接改写成这个样子又会什么问题呢?改写:
    public static Integer valueOf(String s, int radix) throws NumberFormatException {
        return valueOf(parseInt(s,radix));
    }
在或者说,(1)中(return那一行)的parseInt方法的调用需要在前面加上Integer类型吗?

请各位指教指教
分享到:
评论
2 楼 newLinuxJava 2009-12-20  
类方法与实例方法的区别是:方法根据是否有static修饰可以分为类方法和对象方法(实例方法)。  访问时,类方法可以直接通过类名来引用,而实例方法必须通过对象名来访问,也就是说要想使用实例方法,就必须创建一个该类的对象。

  再看看源码的java.lang.Integer类的定义:

  package java.lang;

  public final class Integer {
    ...
    ...
    public static int parseInt(String s) { //方法(1)
        return parseInt(s,10);
    }

    public static Integer valueOf(String s, int radix) { //方法(2)
        return Integer.valueOf(parseInt(s,radix));
    }

    public static int parseInt(String s, int radix) {//方法(3)
      ...
      ...
    }

    public static Integer valueOf(int i) {//方法(4)
      ...
    }


  }

  从上面来看,很明显,方法(1)调用的方法(3)parseInt(String s,int radix)是static修饰的;方法(2)调用的方法(4)valueOf(int i)也是static修饰的;照理来说,它们都是实例方法?!!
  再者,从上面看来,这些都是类内的方法调用,应该不用理会什么类方法或者实例方法吧。
1 楼 condeywadl 2009-12-20  
1.这要继续看valueOf(int i)里面的代码~~
2.int到integer是可以自动包装的~所以无需显式的转换
3.我估计valueOf(String s)里面也是这么写的,这样只需要实现 parseInt(String s,int radiox)就可以了
4.直接改成return valueOf(parseInt(s,radix));话你自己试试吧,我估计编译器自己能识别出来如果你不导入其他能让他混淆的类.....
5.个人见解....

相关推荐

    java源码包实例源码JAVA开发源码50个合集.zip

    java源码包实例源码JAVA开发源码50个合集: Ajax框架 ZK.rar Java图书馆管理系统源程序.rar Java图片倒影效果实例源码.rar Java图片翻折,将图像压扁.rar Java坦克大战网络对战版源代码.rar Java声音播放程序源代码....

    java源码包---java 源码 大量 实例

     用JAVA编写了一个小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字  Java波浪文字,一个利用...

    java源码下载java

    java源码下载java源码下载java源码下载

    java源码包实例源码JAVA开发源码55个合集.zip

    Java写的一个mp3播放器.rar Java写的图片幻灯片切换特效.rar Java写的天气预报软件.rar Java写的巨型LCD液晶时钟显示屏.rar JAVA图书馆管理系统源码.rar Java图像文件的缩小与放大.rar Java学生信息管理系统源码包....

    java源码_派单系统平台源码完整版.zip

    java源码_派单系统平台源码完整版java源码_派单系统平台源码完整版java源码_派单系统平台源码完整版java源码_派单系统平台源码完整版java源码_派单系统平台源码完整版java源码_派单系统平台源码完整版java源码_派单...

    java算法大全源码 java算法大全源码

    java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法大全源码java算法...

    java小游戏 SRPGWar(源码)

    java小游戏 SRPGWar(源码)java小游戏 SRPGWar(源码)java小游戏 SRPGWar(源码)java小游戏 SRPGWar(源码)java小游戏 SRPGWar(源码)java小游戏 SRPGWar(源码)java小游戏 SRPGWar(源码)java小游戏 SRPGWar(源码)java小...

    java小游戏 (源码)swing五子棋源代码

    java小游戏 (源码)swing五子棋源代码java小游戏 (源码)swing五子棋源代码java小游戏 (源码)swing五子棋源代码java小游戏 (源码)swing五子棋源代码java小游戏 (源码)swing五子棋源代码java小游戏 (源码)swing五子棋源...

    java源码包2

     用JAVA编写了一个小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字  Java波浪文字,一个利用...

    java源码包JSP实例源码JAVA开发源码65个合集.zip

    java源码包JSP实例源码JAVA开发源码65个合集: Java自定义光标程序源码.rar Jav动画图标源码(显示GIF图像).rar JLoading Java版的Mp3下载工具.rar JSP 动态数据菜单.rar JSP 学生管理系统(全部代码+数据库).rar ...

    Java源码包100个设计实例.zip

    Java源码包100个设计实例, 大量 实例,可以作为你的学习设计参考。 实例如下: Applet钢琴模拟程序java源码 Calendar万年历 copass源代码.rar DataBuffer在Java中使用ADO.NET.rar EJB 模拟银行ATM流程及操作源代码 ...

    Java文件管理系统源码.zip

    Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 ...

    Java在线任务管理系统源码.zip

    Java在线任务管理系统源码 Java在线任务管理系统源码 Java在线任务管理系统源码 Java在线任务管理系统源码 Java在线任务管理系统源码 Java在线任务管理系统源码 Java在线任务管理系统源码 Java在线...

    Java项目开源源码,共111个

    "Java项目开源源码,共111个" 本资源提供了111个Java项目的开源源码,涵盖了各种Java项目类型,包括Web开发、移动应用开发、桌面应用开发等。这些源码可以作为学习Java编程的参考资源,也可以作为实际项目开发的...

    java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码

    java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码java实现小超市源码...

    15个java小游戏源码合集

    Java编程语言在游戏开发领域有着广泛的...对于Java初学者来说,这是一个极好的学习资源,可以帮助他们快速掌握游戏开发的核心概念和技术。而对于有经验的开发者,这些源码可以作为灵感的源泉,激发新的创意和改进方案。

    Java源码大全

    Java源码大全是一个集合了各种Java编程基础知识和经典算法的资源包,对于Java初学者以及有一定经验的开发者来说,都是一个宝贵的参考资料。这个压缩包涵盖了Java语言的不同方面,旨在帮助学习者深入理解Java编程的...

    Java贪吃蛇小游戏源码.rar

    Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码Java贪吃蛇小游戏源码...

    140个Java源码实例

    《140个Java源码实例》是一份极具价值的学习资料,特别适合初学者...记得每完成一个实例,都要思考其背后的逻辑,这样你的编程思维将会得到显著提升。同时,不断练习和调试代码,有助于你成为一名熟练的Java开发者。

    java100个源码

    "java100个源码"这个资源提供了丰富的Java代码示例,涵盖了多种编程技巧和常见问题的解决方案。通过研究这些源码,开发者可以深入理解Java语言的核心特性,提升编程技能。 首先,这些源码中包含的丰富注释对于初学...

Global site tag (gtag.js) - Google Analytics