用JAVA定义一个point类,含有一个print方法,再定义一个print方法,再定义一个类point3d,继承自父类point类,并覆盖父类的同名方法print().在main()方法中调用父类和子类的print().
public class Test {
public static void main(String[] args) {
Point point = new Point();
point.print();
Point point1 = new Point3D();
point1.print();
}
}
protected class Point {
public void print() {
System.out.println("Point print");
}
}
public class Point3D extends Point {
public void print() {
System.out.println("Point3d print");
}
}
谢谢,但是运行出错,麻烦你再改改
在线编译和运行通过
/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
class point
{
public void print() { System.out.println("base"); }
}
class point3d extends point
{
@Override
public void print() { System.out.println("derived"); }
}
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
// your code goes here
point p1, p2;
p1 = new point();
p1.print();
p2 = new point3d();
p2.print();
}
}
输出
base
derived
再不对就是你的环境的问题了,不关程序的事了。
point应该是一个抽象基类,由子类继承,并重写父类方法。就像你经常会出于某种目的,重写自己的类(继承自Object类)的toString()方法。