例对象用作方法的参数JAVAclass Spot {class jex6_10 {public static void main(String args[)) private int x, y;Spot (int u, int v) {Spot s = new Spot(2, 3);System.out.printlnc"s点的坐标:"setx(u); setY(v);)void setx(int x1) (x=x1;)+ s.getx()+""+s.getY();void setY(int y1) (y=y1;)s.move(4, 5);System.out.println("s点的坐标:"int getxO { return x;}int getYO (return y:}+ s.getx()+""+s.getY());1void move(int h, int k)k人x=x + h;y=y + k;17
11 例 对象用作方法的参数 class jex6_10 { public static void main(String args[]) { Spot s = new Spot(2, 3); System.out.println(“s点的坐标:” + +s.getX()+“,”+s.getY()); Trans ts = new Trans(); ts.move(s, 4, 5); System.out.println(“s点的坐标:” + +s.getX()+“,”+s.getY()); } } class Spot { private int x, y; Spot (int u, int v) { setX(u); setY(v);} void setX(int x1) {x=x1;} void setY(int y1) {y=y1;} int getX() { return x;} int getY() {return y;} } class Trans { void move(Spot p, int h, int k) { p.setX(p.getX() + h); p.setY(p.getY() + k); } } class jex6_10 { public static void main(String args[]) { Spot s = new Spot(2, 3); System.out.println(“s点的坐标:” + s.getX()+“,”+s.getY()); Trans.move(s, 4, 5); System.out.println(“s点的坐标:” + s.getX()+“,”+s.getY()); } } class Spot { private int x, y; Spot (int u, int v) { setX(u); setY(v);} void setX(int x1) {x=x1;} void setY(int y1) {y=y1;} int getX() { return x;} int getY() {return y;} } class Trans { static void move(Spot p, int h, int k){ p.setX(p.getX() + h); p.setY(p.getY() + k); } } class jex6_10 { public static void main(String args[]) { Spot s = new Spot(2, 3); System.out.println(“s点的坐标:” + s.getX()+“,”+s.getY()); s.move(4, 5); System.out.println(“s点的坐标:” + s.getX()+“,”+s.getY()); } } class Spot { private int x, y; Spot (int u, int v) { setX(u); setY(v);} void setX(int x1) {x=x1;} void setY(int y1) {y=y1;} int getX() { return x;} int getY() {return y;} void move(int h, int k){ x = x + h; y = y + k; } }
对象的访问JAVA对象的访问对象作为方法的返回值[访问权限修饰符]方法返回类型方法名(参数)[throws 异常名](方法体;1返回类型有返回值:基本数据类型 /复合类型(对象)无返回值:void12
12 对象的访问 ◼ 对象的访问 ◼ 对象作为方法的返回值 [访问权限修饰符] 方法返回类型 方法名(参数) [throws 异常名] { 方法体; } ◼ 返回类型 ◼ 有返回值: 基本数据类型/复合类型(对象) ◼ 无返回值: void
编程演示JAVA对象作为方法的返回值例:求两点坐标之间的中点坐标思路: (x1, y1) 和(x2, y2)→>(x, y)x=(x1+x2)/2, y=(y1+y2)/2Spot s1 = new Spot(2,3);Spot s2 = new Spot(4, 5);Spot s = s1.midSpot(s2);13
13 编程演示 ◼ 对象作为方法的返回值 ◼ 例: 求两点坐标之间的中点坐标 ◼ 思路: (x1, y1) 和(x2, y2)→(x, y) ◼ x=(x1+x2)/2, y=(y1+y2)/2 ◼ Spot s1 = new Spot(2, 3); ◼ Spot s2 = new Spot(4, 5); ◼ Spot s = s1.midSpot(s2);
JAVA例对象用作方法的返回值class Spot {class jex6_13 private double x, y;public static void main(String args[)) Spot (double u, double v) ^Spot s1 = new Spot(3.0, 5.0);setx(u); setY(v);)Spot s2 = new Spot(6.0, 8.0);System.out.println("s1点的坐标:"void setx(double x1) (x=x1;)void setY(double y1) (y=y1;)+ s1.getx(+""+s1.getY0)System.out.println("s2点的坐标:"double getxO return x;})double getYO (return y)+ s2.getx0+""+s2.getY0)Spot midSpot(Spot s)Spot s = s1.midSpot(s2);double midX=(x+s.getx()/2;System.out.printlnC"中点的坐标:"double midY=(y+s.getY(0))/2;+ s.getx(+""+s.getYO)7return new Spot(midX, midY);17人
14 ◼ 例 对象用作方法的返回值 class jex6_13 { public static void main(String args[]) { Spot s1 = new Spot(3.0, 5.0); Spot s2 = new Spot(6.0, 8.0); System.out.println(“s1点的坐标:” + s1.getX()+“,”+s1.getY()); System.out.println(“s2点的坐标:” + s2.getX()+“,”+s2.getY()); Spot s = s1.midSpot(s2); System.out.println(“中点的坐标:” + s.getX()+“,”+s.getY()); } } class Spot { private double x, y; Spot (double u, double v) { setX(u); setY(v);} void setX(double x1) {x=x1;} void setY(double y1) {y=y1;} double getX() { return x;} double getY() {return y;} Spot midSpot(Spot s){ double midX=(x+s.getX())/2; double midY=(y+s.getY())/2; return new Spot(midX, midY); } }