江苏开放大学JAVA程
什么是重载?什么是覆盖?它们二者之间有怎样的区别与联系?
答案是:1)重载属于水平关系,也即同一个类中方法之间的关系;覆盖属于垂直关系,是父类和子类之间的关系。 2)重载是多个方法之间的关系;覆盖只能由一对方法或者只由一个方法产生关系。 3)重载要求参数列表可以是不同的;覆盖要求参数列表必须相同。 1)重载属于水平关系,也即同一个类中方法之间的关系;覆盖属于垂直关系,是父类和子类之间的关系。   2)重载是多个方法之间的关系;覆盖只能由一对方法或者只由一个方法产生关系。   3)重载要求参数列表可以是不同的;覆盖要求参数列表必须相同。   4)重载关系是根据调用时的实参表与形参表来选择方法体的;而覆盖关系中,调用方法体时根据对象的类型(对象对应存储空间类型)来决定的。
接口和抽象类的用法区别是什么?
答案是:接口用于规范,抽象类用于共性。接口中只能声明方法,属性,事件,索引器。而抽象类中可以有方法的实现,也可以定义非静态的类变量。抽象类是类,所以只能被单继承,但是接口却可以一次实现多个。抽象类可以提供某些方法的部分实现,接口不可以.抽象类的实例是它的子类给出的。接口的实例是实现接口的类给出的。在抽象类中加入一个方法,那么它的子类就同时有了这个方法。而在接口中加入新的方法,那么实现它的类就要重新编写(这就是为什么说接口是一个类的规范了)。接口成员被定义为公共的,但抽象类的成员也可以是私有的、受保护的、内部的或受保护的内部成员(其中受保护的内部成员只能在应用程序的代码或派生类中访问)。此外接口不能包含字段、构造函数、析构函数、静态成员或常量。
编写一个人类Person,其中包含姓名、性别和年龄的属性,包含构造方法以及显示姓名、性别和年龄的方法。再编写一个学生类Student,它继承Person类,其中包含学号属性,包含构造方法以及显示学号的方法。最后编写一个主类X5_3_5,包含
答案是:public class X5_3_5 { publicstatic void main(String[] args) { Students1=new Student("Zhangsan","Male",20,"102A"); Students2=new Student("Lisi","Female",18,"108S"); s1.show(); s1.showID(); s2.show(); s2.showID(); } } class Person{ Stringname; Stringsex; int age; publicPerson(String n,String s,int a){ name =n; sex =s; age =a; } voidshow(){ System.out.println("name:"+name); System.out.println("sex:"+sex); System.out.println("age:"+age); } } class Student extends Person{ StringsID; publicStudent(String n,String s,int a,String sid){ super(n,s,a); sID =sid; } voidshowID(){ System.out.println("sID:"+sID); } } 【运行结果】 name: Zhangsan sex: Male age: 20 sID: 102A name: Lisi sex: Female age: 18 sID: 108S
编一个程序,程序中包含以下内容: 一个圆类(Circle),包含: 属性:圆半径radius;常量:PI。 方法:构造方法;求面积方法area();求周长方法:perimeter()。 主类(X4_3
答案是:publicclassX3{publicstaticvoidmain(String[]args){Circlec1=newCircle(100);Circlec2=newCircle(200);System.out.println("c1.area()=" c1.area() "\tc1.perimenter()=" c1.perimeter());System.out.println("c2.area()=" c2.area() "\tc2.perimenter()=" c2.perimeter());}}classCircle{intradius;finaldoublePI=3.14;Circle(intr){radius=r;}doublearea(){returnPI*radius*radius;}doubleperimeter(){return2*PI*radius;}}[运行结果]c1.area()=31400.0c1.perimenter()=628.0c2.area()=125600.0c2.perimenter()=1256.0
不允许作为类及类成员的访问控制符是( ) Apublic Bprivate Cstatic Dprotected
答案是:C
关于super的说法正确的是( )。 A是指当前对象的内存地址 B是指当前对象的父类对象的内存地址 C是指当前对象的父类 D可以用在main()方法中
答案是:B
有关类的说法,正确的是( )。 A类具有封装性,所以类的数据是不能被访问的 B类具有封装性,但可以通过类的公共接口访问类中的数据 C声明一个类时,必须使用public修饰符 D每个类中必须有main方法,否则程序无法运行
答案是:B
将类的成员的访问权限设置为默认的,则该成员被( ) A同一包中的类访问 B其他包中的类访问 C所有的类访问 D所有的类的子类访问
答案是:A
以下不是Object类的方法是( )。 Aclone() Bfinalize() CtoString() DhasNext()
答案是:D
以下对封装描述正确的是( )。 A只能对一个类中的方法进行封装,不能对属性进行封装 B如果子类继承了父类,对于弗雷中进行封装的方法,子类仍可直接调用 C封装的意义不大,因此在编码时尽量不要使用 D封装的主要作用在于对外隐藏内部实现细
答案是:D
下面的java代码运行结果是( )。 import java.io.*; public class B{ public static void main(String [] args){ int i =12; System.out.prin
答案是:C
构造函数何时会被调用?( ) A创建对象时 B可以出现在非抽象类中 C是没有方法体的方法 D抽象类中的方法都是抽象方法
答案是:A
Java语言中,String str=”123456789”,System.out.println(str.indexOf(“5”)),输出结果是( )。 A6.0 B5.0 C4.0 D3.0
答案是:C
下面给定的代码, Public static void main (String [] args){ System.out.print(“Hello”+args[1]); } 从命令行中传参:people world nation ,该程序
答案是:D
下面说法不正确的是( )。 A 抽象类既可以做父类,也可以做子类 B abstract和final能同时修饰一个类 C 抽象类中可以没有抽象方法,有抽象方法的类一定是抽象类或接口 D 声明为f
答案是:B
如果局部变量和成员变量同名,如何在局部变量作用域内引用成员变量?( ) A 不能引用,必须改名,使它们的名称不相同 B 在成员变量前加this,使用this访问该成员变量 C 在成员变量前加super,使用supe
答案是:B
定义外部类的类头时,不可用的关键字是( )。 A public B final C protected D abstract
答案是:C
一个类实现接口的情况是( )。 A 一次可以实现多个接口 B 一次只能实现一个接口 C 不能实现接口 D 不一定
答案是:A
下列程序的运行结果是( )。 public class X5_1_2 extends x{ int ab(){ static int aa=10; aa++; System.out.println(aa
答案是:A
Java语言接口间的继承关系是( )。 A 单继承 B 多重继承 C 不能继承 D 不能继承
答案是:B
Java语言类间的继承关系是( ) A 单继承 B 多重继承 C 不能继承 D 不一定
答案是:A
区分类中重载方法的依据是( ) A 形参列表的类型和顺序 B 不同的形参名称 C 返回值的类型不同 D 访问权限不同
答案是:A
下面关于接口的说法中不正确的是( )。 A 接口中所有的方法都是抽象的 B 接口中所有的方法都是public访问权限 C 子接口继承父接口所用的关键字是implements D 接口是Java中的特殊类,包
答案是:C
已知有下面类的说明: public class X5_1_1 extends x{ private float f =10.6f; int i=16; static int si=10; public stat
答案是:A
目前为: 1/1 页  首页   上页 下页 尾页