zoukankan      html  css  js  c++  java
  • toString

    每一个非基本类型的对象都有一个toString()方法,当编译器需要一个String时,该对象却没有时,toString方法就会被调用。

     1 class  WaterSource{
     2     private String s;
     3     WaterSource(){
     4         System.out.println("WaterSource()
    ");
     5         s = "Constructed";
     6     }
     7     public String toString(){
     8         return s;
     9     };
    10     
    11 }
    12 public class zuheyufa {
    13 
    14     /**
    15      * @param args
    16      */
    17     private String value1,value2,value3,value4;
    18     private WaterSource source = new WaterSource();
    19     private int i;
    20     private float f;
    21     public String toString(){
    22         return "value1 =" + value1 + " " +
    23                "value2 =" + value2 + " " +
    24                "value3 =" + value3 + " " +
    25                "value4 =" + value4 +"
    " +
    26                "i =" + i + " " +
    27                "f =" + f + " " + 
    28                "source = " + source;
    29     }
    30   
    31     public static void main(String[] args) {
    32         // TODO Auto-generated method stub
    33         zuheyufa zuhe  = new zuheyufa();
    34         System.out.println(zuhe);
    35     }
    36 
    37 }

    结果为:

    WaterSource()

    value1 =null value2 =null value3 =null value4 =null
    i =0 f =0.0 source = Constructed

    上例所示,当主函数需要输出zuheyufa的对象时,该对象没有String,因此会调用toString方法。

    如果稍稍修改一下WaterSource类,为该类中的构造函数传递一个String参数,那么结果将发生变化了。

     1 class  WaterSource{
     2     private String s ;
     3     WaterSource(String str){
     4         System.out.println("WaterSource()
    ");
     5         s = "Constructed";
     6         s = str;
     7     }
     8     public String toString(){
     9         return s;
    10     };
    11     
    12 }
    13 public class zuheyufa {
    14 
    15     /**
    16      * @param args
    17      */
    18     private String value1,value2,value3,value4;
    19     private WaterSource source = new WaterSource("jk");
    20     private int i;
    21     private float f;
    22     public String toString(){
    23         return "value1 =" + value1 + " " +
    24                "value2 =" + value2 + " " +
    25                "value3 =" + value3 + " " +
    26                "value4 =" + value4 +"
    " +
    27                "i =" + i + " " +
    28                "f =" + f + " " + 
    29                "source = " + source;
    30     }
    31   
    32     public static void main(String[] args) {
    33         // TODO Auto-generated method stub
    34         zuheyufa zuhe  = new zuheyufa();
    35         System.out.println(zuhe);
    36     }
    37 
    38 }

    结果为:

    WaterSource()

    value1 =null value2 =null value3 =null value4 =null
    i =0 f =0.0 source = jk

  • 相关阅读:
    博客CSS样式 二
    产品经理
    HttpClient调用doGet、doPost、JSON传参及获得返回值
    Maven无法下载com.oracle:ojdbc.jar解决方法
    EasyExcel导入导出
    centos7 安装supervisor教程以及常见问题
    Django与Celery的安装使用
    亚马逊广告api v2版php扩展库
    Mac VMware Fusion CentOS7 安装、配置静态IP文档
    常见Web安全问题攻防解析
  • 原文地址:https://www.cnblogs.com/huxianlu/p/3351644.html
Copyright © 2011-2022 走看看