package digital;
/**编写MyPoint的一个子类MyXYZ,
 * 表示三维坐标点,重写toString方法用来显示这个对象的x,y,z的值,
 * 如显示(1,2,3),最后用main方法测试。 
 * */
public class MyXYZ extends MyPoint {
static int x;
static int y;
static int z;
public int x(){
return x;
}
public int y(){
return y;
}
public int z(){
return z;
}

public String toString(){
return "("+x+","+y+","+z+")";
}
public static void main(String[] args){
MyPoint point = new MyPoint();
point.x(1);
point.y(2);
point.z(3);
System.out.println(x);
System.out.println(y);
System.out.println(z);
}
}
----------------------------
package digital;public class MyPoint { public void y(int i) {
// TODO Auto-generated method stub

} public void x(int i) {
// TODO Auto-generated method stub

} public void z(int i) {
// TODO Auto-generated method stub

}}

解决方案 »

  1.   

    point.x(1);
    point.y(2);
    point.z(3);
    你想用这个赋值??.....父类连个实现都没怎么赋值
    自身属性用static干嘛...给main方法访问也不用这样写啊,new对象再访问
      

  2.   

    /**编写MyPoint的一个子类MyXYZ,
     * 表示三维坐标点,重写toString方法用来显示这个对象的x,y,z的值,
     * 如显示(1,2,3),最后用main方法测试。  
     * */
    public class MyXYZ extends MyPoint {
    static int x;
    static int y;
    static int z;
    public void x(int x){
    this.x=x;
    }
    public void y(int y){
    this.y=y;
    }
    public void z(int z){
    this.z=z;
    }public String toString(){
    return "("+this.x+","+this.y+","+this.z+")";
    }
    public static void main(String[] args){
    MyPoint point = new MyXYZ();
    point.x(1);
    point.y(2);
    point.z(3);
    System.out.println(MyXYZ.x);
    System.out.println(MyXYZ.y);
    System.out.println(MyXYZ.z);
    System.out.println(point.toString());
    }
    }class MyPoint {public void y(int i) {
    // TODO Auto-generated method stub}public void x(int i) {
    // TODO Auto-generated method stub}public void z(int i) {
    // TODO Auto-generated method stub}}
      

  3.   

    public static void main(String[] args){
    MyPoint point = new MyPoint();
    point.x(1);
    point.y(2);
    point.z(3);
    System.out.println(x);
    System.out.println(y);
    System.out.println(z);
    }
    main方法里的 MyPoint point = new MyPonint(),是生成了MyPoint对象,方法还没有实现。如果你想用多态,有以下参考
    public static void main(String[] args)
    {
    MyPoint point = new MyXYZ();
    point.x(1);
    point.y(2);
    point.z(3);
    System.out.println(MyXYZ.x);
    System.out.println(MyXYZ.y);
    System.out.println(MyXYZ.z);
    System.out.println(point.toString());
    }同楼上
      

  4.   

    package com.cn;/**
     * 编写MyPoint的一个子类MyXYZ, 表示三维坐标点,重写toString方法用来显示这个对象的x,y,z的值,
     * 如显示(1,2,3),最后用main方法测试。
     * */
    public class MyXYZ extends MyPoint {
    static int x;
    static int y;
    static int z; public int x() {
    return x;
    } public int y() {
    return y;
    } public int z() {
    return z;
    } public String toString() {
    return "(" + x + "," + y + "," + z + ")";
    } public static void main(String[] args) {
    MyPoint point = new MyPoint();
    //你这是什么意思
    point.x(1);
    point.y(2);
    point.z(3);
    //x,y,z没有显示的赋值,默认初始化为0,你应该定义一个构造方法,然后给x,y,z赋值
    System.out.println(x);
    System.out.println(y);
    System.out.println(z);
    }
    }class MyPoint { public void y(int i) {
    // TODO Auto-generated method stub } public void x(int i) {
    // TODO Auto-generated method stub } public void z(int i) {
    // TODO Auto-generated method stub }}
      

  5.   

    这是该题的参考答案,感觉有些问题public class MyXYZ extends MyPoint{
     private int z;
     public MyXYZ(){
      super();
      z=0;
     }
     public MyXYZ(int a){
      z=a;
     }
     public int getZ(){
      return z;
     }
     public String toString(){
      return  "("+super.getX()+","+super.getY()+","+this.getZ()+")";
     }
     public static void main(String[] args) {
      // TODO Auto-generated method stub
      MyXYZ my = new MyXYZ(23);
      System.out.println(my);
     }
    }