1、【例3-1】有参方法实例。编写一个方法模块,实现计算1 + 2 + 3 + + n的n项和的功能。int mysum(int n)int i, s = 0;for(i=1; i y) return x;else return y;【例3-3】方法调用示例,计算1 + 2 + 3 + + 100的和。import javax.swing.*;public class Example3_3public static void main(String args) float sum = mysum(100);JOptionPane.showMessageDialog(null, “1 + 2 + 3
2、 + + 100 = “ + s);System.exit(0);int mysum(int n)int i, s = 0;for(i = 1; i = n; i+)s = s + i;return s;【例3-4】具有多个参数的方法示例。已经三角形的底和高,计算三角形面积。import javax.swing.*;public class Example3_4public static void main(String args) float s = area(3, 4);JOptionPane.showMessageDialog(null, “三角形面积 = “ + s);System.e
3、xit(0);static float area(int x, int h)float s;s = (x * h) / 2;return s; 【例3-5】 计算平面空间距离的计算公式分别是 和 ,使用一个方法名用方法重载实现的程序如下:/* 方法重载示例 */ import javax.swing.*;public class Example3_5static double distance(double x , double y) double d=Math.sqrt(x*x+y*y);return d; static double distance(double x , double y
4、 ,double z ) double d=Math.sqrt(x*x+y*y+z*z);return d; public static void main(String args) double d1 = distance(2,3);double d2 = distance(3,4,5);JOptionPane.showMessageDialog(null,“接受二个参数:平面距离 d=“+d1+“n“+“接受三个参数:空间距离 d=“+d2 );System.exit(0);【例3-6】 计算长方体的体积。/* 构造长方体 */ class Box double width, height
5、, depth; Box() width = 10; height = 10; depth = 10; double volume() return width * height * depth; public class Example3_6 public static void main(String args) Box box = new Box(); double v; v = box.volume(); System.out.println(“长方体体积为: “ + v); 【例3-7】 使用缺省构造方法设计一个计算长方体体积的程序。/* 缺省构造方法构造长方体类 */ class
6、Box double width, height, depth; double volume() / 计算长方体体积 width = 10; height = 10; depth = 10;return width * height * depth; public class Example3_7 public static void main(String args) Box box = new Box();double v; v = box.volume(); System.out.println(“长方体体积为: “ + v); 【例3-8】 用带参数的成员方法计算长方体的体积。/* 用
7、带参数的成员方法计算长方体体积 */ import javax.swing.*;class Box double volume(double width, double height, double depth) return width * height * depth; public class Example3_8 public static void main(String args) double v;Box box = new Box(); v = box.volume(3, 4, 5); JOptionPane.showMessageDialog(null, “长方体体积“ +
8、v);System.exit(0); 【例3-9】 用对象作为方法的参数计算圆柱体的体积。/* 对象作为方法的参数使用 */class 圆面积 double r;圆面积(double r)this.r = r; double area() return 4.14 * r * r;class 圆柱体积圆柱体积(圆面积 a, double h)double v = a.area() * h;System.out.println(“圆柱体的体积“ + v);class Example3_9 public static void main(String args) 圆面积 A = new 圆面积(5)
9、;圆柱体积 c = new 圆柱体积(A, 10); 【例3-10】在下面的示例中,创建了一个A类和它的子类B类,我们通过子类B的实例对象调用从父类A继承的方法。/* 类的继承 */class A /A类为超类void prnt(int x,int y) int z=x+y; String s=“x+y=“;System.out.println(s+z); class B extends A / B类是A的子类 String str;void bb()System.out.println(str);public class Example3_10 public static void main
10、(String args)B b1 = new B(); /创建B类的实例对象b1b1.str = “Java学习“; b1.bb(); /bb()是实例对象b1的方法b1.prnt(3, 5); / prnt()是实例对象b1父类A的方法,b1继承了该方法 【例3-11】子类重写了父类的方法,则在运行时,系统调用子类的方法。/* 子类重写了父类的方法 */import java.io.*;class Avoid callme( ) System.out.println(“调用的是A类中的callme()方法“); class B extends Avoid callme( )System.o
11、ut.println(“调用的是B类中的callme()方法“); public class Example3_11public static void main(String args)A a=new B();a.callme( );【例3-12】说明静态方法的调用。/* 静态方法的调用 */class Bpublic static void p()System.out.println(“I am B!“);class Example3_12public static void main(String args) B.p(); /* 如果类B中的p()没有声明为static,则必须在Exam
12、ple3_12中对B进行实例化,否则编译不能通过。 class B public void p()System.out.println(“I am B!“);class Example3_12 public static void main(String args) B b=new B();b.p();*/【例3-13】实例成员和类成员的区别。class Memberstatic int classVar;int instanceVar;static void setClassVar(int i)classVar=i;/ instanceVar=i; / 类方法不能访问实例变 static i
13、nt getClassVar()return classVar;void setInstanceVar(int i)classVar=i; /实例方法不 访问类变 , 实例变 instanceVar=i;int getInstanceVar( ) return instanceVar;public class Example3_13public static void main(String args)Member m1=new Member();Member m2=new Member();m1.setClassVar(1);m2.setClassVar(2); System.out.pri
14、ntln(“m1.classVar=“+m1.getClassVar() +“m2.ClassVar=“+m2.getClassVar();m1.setInstanceVar(11); m2.setInstanceVar(22);System.out.println(“m1.InstanceVar=“+m1.getInstanceVar()+“ m2.InstanceVar=“+m2.getInstanceVar();【例3-14】/* 象类 */abstract class / 类为 象类public abstract String () ; class extends / 是 的子类 St
15、ring leaf;(String _leaf)this.leaf=_leaf; public String () return leaf; class extends / 是 的子类 String mouth;(String _mouth) this.mouth=_mouth; public String () return mouth; public class Example3_14 public static void main(String args)A = new (“ “); System.out.println(“ 的 :“+A. (); B = new (“ “);Syste
16、m.out.println(“ 的 :“+B. (); 【例3-15】设 编写一个超类Prnting, 中 了一个prnt()方法 子类继承,现 成接 ,子类实现该接 。/* 接 的使用设 编写一个超类Prnting, 中 了一个prnt()方法, 如下:class Prnting void prnt() System.out.println(“ 和 果 重 。“); 下面 成接 。*/ 一个类 成接 , class成interface, 有方法的 。interface Prnting void prnt(); public class Example3_15 implements Prnti
17、ng/实现接 ,重写prnt()方法 public void prnt() /currency1:public不能缺System.out.println(“ 重 。“);【例3-16】1. interface “ 2. 4. public void “空调();4. 5. interface 调fifl 6. 7. public void controlTemperature();8. 9. class 公 implements “ 10. 11. public void “空调() 12. 14. System.out.println(“公 :一/,不计算公 数“);14. 15. 16.
18、class implements “, 调fifl17. 18. public void “空调() 19. 20. System.out.println(“:1.60/公 ,3公 “);21. 22. public void controlTemperature()24. 24. System.out.println(“”了Hair空调“);25. 26. 27. class implements “,调fifl28. 29. public void “空调()30. 31. System.out.println(“ : ,/“);32. 34. public void controlTem
19、perature()34. 35. System.out.println(“”了中空调“);36. 37. 38. public class Example3_1639. 40. public static void main(String args)41. 42. 公 =new 公 ();44. =new ();44. =new ();45. .“空调();46. .“空调();47. .“空调();48. .controlTemperature();49. .controlTemperature();50. 51. 【例3-17】1. interface ShowMessage 2. 4.
20、 void 示(String s);4. 5. class TV implements ShowMessage 6. 7. public void 示(String s) 8. 9. System.out.println(s);10. 11. 12. class PC implements ShowMessage 14. 14. public void 示(String s) 15. 16. System.out.println(s);17. 18. 19. public class Example3_17 20. 21. public static void main(String args
21、)22. 24. ShowMessage sm; /声明接 变 。24. sm=new TV(); /接 变 中 对象的用。25. sm. 示(“长 “); /调用重写的接 方法 接 调 。26. sm=new PC(); /接 变 中 对象的用。27. sm. 示(“ 5008PC “); /接 调。28. 29. 【例3-18】创建一个 的 。1 设 运行 的子 abctest下有MyTest.class类, 程序为:package abc.test; / 的 public class MyTest public void prn()System.out.println(“ 的功能 “);2 在 的PackageTest.java中, 使用子 abctest下有MyTest.class类中的prn()方法,则 程序为:import abc.test.MyTest; /用 的 public class PackageTestpublic static void main(String args) MyTest mt = new Mytest();mt.prn();