求教Java几个问题!!

4、阅读下面的程序,修改程序中编译错误的地方(提示:共五处错误)
interface Shape{
double PI;
public double area( );
public double perimeter( );
}
class Cycle extends Shape{
private double r;
public Cycle(double r){
this.r=r;
}
double area( ){
System.out.println(PI*r*r);
}
}
public class Test{
public static void main(String args[]){
Cycle c=new Cycle(1.5);
System.out.println("面积为:"+c.area());
}
}
5、阅读下面的程序,修改程序中错误的地方(提示:共三处错误)
1. class Person{
2. String name;
3. int age;
4. String sex;
5. public Person(String name,int age,String sex){
6. this.name=name;
7. this.age=age;
8. this.sex=sex;
9. }
10. public void toString(){
11. return "name:"+name+" age:"+age+" sex:"+sex;
12. }
13. }
14. public class TestPerson{
15. public static void main(String args[]){
16. Person p=new Person();
17. p.name="张三";
18. p.age=20;
19. p.sex="男";
20. System.out.println(Person.tostring());
21. }
22. }
6、根据以下的设计要求编写java源代码。
类名: Student
变量(访问权限均为private):
name(String) //姓名
age(int) //年龄
方法:
构造方法(没有参数,设置姓名为“无名氏”,年龄为20)
setName(有一个名为name的String型参数,将name的值设为这个新值),
getName (没有参数,返回姓名)
setAge(有一个名为age的int型参数,将age的值设为这个新值),
getAge (没有参数,返回年龄)
isSameAge(有一个参数s,是另一个Student对象的引用,如果两个Student对象的age相同,则返回true,否则返回false)

7、按以下要求编写程序。
(1)定义一个Shape接口,该接口中只有一个抽象方法getArea(),该方法无参数,返回值类型为double型;
(2)定义一个圆类Circle,满足以下条件:
a)Circle类实现Shape接口;
b)定义Circle类的成员变量r,表示圆的半径,数据类型为int;
c)定义Circle类的构造方法,参数名为r,用该参数初始化圆的半径;
d)实现getArea()方法,计算圆的面积(注:圆周率取3.14)
(3)编写一个测试类,类名为TestCircle,利用Circle类计算半径为5的圆的面积,并将面积在屏幕打印出来。

8、 定义一个矩形类Rectangle,包含有长length、宽width属性,构造方法(要求写出初始化长和宽)和计算面积方法getArea()。编写一个长方体类Cuboid,继承自矩形类,具有长length、宽width、高height属性,构造方法和计算体积的方法getVolume()。编写一个测试类Test,对以上两个类进行测试,通过调用其构造方法创建一个长方体对象(其中长为5、宽为4、高为3),要求输出其底面积和体积。

9、定义一个Person类,可以在应用程序中使用该类。
成员属性:Person类的属性(变量):
姓名:name,字符串类型:String;
性别:sex,字符型:char;
年龄:age,整型:int。
3个重载的构造函数:
public Person(String s) //设置姓名
public Person(String s,char c) //调用本类的构造函数Person(String s),设置性别
public Person(String s,char c,int i)//调用本类的构造函数PersonPerson(String s,char),设置年龄
一个成员方法:
public String toString()//获得姓名、性别和年龄
利用定义的Person类,请实例化对象,输出下面结果:姓名:张三 性别:男 年龄:21

interface Shape{
double PI; //1、必须有初始值 double PI = 3.14159
public double area( );
public double perimeter( );
}
class Cycle extends Shape{ //2、接口要实现而不是继承class Cycle implements Shape{
private double r;
public Cycle(double r){
this.r=r;
}
double area( ){ //3、实现时不可缩小访问权限 public double area
System.out.println(PI*r*r);
//4、 有返回类型定义时,必须有return语句 return PI*r*r;
}
//5、实现接口时必须给出所有抽象方法的实现体即perimeter
/*
public double perimeter(){
return ......; //返回一个double数
}
*/
}
public class Test{
public static void main(String args[]){
Cycle c=new Cycle(1.5);
System.out.println("面积为:"+c.area());
}
}
二、
10. public void toString(){ //void的方法不可以有return
public String toString(){
return ........;
}
16. Person p=new Person();//默认构造方法不存在,不可直接使用
Person p = Person("张三",20,"男");
或者是添加一个默认构造方法;
20. System.out.println(Person.tostring());//非静态方法不能使用静态方法的调用方式;
System.out.println(p.toString());
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-04
4:
class Cycle extends Shape{
extends 改为 implements
double area( ){
System.out.println(PI*r*r);
}
这个方法缺少返回值,加return PI*r*r;

PI没有赋值, 会报空指针错误 ,PI=3.1415926;
在Cycle 类中没有实现这个方法:
public double perimeter( );
另外那个求面积的方法应该加上public.

5: public void toString(){
return "name:"+name+" age:"+age+" sex:"+sex;
}
返回值为空不对,应该是String。
等会,吃完饭后再回来看看本回答被网友采纳
相似回答