这是一个JAVA程序,主要练习继承的用法。不过,我在这想问的是一个读入多个参数的问题
下面是一个编写类
import java.util.ArrayList;
public class Readings {
private int pages;
private String name;
public ArrayList<String> keywords=new ArrayList<String>();
public Readings(String a,int b,String ... keywords){
name=a;
pages=b;
}
public String toString(){
String xinxi="书名:"+name+"\n页数:"+pages+"\n"+"关键词:";
int a=keywords.size();
String xinxi3="",xinxi2;
for(int num=0;num < a;num++)
{
xinxi2=keywords.get(num);
xinxi3=xinxi2+xinxi3;
}
String xinxi4=xinxi+xinxi3;
return xinxi4;
}
}
class Book extends Readings{
public Book(String a,int b,String ... keywords){
super(a,b);
}
}
class Novel extends Readings{
public Novel(String a,int b,String ... keywords){
super(a,b);
}
}
class Journal extends Readings{
public Journal(String a,int b,String ... keywords){
super(a,b);
}
}
class Magazine extends Readings{
public Magazine(String a,int b,String ... keywords){
super(a,b);
}
}
class Textbook extends Readings{
public Textbook(String a,int b,String ... keywords){
super(a,b);
}
}
下面这个是驱动类public class Readingsmian { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Readings rea=new Readings("hhh",123,"hhh","zouzouzou","helloworld");
Novel nov=new Novel("钢铁是怎样炼成的",1236,"保尔","俄罗斯");
Magazine mag=new Magazine("电脑周刊",256,"电脑科技","电脑组装","硬件大全","电脑购买");
Textbook text =new Textbook("JAVA程序设计教程",505,"JAVA程序设计","编程","教学");
System.out.println(nov);
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
System.out.println(mag);
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
System.out.println(text);
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
System.out.println(rea);
}
}
我想问的就是。为什么后面的多个参数读不进去,如何能读进去呢,求指教
下面是一个编写类
import java.util.ArrayList;
public class Readings {
private int pages;
private String name;
public ArrayList<String> keywords=new ArrayList<String>();
public Readings(String a,int b,String ... keywords){
name=a;
pages=b;
}
public String toString(){
String xinxi="书名:"+name+"\n页数:"+pages+"\n"+"关键词:";
int a=keywords.size();
String xinxi3="",xinxi2;
for(int num=0;num < a;num++)
{
xinxi2=keywords.get(num);
xinxi3=xinxi2+xinxi3;
}
String xinxi4=xinxi+xinxi3;
return xinxi4;
}
}
class Book extends Readings{
public Book(String a,int b,String ... keywords){
super(a,b);
}
}
class Novel extends Readings{
public Novel(String a,int b,String ... keywords){
super(a,b);
}
}
class Journal extends Readings{
public Journal(String a,int b,String ... keywords){
super(a,b);
}
}
class Magazine extends Readings{
public Magazine(String a,int b,String ... keywords){
super(a,b);
}
}
class Textbook extends Readings{
public Textbook(String a,int b,String ... keywords){
super(a,b);
}
}
下面这个是驱动类public class Readingsmian { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Readings rea=new Readings("hhh",123,"hhh","zouzouzou","helloworld");
Novel nov=new Novel("钢铁是怎样炼成的",1236,"保尔","俄罗斯");
Magazine mag=new Magazine("电脑周刊",256,"电脑科技","电脑组装","硬件大全","电脑购买");
Textbook text =new Textbook("JAVA程序设计教程",505,"JAVA程序设计","编程","教学");
System.out.println(nov);
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
System.out.println(mag);
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
System.out.println(text);
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
System.out.println(rea);
}
}
我想问的就是。为什么后面的多个参数读不进去,如何能读进去呢,求指教
解决方案 »
- java用什么数据库
- The type File is ambiguous
- 如何把一个应用程序集成到Web中,急求思路
- Spring aop 配置
- 请spring高手回答,怎样在org.springframework.scheduling.quartz.JobDetailBean任务调度中获取sevletContext实例。最好能在配置文件中注入。
- 跪求 Easysvn
- 写一段时间段控制代码, 2007-08-29 至 2007-09-04 跳过接下来的程序执行.
- Struts初学者一个问题请教。关于Servlet action is not available
- J2EE高手进-->关于传送自动生成的ID的问题
- 高分求一个“session facade”的例子,(就是对entity bean的操作都在session里)(100分)!
- 为什么我的jdk卸载不了
- model 2:页面拿不到值
public Readings(String a,int b,String ... keywords){
name=a;
pages=b;
for(String s:keywords){
this.keywords.add(s);
}
}
还有每一个子类都调用super(a,b,keywords)三个参数
如 void f(String... strs),则调用f(new String[]{"hello","world"})或者f("hello","world")都行。
super确实是调用父类的方法。
子类里super(a,b,keywords)的最后一个参数keywords仍然是String...类型的,除非你使用super(a,b,this.keywords) 那么就出错了。因为类里本身定义了一个ArrayList<String>的keywords