zoukankan      html  css  js  c++  java
  • toString()方法

    每种非基本类型的对象都有一个toString()方法。若编译器本来希望一个String,但却获得某个这样的对象,就会调用这个方法。所以在下面这个表达式中:
    System.out.println("source = " + source) ;
    编译器会发现我们试图向一个WaterSource添加一个String对象("source =")。这对它来说是不可接受的,因为我们只能将一个字串“添加”到另一个字串,所以它会说:“我要调用toString(),把source转换成字串!”经这样处理后,它就能编译两个字串,并将结果字串传递给一个System.out.println()。每次随同自己创建的一个类允许这种行为的时候,都只需要写一个toString()方法。

     1 package c06;
     2 
     3 class WaterSource {
     4     private String s;
     5     WaterSource() {
     6         print("WaterSource()");
     7         s = new String("Constructed");
     8     }
     9     
    10     public String toString() { return s; }
    11     
    12     public void print(Object o) {
    13         System.out.println(o);
    14     }
    15 }
    16 
    17 
    18 public class SprinklerSystem {
    19     private String valve1, valve2, valve3, valve4;
    20     WaterSource source;
    21     int i;
    22     float f;
    23     void print() {
    24         System.out.println("valve1 = " + valve1);
    25         System.out.println("valve2 = " + valve2);
    26         System.out.println("valve3 = " + valve3);
    27         System.out.println("valve4 = " + valve4);
    28         System.out.println("i = " + i);
    29         System.out.println("f = " + f);
    30         System.out.println("source = " + source);
    31     }
    32 
    33     public static void main(String[] args) {
    34         SprinklerSystem x = new SprinklerSystem();
    35         x.print();
    36     }
    37 }
    View Code
  • 相关阅读:
    JFreeChart生成图片
    itext生成Word
    itext生成PDF
    物理模型name与comment互相转化
    表单序列化为Json(只限input)
    c#多线程同步之EventWaitHandle的应用
    C#多线程之异步编程
    Java环境变量设置
    sharepoint 2013实践
    WPF研究之道——数据驱动UI
  • 原文地址:https://www.cnblogs.com/fanmzdj/p/3430501.html
Copyright © 2011-2022 走看看