永发信息网

JAVA:定义类与子类的表示下面关系,父类POINT(点) 子类Rectangle

答案:4  悬赏:40  手机版
解决时间 2021-01-26 04:44
JAVA:定义类与子类的表示下面关系,父类POINT(点) 子类Rectangle(属性左上角,长和宽)子类cube的代码,还有测试函数 我没时间了!!
最佳答案
class Base{
Base(){

}
public void m(){

}
}
class Sub extends Base{

Sub(){
super(); //调用父类的构造方法
super.m();//调用父类的方法
}
public void n(){

}
public static void main(String[] args){
Sub s = new Sub();
s.m();//这里应该理解为:
子类继承了父类,那么这个m()应该属于子类的了!,所以我们在重写的时候要覆盖父类的方法! 那么这里算调用子类自己的方法了
Base b = new Base();
b.m();//父类对象调用自己方法
//b.n();编译错误,因为子类的方法对父类不可见!
}
}

父类调用子类的方法 只能是在 父类里构造子类的对象,通过对象来调用!
如果子类的是静态方法,那么直接拿类调用!

子类调用父类的方法 用 super.methodName(); 只能在非静态方法
里这样调用

补充:
就是 在 Base 类里
Sub s = new Sub();
s.n();
全部回答
public class TestClass { public static void main(String[] args) { Point p = new Point(); Rectangle r = new Rectangle(); Cube c = new Cube(); r.setLen("30"); System.out.println(r.getLen()); } } class Point { public Point() { System.out.println("Point Class"); } } class Rectangle extends Point { private String leftTri; private String len; private String width; public Rectangle() { System.out.println("Rectangle Class"); } public String getLeftTri() { return leftTri; } public void setLeftTri(String leftTri) { this.leftTri = leftTri; } public String getLen() { return len; } public void setLen(String len) { this.len = len; } public String getWidth() { return width; } public void setWidth(String width) { this.width = width; } } class Cube extends Point { public Cube() { System.out.println("Cube Class"); } }
public class RectangleDemo//父类 { protected int width; protected int height; public RectangleDemo() { } public RectangleDemo(int width,int height) { this.width=width; this.height=height; } public void setWidth(int width) { this.width=width; } public void setHeight(int height) { this.height=height; } public int getWidth() { return width; } public int getHeight() { return height; } public int getArea() { return width*height; } } public class Cubic extends RectangleDemo//子类 { protected int length; public Cubic() { super(); } public Cubic(int width,int height,int length) { super(width,height); this.length=length; } public void setLength(int length) { this.length=length; } public int getLength() { return length; } public int getCubic() { //return width*height*length; return super.getArea()*length;//调用父类的方法getArea() } } public class CubicDemo//测试函数 { public static void main(String[] args){ Cubic cub1=new Cubic(); Cubic cub2=new Cubic(2,3,4); System.out.printf("%d,%d,%d \n",cub1.getWidth(),cub1.getHeight(),cub1.getLength()); System.out.printf("%d,%d,%d \n",cub2.getWidth(),cub2.getHeight(),cub2.getLength()); System.out.println(cub2.getCubic()); cub2.width=5;//直接调用父类的声明为protected的域成员 System.out.printf("%d,%d,%d \n",cub2.getWidth(),cub2.getHeight(),cub2.getLength()); System.out.println(cub2.getCubic()); } }
//Point.java public class Point { private int x; private int y; public int getX() { return x; } public void setX(int x) { this.x = x; } public int getY() { return y; } public void setY(int y) { this.y = y; } public Point(int x, int y) { this.x=x; this.y=y; } } //Rectangle.java public class Rectangle extends Point{ private int x; private int y; private int width; private int height; public Rectangle(int x, int y) { super(x, y); // TODO Auto-generated constructor stub } public Rectangle(int x2, int y2, int width, int height) { super(x2, y2); this.x = x2; this.y = y2; this.width = width; this.height = height; } public int getWidth() { return width; } public void setWidth(int width) { this.width = width; } public int getHeight() { return height; } public void setHeight(int height) { this.height = height; } } //Cube.java public class Cube extends Point{ private int x; private int y; private int z; private int length; private int width; private int heigth; public Cube(int x, int y, int z, int length, int width, int heigth) { super(x, y); x = x; y = y; this.z = z; this.length = length; this.width = width; this.heigth = heigth; } public int getLength() { return length; } public void setLength(int length) { this.length = length; } public int getWidth() { return width; } public void setWidth(int width) { this.width = width; } public int getHeigth() { return heigth; } public void setHeigth(int heigth) { this.heigth = heigth; } public int getZ() { return z; } public void setZ(int z) { this.z = z; } } //测试类T.java import java.awt.*; import java.awt.event.*; public class T{ public static void main(String args[]) { Point p = new Point(1,2); Rectangle r = new Rectangle(5,5,200,300); Cube c = new Cube(10,10,10,15,10,25); System.out.print("长方形的位置、长、宽分别为:"); System.out.println("("+r.getX()+","+r.getY()+")、"+r.getWidth()+"、"+r.getHeight()); System.out.print("立方体的位置、长、宽、高分别为:"); System.out.println("("+c.getX()+","+c.getY()+","+c.getZ()+")、"+c.getLength()+"、"+c.getWidth()+"、"+c.getHeigth()); } } 您的进步是我最大的动力,如果你觉得我回答的合理的话,请给我多加分。谢谢,如果不明白的话,大家相互学习啊!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
郁闷死了。前段时间认识个女孩子。我很喜欢的
吉贝汽车地址在哪,我要去那里办事
停车场(韶山路二段)地址在什么地方,我要处理
请问我在火车东站4:30分左右坐什么车到洛带古
征途fc928sc电子狗怎么样
关于支气管哮喘的症状与体征,以下说法不正确
被花蚊咬了会怎么样?怎么办?
股票中在前两日的涨势后榔头星的出现代表着什
成语归之若水的意思是什么啊?有知道释义的请
斯雷嘟dududu为什么火不起来
为什么再好的照相机也比不上人眼看东西更清晰
My point is
异星探险家物品放在地上会消失吗
系统中断怎么办
石家庄北大街19号蓝钻名座具体位置
推荐资讯
【征兵心理测试题大全】2011征兵心理测试题目
很萌的手机铃声~
鼠的黄色和黑色是一对相对性状,按基因的分离
车仆汽车美容养护地址在什么地方,我要处理点
现在有什么好看的科幻 搞笑电影吗?说说自己
慧美形象管理会所地址好找么,我有些事要过去
成都市双流县本地户籍读幼儿园一年大概需要多
MM_editCmd.Execute语法错误,来个asp大神
天籁公爵2011款防盗系统被锁怎么解锁
怎么样能缓解眼肌痉挛带给我的精神紧张,求亲
去t3航站楼怎样不交过路费
已知函数f(x)=ln(1+x)-ax的图象在x=1处的
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?