java程序不知道哪里错了,求指教

问题描述

java程序不知道哪里错了,求指教

不知道哪里错了,求指教
程序如下:
package com.Sixping.Ncre;

import java.util.*;

public class AbstractClassTest {
public static void main(String[] args) {
Person[] people=new Person[2];
people[0]=new Employee0("张浩", 50000, 1989, 10, 1);
people[1]=new Student0("李明", "计算机科学");
for(Person p:people){
System.out.println(p.getName()+","+p.getDescription());
}
}

}
abstract class Person{
public Person(String n) {
name=n;
}
public abstract String getDescription();
public String getName(){
return name;
}
private String name;
}
class Employee0 extends Person{
public Employee0(String n,double s,int year,int mouth ,int day){
super(n);
salary=s;
GregorianCalendar calendar=new GregorianCalendar(year ,mouth-1,day);
hireDay=calendar.getTime();
}
public String getDescription() {
return String.format("公司雇员,年薪是¥%。2f。", salary);
}
private double salary;
private Date hireDay;
}
class Student0 extends Person{
public Student0(String n, String m) {
super(n);
major=m;
}
public String grtDescription() {
return "大学生,专业是"+major+"。";
}
private String major;

}

错误信息:

Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = '。'
at java.util.Formatter.checkText(Formatter.java:2502)
at java.util.Formatter.parse(Formatter.java:2484)
at java.util.Formatter.format(Formatter.java:2413)
at java.util.Formatter.format(Formatter.java:2366)
at java.lang.String.format(String.java:2770)
at com.Sixping.Ncre.Employee0.getDescription(AbstractClassTest.java:34)
at com.Sixping.Ncre.AbstractClassTest.main(AbstractClassTest.java:11)

解决方案

问题就在你使用String.format错了,修正如下:

    public String getDescription() {
        return String.format("公司雇员,年薪是¥%f。", salary);
    }

在format的时候能够产生单纯的替换效果.用具体的值替换相应的转换符.转换符是固定的,而并没有%。这种,所以错误了。
你需要显示的是浮点数的数据格式,所以直接用%f就可以了。
详细的转换符及用法,参考:http://blog.csdn.net/cilen/article/details/7709488

解决方案二:

 public String getDescription() {
return String.format("公司雇员,年薪是¥%。2f。", salary);
}
这里用了中文句号了,改成英文
public String getDescription() {
return String.format("公司雇员,年薪是¥%.2f。", salary);
}

public String grtDescription() {
return "大学生,专业是"+major+"。";
}
方法名错了
public String getDescription() {
return "大学生,专业是"+major+"。";
}

解决方案三:

Persion.getDescription()的错误吧,把Person贴出来看看呗

解决方案四:

grtDescription

------->

getDescription

时间: 2024-09-30 18:44:39

java程序不知道哪里错了,求指教的相关文章

java程序不知道哪儿错了,请指教

问题描述 packagetest;importjava.awt.*;importjava.awt.event.*;importjava.util.*;publicclassStudentInfoextendsFrameimplementsActionListener{staticHashMapmap=newHashMap();Buttonbt1=newButton();Buttonbt2=newButton();Buttonbt3=newButton();TextAreatextArea1=ne

我的程序哪里错了?-shell中程序调试问题 不知道哪错了 求解答

问题描述 shell中程序调试问题 不知道哪错了 求解答 #!/bin/bashfunction a {read -p ""input: "" valueecho -n ""doubling the value ""return $[ $value * 2 ]} aecho ""the new value is $?"" 我想让输入的数的两倍大于255时,程序输出的值为1如果我输入的数的

java程序报错,求大神找bug

问题描述 java程序报错,求大神找bug package arraysofobjects; import java.util.Scanner; public class arraysofobjects { public static void main(String[] args) { Scanner input=new Scanner(System.in); students[] stu=new students[4]; String name; int grade; for(int i=0

Myeclipse导入java项目出现问题,求指教!

问题描述 Myeclipse导入java项目出现问题,求指教! 昨天导入同时的web项目,框架是SSI,由于数据库改用我自己的,所以在Spring配置文件中将数据源中的数据库名和密码改成了自己的,结果出现错误,说用户名密码错误. org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: Error querying databa

javascript-初学者, 不知道哪里错了 求指点 谢谢 不怕嘲笑 不怕讽刺 只求进步

问题描述 初学者, 不知道哪里错了 求指点 谢谢 不怕嘲笑 不怕讽刺 只求进步 <br> var i = 2;</p><pre><code> while ( i<101) { var arr=[]; for (var a = 2; a < =i;a++) { if (i%a==0) { arr.push(0); } } if (arr.length==1) { document.write(i); } document.write("&

java泛型怎么理解?求指教

问题描述 java泛型怎么理解?求指教 java泛型中,定义泛型方法格式:public T fun(T t),这几个T分别是什么意思? 我知道最后一个T是参数,那前面两个T表示什么?哪个表示返回类型? 解决方案 你的意思应该是public T fun(T t)中几个T的含义.从左至右: 1,代表声明此方法中T是泛型,否则T代表名字为'T'的类 2,第二个T代表返回值 3,第三个代表参数 另外带泛型的类写法是 class Demo<E>{ void method1(E obj){ } E met

查询 文件读写-java程序字符串问题(求大牛帮忙)

问题描述 java程序字符串问题(求大牛帮忙) 一个文件夹中(可能包含多个文本文件或子文件夹),查询其中包含关键字(至少一个)的文本文件然后输出这个文本文件的路径和所包含的关键字.关键字也存放在一个文本文件当中.不知程序该怎么写(java菜鸟,求大牛帮忙).关键字不区分大小写,一般只有字母和ASCII码组成,要忽略空格.最后的结果也要输出在一个文本文件上 解决方案 这个的话 第一个就这么个思路了 1:写一个递归算法 遍历到当前文件夹下的所有子文件(包括文件夹) 如果是文本文件的话则调用查找关键字

javascript-JS简单计算器问题 不知道哪错了 求大神指点

问题描述 JS简单计算器问题 不知道哪错了 求大神指点 简易计算<br> function jiSuan(){<br> var num1 = document.getElementById("num1").value*1;<br> var num2 = document.getElementById("num2").value*1;<br> var oper = document.getElementById(&quo

java-Java程序员成长疑问,求指点,求指教

问题描述 Java程序员成长疑问,求指点,求指教 大家好: 小弟做Java开发近2年,在学习成长过程中出现了迷茫,不知道该如何走下去... 目前从事电信项目的开发,主要是业务方面的开发,技术性不是很强,不知道该往哪个方面走,该学习什么,还是该如何规划下面的发展,希望各位前辈给予指点,谢谢!! 解决方案 你既然选择了这行,我建议一定要走下去,因为其它行业也不是好混的. 既然你已经做好2年开发了现在不想做是不是对行业不敢兴趣?就像我当年一样,换了行业(电商)后兴趣增加不少.仅供参考! 建议:千万不要