java编程

import java.io.*;
public class abc
{
public static void main(String args [ ])
{
AB s = new AB("Hello!","I love JAVA.");
System.out.println(s.toString( ));
}
}
class AB {
String s1;
String s2;
public AB(String str1, String str2)
{
s1 = str1;
s2 = str2;
}
public String toString( )
{
return s1+s2;
}
}

class AB{........ 以及后面的有什么用处?? 刚刚学java,不懂求解释

public AB(String str1, String str2){
s1 = str1;
s2 = str2;
}
有参构造,从外传进两参数分别赋给s1和s2。

public String toString( )
{
return s1+s2;
}
重写父类的toString()方法,返回s1+s2,即返回两个字符串连接后的新字符串。

在class abc中 语句: System.out.println(s.toString( ));相等于 System.out.println(s)
都输出:Hello!I love JAVA.
还有什么问题就追问。追问

这个程序的思路是怎样的??我没有看懂先执行那些部分???import java.io.*;
这儿不是已经有 AB s = new AB("Hello!","I love JAVA.");
System.out.println(s.toString( ));
}
为什么还要引入参数,看书看晕。

追答

import java.io.*;完全没必要,因为程序中没有用到io相关。
两个类,在类abc的主函数中new 了一个B的对象,再打印AB对象的toString方法结果。
类AB,构造有两个参数字符串,所以类abc中new AB的对象时要引入参数。
程序执行顺序和上面述说一样。先执行public类的main函数。
如果这两个类在一个文件中,文件名一定是abc.java,如果类AB也有main()方法,不会执行的,程序入口是public 类的main函数。如果class AB改为public class AB,那么这两类在一个文件中会报错。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-02
public AB(String str1, String str2)
{
s1 = str1;
s2 = str2;
}该方法是带参数的构造方法,主要是对String str1,String str2进行初始化赋值,在创建对象的时候传值。
public String toString( )
{
return s1+s2;
}
该方法是重写toString()方法,返回字符串s1和s2追加连接后的的新字符串。
所以在该程序中,class AB的作用是返回两字符串连接后的新字符串。
第2个回答  2012-06-01
这个是把两个字符串和一块。
例如(1)"Hello!"(2)"I love JAVA.";这个是两个字符串。合成一个"hello,I love JAVA"
第3个回答  2012-06-01
自己定义了AB类,重写了toString()方法,进行两个字符串求和。
第4个回答  2012-06-01
定义了2个变量,写一个带2个参数构造方法,重写了toString()方法吧
第5个回答  2012-06-01
定义一个AB类 然后赋值使用 这是一个继承的方法
相似回答