my Array(imtn)。方法printA(inl】array)的功能是把参数数组各元素在屏幕的一行中输出。方法 m)的功能是生成元素值是50-10之间的随机值的imt型数组,数组元素的个数由参数n 指定。在应用程序的main()方法中,用命令行传入的整数作为my n)方法调用时的实 际参数,生成一个整型数组,并调用方法prtA()输出该数组的所有元素。 @程序 public class Class1 public static void main(Stringargs) if(args.length>0) n-Integer.parseInt(args[]) int[a=new int[n]: a=myArray(n); printA(a): cl{System.out.println("缺命令行参数"),System.exit(-l} static void printA(int[]x) for(inti=0;i<x.length;i++) System.out.print(x[]+""). System.outprintin()方 return; static int myArray(int k) intx]new int[k] for(int i=i<k ++ x[i]=50+(int)(Math.random()*50); return x; 练习3(3) 掌握:方法的重载。 L.请编写一个Applet,.其主类名为Appletl,其中包含两个同名方法arrayMin((),它们都只有一个参 数,其中一个arrayMin(()方法的参数为imt型数组,返回值类型为it型数:另一个arrayMin()方法 的参数为double型数组,返回值类型为double型数:这两个方法的功能均为返回参数数组元素的最 小值。通过paint()方法调用上述两个同名方法arrayMin(),求数组a(其元素的值依次为26,82,3, 65,18,9)和数组b(其元素的值依次为3.6,572,85,788)的最小元素的值并输出 @程序 import java.awt.*;
myArray(int n)。方法 printA(int[ ] array)的功能是把参数数组各元素在屏幕的一行中输出。方法 myArray(int n)的功能是生成元素值是 50~100 之间的随机值的 int 型数组,数组元素的个数由参数 n 指定。在应用程序的 main( )方法中,用命令行传入的整数作为 myArray(int n) 方法调用时的实 际参数,生成一个整型数组,并调用方法 printA( )输出该数组的所有元素。 @程序 public class Class1 { static int n; public static void main (String[] args) { if(args.length > 0) { n=Integer.parseInt(args[0]); int[ ] a=new int[n]; a=myArray(n); printA(a); } else { System.out.println("缺命令行参数!"); System.exit(-1); } } static void printA(int[ ] x) { for(int i=0; i< x.length; i++) System.out.print(x[i]+" "); System.out.println( ); return; } static int[ ] myArray(int k) { int x[ ]=new int[k]; for(int i=0; i< k; i++) x[i]=50+(int)(Math.random( )*50); return x; } } 练习 3(3) 掌握: 方法的重载。 1. 请编写一个 Applet,其主类名为 Applet1,其中包含两个同名方法 arrayMin( ),它们都只有一个参 数,其中一个 arrayMin( )方法的参数为 int 型数组,返回值类型为 int 型数;另一个 arrayMin( )方法 的参数为 double 型数组,返回值类型为 double 型数;这两个方法的功能均为返回参数数组元素的最 小值。通过 paint( )方法调用上述两个同名方法 arrayMin( ),求数组 a (其元素的值依次为 26,82,-3, 65,18,9)和数组 b (其元素的值依次为 3.6,57.2,8.5,78.8) 的最小元素的值并输出。 @程序 import java.awt.*;
import java applet.* public class Applet1 extends Apple inta={26,82,-3,65.189: double b1=f3.6.57.2.8.5.78.8 public void paint(Graphics g) gdrawString("数组a的最小元素的值为:"+arrayMin(a),20,20) g.drawString("数组b的最小元素的值为:"+arrayMin(b),20,40): int arrayMin(int x[1) int y=x[0] for(int i=1:i<x.length;i++) if(y>x[i])y=x[i]: return y; double arrayMin(doublex[) double y=x] for(int i=1:i<x.length:i++) if(y>x[i])y=x[i]: return y; 2.请编写一个A ,其主类名为Class1,其中包含三个同名方法mySqrt(0,它们都只有一个 参数,参数的类型分别为int型、oat型和double型,它们的功能均为返回参数的平方根,返回值 的类型与参数的类型相同。在主方法mai()中调用上面的三个方法,这三个方法的参数均来自命令 行参数,最后将计算结果输出在屏幕上。 @程序 static int n: public static void main(String]args) if(args.length>=3) int n; float f. double d: n-=Integer.parseInt(args[]) f=Float.valueOf(args[1]).float Value(). d=Double.valueOf(args[2]).doubleValue(); System.out.printn(n+"的平方根为:"+mySqrt(n): System.out.printn(f+"的平方根为:"+mySqrt(f)以 System.out.printin(d+"的平方根为:"+mySqrt(d) } else {System.out.printn("缺命令行参数I"方System.exit(-l片}
import java.applet.*; public class Applet1 extends Applet { int a[ ]={26,82,-3,65,18,9}; double b[ ]={3.6,57.2,8.5,78.8}; public void paint(Graphics g) { g.drawString("数组 a 的最小元素的值为: "+ arrayMin(a),20,20); g.drawString("数组 b 的最小元素的值为: "+ arrayMin(b),20,40); } int arrayMin(int x[ ]) { int y=x[0]; for(int i=1; i< x.length; i++) if(y>x[i]) y=x[i]; return y; } double arrayMin(double x[ ]) { double y=x[0]; for(int i=1; i< x.length; i++) if(y>x[i]) y=x[i]; return y; } } 2. 请编写一个 Application,其主类名为 Class1,其中包含三个同名方法 mySqrt(),它们都只有一个 参数,参数的类型分别为 int 型、float 型和 double 型,它们的功能均为返回参数的平方根,返回值 的类型与参数的类型相同。在主方法 main( ) 中调用上面的三个方法,这三个方法的参数均来自命令 行参数,最后将计算结果输出在屏幕上。 @程序 public class Class1 { static int n; public static void main (String[] args) { if(args.length >= 3) { int n; float f; double d; n=Integer.parseInt(args[0]); f=Float.valueOf(args[1]).floatValue( ); d=Double.valueOf(args[2]).doubleValue( ); System.out.println(n+"的平方根为: "+mySqrt(n)); System.out.println(f+"的平方根为: "+mySqrt(f)); System.out.println(d+"的平方根为: "+mySqrt(d)); } else { System.out.println("缺命令行参数!"); System.exit(-1); }
static int mySqrt(int x) return(int)Math.sqrt(x); static float mySqrt(float x) return(float)Math.sqrt(x);) static double mySqrt(double x) return Math.sqrt(x): 请编写一个Aple,其主类名为Aple1,其中包含三个同名方法am byte y)d0o x,double y小addM(double x.double y),它们的功能均为求两个参数之和,返回值类型与第一个 参数的类型相同。在主类Applet1中,通过pain()方法调用上面的三个方法,实现12345+67、 89.6f+6.9e8、0.987654321+32.1,然后将计算结果输出,输出位置分别为坐标(20,40)、(20,60) (20.80). @程序 import java.awt.◆ import java applet.◆; public class Appletl extends Applet public void paint(Graphicsg) g.drawString("12345+67="+addM12345,67),20,40, g.drawString"89.6+6.9e-8="+addM(89.6f.6.9e-8).20.60: gdrawString("0.987654321+32.1="+addM0.987654321,32.1),20,80 int addM(int x.byte y) return x+y: float addM(float x,double y) return (float)(x+y); double addM(double x.double y) return x+y; 练习4(3) 掌握:(山)类的继承 (2)在子类中如何操作父类中的私有属性 (③)变量的作用域 L.请编写Applet,它由三个类定义组成,类名分别为A、B和AppletI:类A中定义了一个类型为 loat的属性f和一个类型为byte的私有屈性k:类A还定义了一个带有一个参数的构造函数(用于 初始化f),和两个公共方法sek()和gek()其中etk()的功能为给私有属性k赋值,getk()的功能为 返回私有属性k的信 类B是类A的子类, 其中仅定义了一个类型为boolean的属性b 一个带两 个参数的构造函数(用来为父类中的变量f和本类的变量b做初始化)。主类Ap即l1中定义了一个 初值为123的it型变量n和一个B类的对象x,请通过创建x为上述f和b赋值(f的值为68.963,b 的值为tue,在paintO方法中,给A类的私有属性k赋值66,然后显示f,k,b,n的值
} static int mySqrt(int x) { return (int)Math.sqrt(x); } static float mySqrt(float x) { return (float)Math.sqrt(x); } static double mySqrt(double x) { return Math.sqrt(x); } } 3. 请编写一个 Applet,其主类名为 Applet1,其中包含三个同名方法 addM(int x, byte y)、addM(float x,double y)、addM(double x,double y),它们的功能均为求两个参数之和,返回值类型与第一个 参数的类型相同。在主类 Applet1 中,通过 paint( )方法调用上面的三个方法,实现 12345+67、 89.6f+6.9e-8、0.987654321+32.1,然后将计算结果输出,输出位置分别为坐标(20,40)、(20,60)、 (20,80)。 @程序 import java.awt.*; import java.applet.*; public class Applet1 extends Applet { public void paint(Graphics g) { g.drawString("12345+67 = "+ addM(12345,67),20,40); g.drawString("89.6+6.9e-8 = "+ addM(89.6f,6.9e-8),20,60); g.drawString("0.987654321+32.1 = "+ addM(0.987654321,32.1),20,80); } int addM(int x, byte y) { return x+y; } float addM(float x,double y) { return (float)(x+y); } double addM(double x,double y) { return x+y; } } 练习 4(3) 掌握: (1) 类的继承。 (2) 在子类中如何操作父类中的私有属性。 (3) 变量的作用域。 1. 请编写 Applet,它由三个类定义组成,类名分别为 A、B 和 Applet1:类 A 中定义了一个类型为 float 的属性 f 和一个类型为 byte 的私有属性 k;类 A 还定义了一个带有一个参数的构造函数(用于 初始化 f),和两个公共方法 setk( )和 getk( ), 其中 setk( ) 的功能为给私有属性 k 赋值,getk( )的功能为 返回私有属性 k 的值。类 B 是类 A 的子类,其中仅定义了一个类型为 boolean 的属性 b 和一个带两 个参数的构造函数(用来为父类中的变量 f 和本类的变量 b 做初始化)。主类 Applet1 中定义了一个 初值为 123 的 int 型变量 n 和一个 B 类的对象 x,请通过创建 x 为上述 f 和 b 赋值(f 的值为 68.963,b 的值为 true); 在 paint()方法中, 给 A 类的私有属性 k 赋值 66,然后显示 f,k,b,n 的值
@程序 import java.awt..◆ import ja va appl public class Applet extends Applet int n=123: x.setk((byte)66) g.drawString("f="+x.f+"k="+x.getk()+"b="+x.b+"n="+n,10,20); float f. private byte k A(float fl)f=fl: publie byte getk() return k; public void setk(byte m)k=m; class B extends A boolean b B(float ff,boolean bb)super(ff);b=bb; 2.请按如下要求定义两个类A和B,类A中定义一个double类型变量d(将其赋值为8.8)和一个 方法intd(double dd),该方法的功能是返回参数dd的整数部分。类B是类A的子类,其中定义 -个1oat类型变量f(将其赋值为18.3)和一个方法int f(float ff),该方法的功能是返回参数m 的整数部分。编写一个Application,创建类B的对象b,在主方法main()中先显示d和f的值,然 后分别以d和f为实在参数调用intd()方法和int)方法,并将它们的返回值显示在屏幕上。 @程序 public class Classl public static void main(String]args) Bb=new B() System.out.println("d="+b.d+f="+b.f); System.out.printn("d的整数部分="+b.int_d(b.d+”f的整数部分="+b.int_fb.f方 double d=8.8; int int_d(double dd)return (int)dd;)
@程序 import java.awt.*; import java.applet.*; public class Applet1 extends Applet { int n=123; B x=new B(68.963f,true); public void paint(Graphics g) { x.setk((byte)66); g.drawString("f="+x.f+" k="+x.getk( )+" b="+x.b+" n="+n,10,20); } } class A { float f; private byte k; A(float f1){ f=f1; } public byte getk( ){ return k; } public void setk(byte m){ k=m; } } class B extends A { boolean b; B(float ff,boolean bb){ super(ff); b=bb; } } 2. 请按如下要求定义两个类 A 和 B, 类 A 中定义一个 double 类型变量 d(将其赋值为 8.8)和一个 方法 int_d(double dd ),该方法的功能是返回参数 dd 的整数部分。类 B 是类 A 的子类,其中定义 一个 float 类型变量 f(将其赋值为 18.3)和一个方法 int_f(float ff ),该方法的功能是返回参数 ff 的整数部分。编写一个 Application,创建类 B 的对象 b,在主方法 main( ) 中先显示 d 和 f 的值,然 后分别以 d 和 f 为实在参数调用 int_d( )方法和 int_f( )方法,并将它们的返回值显示在屏幕上。 @程序 public class Class1 { public static void main (String[] args) { B b=new B( ); System.out.println("d="+b.d+" f="+b.f); System.out.println("d 的整数部分="+b.int_d(b.d)+" f 的整数部分="+b.int_f(b.f)); } } class A { double d=8.8; int int_d(double dd){ return (int)dd; } }
class B extends A float f=18.3f, intint _f(float ff)return (int)ff. 3.请编写一个Application ,在其主米中定义一个t类型变量;,并今其初估为123:主类中还 定义了m1和 m2)等两个方法。 个int类型变量 先输出类变量i的值,然后使类变量i增加值6后再次输出其值:主方法m()的功能是先输 出它的局部变量i的值,然后先后调用ml()和m2()实现它们的功能。 @程序 ublic class Classl static int i=123 public static void main(String[]args) int i=456 System..outprint(main()中的ie+i ml() m2(方 static void ml() int i=789; System.out.println("ml()中的i="+i: static void m2() System.(类变量i"+i) 1+=6, System.out.printn("加6后的类变量i="+i, 练习5(5) 掌握:(1)方法的参数为类对象、方法的返回值为类对象。 (2)方法覆盖:在子类中调用被子类覆盖了的父类的同名方法, (3)属性隐戴:在子类中访问被子类隐撒了的父类的同名属性。 (4)构造函数的重载。 L.请编写一个Applet,.它由两个类定义组成:类A中定义了short型变量i和char型变量ch,及 个带两个参数的构造函数(为变量i和ch做初始化)。主类Appletl中创建了两个A类的对象xI(行 的初始值为12,ch的初始值为6)和x2(1的初始值为62,h的初始值为65),还定义了一个方法 b,b的参数和返回值均为A类的对象,功能为将参数对象的属性i加3,属性山也加3,使返回结
class B extends A { float f=18.3f; int int_f(float ff){ return (int)ff; } } 3. 请编写一个 Application ,在其主类中定义一个 int 类型变量 i ,并令其初值为 123 ;主类中还 定义了 m1( )和 m2( )等两个方法。在主方法 main( ) 和方法 m1( )中也各定义一个 int 类型变量 i , 它们的初值分别为 456 和 789 ;方法 m1( )的功能是输出它的局部变量 i 的值;方法 m2( )的功能是 先输出类变量 i 的值 ,然后使类变量 i 增加值 6 后再次输出其值 ;主方法 main( ) 的功能是先输 出它的局部变量 i 的值,然后先后调用 m1( )和 m2( )实现它们的功能。 @程序 public class Class1 { static int i=123; public static void main (String[] args) { int i=456; System.out.println("main( ) 中的 i="+i); m1( ); m2( ); } static void m1( ) { int i=789; System.out.println("m1( ) 中的 i="+i); } static void m2( ) { System.out.println("类变量 i="+i); i+=6; System.out.println("加 6 后的类变量 i="+i); } } 练习 5(5) 掌握:(1)方法的参数为类对象、方法的返回值为类对象。 (2)方法覆盖:在子类中调用被子类覆盖了的父类的同名方法。 (3)属性隐藏:在子类中访问被子类隐藏了的父类的同名属性。 (4)构造函数的重载。 1. 请编写一个 Applet,它由两个类定义组成:类 A 中定义了 short 型变量 i 和 char 型变量 ch,及一 个带两个参数的构造函数(为变量 i 和 ch 做初始化)。主类 Applet1 中创建了两个 A 类的对象 x1(i 的初始值为 12,ch 的初始值为’6’)和 x2(i 的初始值为 62,ch 的初始值为 65),还定义了一个方法 b,b 的参数和返回值均为 A 类的对象,功能为将参数对象的属性 i 加 3,属性 ch 也加 3,使返回结