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());
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。
等会,吃完饭后再回来看看