Java学习——this、this()、super 和 super()的使用
编写程序:说明 this、super 和 super()的用法。程序首先定义 Point(点)类,然后创建点的子类 Line(线)),最后通过 LX7_3 类输出线段的长度。
package Pack1; public class Try2 { public static void main(String[] args) { // TODO Auto-generated method stub Line line = new Line(50, 50); System.out.println("\n" + line.toString()); } } class Point{ protected int x,y; Point(int a,int b){ setPoint(a,b); } public void setPoint(int a,int b){ x=a; y=b; } } class Line extends Point{ protected int x,y; Line(int a,int b){ super(a,b);//设置父类的x,y为50,50 setLine(a,b); } public void setLine(int x, int y) { //设置子类的x,y为100,100 this.x = x + x; this.y = y + y; } public double Length(){ //super是父类的 int x1 = super.x, y1 = super.y, x2 = this.x, y2 = this.y; return Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1)); } public String toString() { return "直线端点:[" + super.x + "," + super.y + "] [" + x + "," + y + "] 直线长度:" + this.Length(); } }