JAVA笔试宝典百题
- 格式:doc
- 大小:117.50 KB
- 文档页数:21
2020年JAVA程序员笔试面试题库300题[含答案]一、简答题1.关于readLine() 方法,一下说法正确的是?A. 该方法抛出IOException异常,调用该方法应该try …catch…B. 如果读到文件的末尾,该方法返回的结果为nullC. readLine()每次读取一行数据D. BufferReader类的对象可以调用该方法答案:ABCD2.方法中的局部变量何时分配内存答案:在方法被调用时、静态变量在类被加载时分配内存3.J2EE描述答案:"J2EE Java2平台企业版(Java 2 Platform,Enterprise Edition)J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,,企业内部或外部难以互通的窘境。
4.转发HTTP请求的两个方法 respsonse.sendDirect 和 RequestDispatcher.forward 的区别答案:RequestDispatcher.forward()方法和HttpServletResponse.sendRedirect()方法的区别是:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。
这样,从浏览器的地址栏中可以看到跳转后的链接地址。
所以,前者更加高效,在前者可以满足需要时,尽量使用Request Dispatcher.forward()方法,并且,这样也有助于隐藏实际的链接。
在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用HttpServletResponse.sendRequest()方法。
2020年JAVA程序员笔试面试题库300题[含答案]一、简答题1.关系数据库中,典型的实体关系模型有三个要素?答案:数据结构、关系操作、完整性约束2.面向对象的特征答案:(抽象、继承、多态、封装)3."int k=0;for(int i=5;i>0&k<10;i--){k+=i;}最后k的值是多少?答案://k=124.方法中的局部变量何时分配内存答案:在方法被调用时、静态变量在类被加载时分配内存5.String s1=”Hello”表达式s1==”Hello”返回true or false答案:TRUE6.将两个表连接在一起时,下面那一项通常是另外一个表的主键A. 外键B. 总控键C. 重复的组D. 主键答案:A7.EJB2.0 中定义了几种Enterprise Bean答案:Session bean, entity bean, message driven bean8.以下标识符中()是不合法的A. 1sB. $1C. $1D. BigM答案:A9.下面哪个是合法的布尔值A. “false”B. falseC. 10答案:B10.下面的异常处理说明正确的是( )A. try块只能使用一个catch子句。
B. try块必须同时与catch子句和finally子句一起使用。
C. try块不能单独使用。
D. try块中如果执行了return 语句,则其finally子句不能执行答案:C11.System同时包含三个预定义的流变量,分别是答案:In out err12.定义字符串:String str =Abcddefg”; 则str.substring(1,4).indexOf(“d”) 的结果是答案:213.算法的时间复杂度是指:答案:时间复杂度是度量算法执行的时间长短。
随着模块n的增大,算法执行的时间的增长率和f(n)的增长率成正比,所以f(n)越小,算法的时间复杂度越低,算法的效率越高。
Java程序设计总复习题1、编写一个Java程序在屏幕上输出“你好!”。
(p13,例1-1)//programme name Helloworld.javapublic class Helloworld {public static void main(String args[]) {System.out.print ("你好!" );}}2. 编写一个Java程序,用if-else语句判断某年份是否为闰年。
// Programme Name LeapYear.javapublic class LeapYear{public static void main(String args[]){int year=2010;if(args.length!=0)year=Integer.parseInt(args[0]);if((year%4==0 && year%100!=0)||(year%400==0))System.out.println(year+" 年是闰年。
");elseSystem.out.println(year+" 年不是闰年。
");}}//if-else语句3、编写一个Java程序在屏幕上输出1!+2!+3!+……+10!的和。
(p64,例2-2)// programme name ForTest.javapublic class ForTest {public static void main( String args[] ) {int i,j,mul,sum=0;for(i=1;i<=10;i++) {mul=1;for(j=1,j<=i;j++) {mul=mul*j;}sum=sum+mul;public class Factorial { //下面的这个方法利用递归的方法求阶乘public intgetFac(int m) { if(m==1) { return 1; } else { return m*getFac(m-1); } } public static void main(String args[]) { Factorial fac=new Factorial(); //System.out.println(fac.getFac(4)); int sum=0; for(int i=1;i<=10;i++) { sum+=fac.getFac(i); } System.out.println("1到10的阶乘的和是:"+sum); } }}System.out.println(“1!+2!+3!+……+10!= ”+sum);}}4. (1)编写一个圆类Circle,该类拥有:①一个成员变量Radius(私有,浮点型);// 存放圆的半径;②两个构造方法Circle( ) // 将半径设为0Circle(double r ) //创建Circle对象时将半径初始化为r③三个成员方法double getArea( ) //获取圆的面积double getPerimeter( ) //获取圆的周长void show( ) //将圆的半径、周长、面积输出到屏幕(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少//这是一个菲波拉契数列问题publicclasslianxi01{publicstaticvoidmain(String[]args){intf1=1,f2=1,f,M=24;for(inti=3;i<=M;i++){f=f2;题目:判断101-200程序分析:判断素数的方法:用一个数分别去除3】是指一个三位数,其各位数字立方和等于该数本的三次方+5的三次方+3的三次方。
publicclasslianxi03{publicstaticvoidmain(String[]args){intb1,b2,b3;for(intm=101;m<1000;m++){b3=m/100;b2=m%100/10;b1=m%10;if((b3*b3*b3+b2*b2*b2+b1*b1*b1)==m){}}}【程序4】题目:将一个正整数分解质因数。
例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
importjava.util.*;publicclasslianxi04{publicstaticvoidmain(String[]args){题目:利用条件运算符的嵌套来完成此题:B表示,606】/**在循环中,只要除数不等于0,用较大数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环直到较小的数的值为0,返回较大的数,此数即为最大公约数,最小公倍数为两数之积除以最大公约数。
JA V A笔试题带答案一.选择题1.下面关于Java语言说法错误的是:()A.java语言是完全面向对象的B。
java语言支持多继承C.java语言支持多线程D。
java语言最早是为消费电子产品领域设计的2.下面标识符中正确的是:()A.*123 B。
12java C.continue D。
java$next3.下列关于注释语句的描述中,正确的一项是()A。
以//开始的是多行注释语句B。
以结束的是单行注释语句C。
以结束的是可以用于生成帮助文档的注释语句D。
以结束的是单行注释语句4.为了区分重载多态中同名的不同方法,要求()。
A)形式参数个数或者类型不同B)返回值类型不同C)调用时用类名或对象名做前缀D)形式参数名称不同5.下面定义数组的格式中正确的是:()A.int a[10] B。
int a=new int[10] C.int []a=new int[5] D.int a[]6.下面说法中不正确的是:()A.类是对象的抽象,对象是类的实例B。
类是组成java程序的最小的单位C.java语言支持多继承D。
java一个程序中只能有一个public类7.定义类时,不可能用到的保留字是()。
A)private B)classC)extends D)implements8.为AB 类的定义一个公共的构造函数,该方法头的形式为()A.void AB( ) B。
public void method( )C.public method ( ) D。
public AB( )9.下面说法中不正确的是:()A.java中一个类只允许实现一个接口B。
抽象类中允许有非抽象方法的存在C.类变量(实例变量)可以直接用类名调用D。
通过super可以调用基类的构造函数10.容器JFrame 默认使用的布局编辑策略是()A.BorderLayout B。
FlowLayout C。
GridLayout D。
CardLayout11.以下哪个表达式是不合法的()A.String x=”Hello”; int y=9; x+=y;B.String x=”Hello”; int y=9; if(x= =y) { }C.String x=”Hello”; int y=9; x=x+y;D.String x=null; int y=(x!=null)&&(x.length()>0)12.class person{public int addvalue(int a,int b){int s;s=a+b;return s;}}class child extends parent{}若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue 方法头的描述哪个是正确的:A)int addvalue(int I,int j) B)void addvalue()C)void addvalue(double i) D)int addvalue(int a)13.下面程序在fun()方法当出现数组下标超过界限的情况下的输出结果是:()public void test(){try{fun();System.out.print(“情况1”);}catch(ArrayIndexOutOfBoundsException e){ System.out.print(“情况2”);}catch(Exception e){ System.out.print(“情况3”);}finally{ System.out.print(“finally”);}}A.情况1 B。
java基础笔试题及答案一、选择题1. 下列哪个关键字可以用来创建线程?A. classB. interfaceC. implementsD. extends答案:D2. Java中的“==”运算符用于比较什么?A. 引用是否相同B. 对象的内容C. 字符串的内容D. 整数的大小答案:A3. 在Java中,哪个类是所有类的根类?A. ObjectB. StringC. IntegerD. System答案:A4. 下列哪个方法用于获取对象的哈希码?A. equals()B. hashCode()C. toString()D. getClass()答案:B5. Java中,哪个关键字用于实现单例模式?A. privateB. publicC. staticD. final答案:C二、简答题1. 解释Java中的垃圾回收机制是什么?答案:Java中的垃圾回收机制是一种自动内存管理功能,它周期性地执行,以识别不再使用的对象,并释放这些对象占用的内存空间。
垃圾回收器会检查内存中的对象,并确定对象是否仍然被应用程序中的其他对象引用。
如果一个对象没有任何引用指向它,那么它就被认为是“垃圾”,垃圾回收器会回收其内存。
2. 什么是Java的异常处理机制?答案:Java的异常处理机制允许程序在发生错误时继续运行,而不是立即崩溃。
它通过使用try、catch、finally和throw关键字来实现。
try块用于捕获可能出现异常的代码,catch块用于处理这些异常,finally块用于执行无论是否发生异常都需要执行的代码,throw关键字用于手动抛出异常。
三、编程题1. 编写一个Java程序,实现一个简单的计算器,能够进行加、减、乘、除操作。
```javaimport java.util.Scanner;public class Calculator {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("请输入第一个数字:");double num1 = input.nextDouble();System.out.print("请输入第二个数字:");double num2 = input.nextDouble();System.out.print("请选择操作(+、-、*、/):"); char operation = input.next().charAt(0);double result;switch (operation) {case '+':result = num1 + num2;break;case '-':result = num1 - num2;break;case '*':result = num1 * num2;break;case '/':if (num2 != 0) {result = num1 / num2;} else {System.out.println("除数不能为0。
2020年JAVA程序员笔试面试题库300题[含答案]
一、简答题
1.关于MVC,下面说法正确的是:A. Servlet实现MVC的Model部分
B. JSP实现MVC的Control部分
C. EJB实现MVC的Model部分
D. HTTP实现MVC的View部分
答案:C
2.算法的时间复杂度是指:
答案:时间复杂度是度量算法执行的时间长短。
随着模块n的增大,算法执行的时间的增长率和f(n)的增长率成正比,所以f(n)越小,算法的时间复杂度越低,算法的效率越高。
3.单选题
答案:
4.一个正在执行的线程在遇到下列()情况时会暂时停止执行?A. 执行suspend被挂起;
B. 休眠;
C. 执行输入输出操作
D. 执行wait()方法。
答案:ABD
5.多选题:
答案:
6."下面语句输出的结果是什么?
int score = 9;
switch (score){
case 0:System.out.println();
default: System.out.println(""Error"");
case 3: System.out.println(""Good"");break;
case 2: System.out.println(""Best"");
}
A. Error Good Best
B. Error good
C. Error。
2020年JAVA程序员笔试面试题库300题[含答案]一、简答题1.1. 保证在java应用程序中,一个类Class只有一个实例存在该使用什么设计模式答案:单例2.EJB在WEBLOGIC中的部署文件答案:weblogic-ejb-jar.xml3.方法中的局部变量何时分配内存答案:在方法被调用时、静态变量在类被加载时分配内存4.J2EE描述答案:"J2EE Java2平台企业版(Java 2 Platform,Enterprise Edition)J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,,企业内部或外部难以互通的窘境。
5.下列关于java程序结果错误的是A. 源文件可以没有 import 语句B. Package语句必须放在源文件的第一句C. 一个源文件可以有多个类定义D. 一个源文件可以定义多个public类答案:D6.EJB2.0 中定义了几种Enterprise Bean答案:Session bean, entity bean, message driven bean7.J2EE的三层模型是什么?答案:Model View Controller8.以下的变量定义中,合法的语句是:A. double a=1+4e2.5;B. short do=15;C. int abc_21;D. float 1_variable=3.4;答案:9.算法的时间复杂度是指:答案:时间复杂度是度量算法执行的时间长短。
随着模块n的增大,算法执行的时间的增长率和f(n)的增长率成正比,所以f(n)越小,算法的时间复杂度越低,算法的效率越高。
java笔试题大全带答案一、选择题1.下列哪个选项是JAVA语言中的基本数据类型?A. IntegerB. BooleanC. StringD. Double答案:B. Boolean2.以下关于JAVA程序的描述中,错误的是:A. JAVA源程序文件的扩展名为.javaB. JAVA虚拟机是JAVA程序的运行环境C. JAVA程序由一个或多个类组成D. JAVA程序的入口函数是main函数答案:C. JAVA程序由一个或多个类组成(应为:JAVA程序由一个类组成)3.以下哪种循环结构可以根据循环条件决定是否执行循环体?A. for循环B. do-while循环C. while循环D. switch循环答案:C. while循环4.以下关于JAVA的面向对象特性的描述中,正确的是:A. 封装是指将数据和操作数据的方法绑定在一起,形成一个类B. 多态是指同一个方法可以根据对象的不同,展现出不同的行为C. 继承是指一个类可以派生出多个子类D. 抽象是指一个类具有实例化对象的能力答案:B. 多态是指同一个方法可以根据对象的不同,展现出不同的行为二、填空题1.下列代码的输出结果是______。
```javaint a = 5;int b = 2;System.out.println(a / b);```答案:22.以下关于JAVA异常处理的语句中,正确的是______。
A. tryB. exceptC. catchD. throw答案:C. catch3.以下哪个关键字声明的方法可以被子类重写?A. finalB. staticC. abstractD. private答案:C. abstract4.以下哪个关键字可以在子类中调用父类的同名方法?A. thisB. superC. extendsD. implements答案:B. super三、编程题请编写一个JAVA程序,实现以下功能:1. 定义一个名为Rectangle的类,包含如下属性和方法:- 属性:宽度(width)、高度(height)- 方法:计算矩形面积(getArea)、计算矩形周长(getPerimeter)2. 在main函数中创建一个Rectangle对象,并计算其面积和周长并打印输出。
JAVA笔试100试题1JAVA试题(100道)―――――――――――――――――――――――――――――――――――――― 题目1:下面不属于基本类型的是:c (选择1项) A) boolean B) long C) String D) byte题目2:d如下程序中:(1)public class CharToInt (2){(3)public static void main(String[] args) (4){ (5)int a,b=10; (6)char c='语'; (7)a=b+c; (8)System.out.println(\结果是:\(9)} (10)}下面的说法中正确的是:(选择1项)A) 程序运行到第6行会出现编译错误,因为c为char类型,不能把一个汉字赋给一个字符型。
B) 程序运行到第7行会出现编译错误,因为字符型与整型不能进行加法运算。
C) 程序能够正常编译和运行,但是不会输出任何结果。
D) 程序将字符型转换为unicode编码并和b的数值相加的和输出。
题目3:下面的说法中,错误的是:d(选择1项)A) 在Java中标志符可以是字母、下划线、数字或$符号。
B) 在Java中布尔类型不能和数字之间不能来回转换,即false和true不对应任何零或非零的值。
C) 双精度类型double比单精度类型float具有更高的精度和更大的表示范围,但float类型具有速度快、占用内存小的优点。
D) 在Java中布尔值可以用true或false来表示,但是同时也可以用1或0来表示。
题目5:b程序如下:class Test {public static void main(String[] args) { int i=1000; for(;;) { if(i999) { _______________ } } } }下面对程序的横线处填写不同语句的分析正确的是:(选择一项)A) 填充break 使程序能够有退出循环的可能性。
题目1:下面不属于基本类型的是:c (选择1项)A) booleanB) longC) StringD) byte题目2:d如下程序中:(1)public class CharToInt(2){(3)public static void main(String[] args)(4){(5)int a,b=10;(6)char c='语';(7)a=b+c;(8)System.out.println("结果是:"+a);(9)}(10)}下面的说法中正确的是:(选择1项)A) 程序运行到第6行会出现编译错误,因为c为char类型,不能把一个汉字赋给一个字符型。
B) 程序运行到第7行会出现编译错误,因为字符型与整型不能进行加法运算。
C) 程序能够正常编译和运行,但是不会输出任何结果。
D) 程序将字符型转换为unicode编码并和b的数值相加的和输出。
题目3:下面的说法中,错误的是:d(选择1项)A) 在Java中标志符可以是字母、下划线、数字或$符号。
B) 在Java中布尔类型不能和数字之间不能来回转换,即false和true不对应任何零或非零的值。
C) 双精度类型double比单精度类型float具有更高的精度和更大的表示范围,但float类型具有速度快、占用内存小的优点。
D) 在Java中布尔值可以用true或false来表示,但是同时也可以用1或0来表示。
题目5:b程序如下:class Test{public static void main(String[] args){int i=1000;for(;;){if(i>999){_______________}}}}下面对程序的横线处填写不同语句的分析正确的是:(选择一项)A) 填充break 使程序能够有退出循环的可能性。
B) 填充continue 将使程序成为死循环,永远无法退出循环。
C) 填充continue 使程序能够有退出循环的可能性。
D) 填充break 将使程序成为死循环,永远无法退出循环。
题目7:b下面的说法中错误的是:(选择一项)A) 类是描述了同一类对象具有的数据和行为。
Java语言中的类将这些数据和行为进行封装,形成了一种复合数据类型B) 在Java的类中可以有三类内容分别是数据的定义、基本输出语句、函数的定义。
C) Java中的封装就是将对象的数据和操作数据的方法相结合,通过方法将对象的数据和实现细节保护起来。
D) Java语言中的多态的含义可以表达为:对外一个接口,内部多种实现。
Java语言支持两种多态:运行时多态和编译时多态。
题目8:a程序如下:public class Demo extends Base{private int count;public Demo(){System.out.println("A Demo object has been created");}protected void addOne(){count++;}}有关类Demo,描述正确的是:(选择1项)A) 当创建一个Demo类的实例对象时,count的值为0。
B) 当创建一个Demo类的实例对象时,count的值是不确定的。
C) 超类对象中可以包含改变count 值的方法。
D) Demo的子类对象可以访问count。
题目9:a程序如下:class Test{private int day;private int month;public String getDate(){return day+"/"+month;}}class Test2{public static void main(String[] args){Test test=new Test();test.day=25;System.out.println(test.getDate());}}有关类的描述正确的是:(选择1项)A) 程序在编译时将出错。
在Test中的day为私有变量,所以类外无法访问。
B) 程序能通过编译,但是不能正常运行。
C) 程序能通过编译,运行时将打印出0/0,因为在Java中int型变量day和month默认为0。
D) 以上说法都不正确。
题目10:c下面关于继承的描述正确的一项是:(选择1项)A) 子类继承父类,那么子类将继承父类的所有内容包括构造方法。
B) 子类继承父类,那么子类可以重写父类的方法,但是一旦重写父类方法后,无法通过子类访问到父类的该方法。
C) 子类继承父类,如果父类中只有一个构造方法并且有参数,那么在子类的构造方法中必须先用super调用父类构造方法并传参。
D) 以上说法都不正确。
题目11:d程序如下:class Test{private int day;public int month;private Test(){System.out.println("I am Test");}private void print(){System.out.println("I am print in Test");}void showme(){print();}}class TestDemo{public static void main(String[] args){Test t=new Test()______________}}下面关于类描述错误的一项是:A) Test类的对象t不能直接访问print方法。
但是可以通过showme方法来间接调用print()方法。
B) Test类的对象t可以直接访问month变量,但是不能直接访问day变量,因为day为私有变量,只有类内可以访问。
C) 该程序能通过编译并运行,但是如果想得到输出“I am print in Test”的结果,需要在横线处填写t.showme()。
D) 该程序无法通过编译,因为在Test类中的构造方法被写成私有,那么Test t=new Test()将无法找到合适的构造方法。
题目12:a程序如下:class Test{private int day;private Test(int d){day=d;}private void print(){System.out.println("I am print in Test");}}class Test2 extends Test{Test(){__(1)__}void show(){(2)}}下面说法中正确的是:(选择1项)A) 如果想使程序能够正常运行,在(1)处必须填写super()方法,并且在super中传参给父类且同时该语句必须为Test()构造方法中的第一句。
B) 如果想使程序能够正常运行,在(1)处必须填写super()方法,但是该方法处于Test ()构造方法中的任何位置均可以。
C) 在show()方法中无法调用父类的print()方法。
D) 在show()方法中可以为day进行赋值,因为Test2继承了Test,则在Test2中也继承了父类的day变量。
题目13:下面哪个关键字,使类不能在被其他的类继承?c(选择1项)A) staticB) finallyC) finalD) instance题目14:a程序如下:String s1=new String("Hello");String s2=new String("there");String s3=new String();下面哪个是合法的操作符?(选择1项)A) s3=s1 + s2;B) s3=s1-s2;C) s3=s1 & s2;D) s3=s1 && s2题目15:b下列描述中错误的是:(选择1项)A) 在一个类的声明里声明的类,也叫做内部类或嵌套类,内部类可以作为外包类的一个成员使用,可以访问外包类的所有成员,包括私有成员。
B) 内部类的访问权限可以被定义为public、protected、private和default。
但是普通类只可以定义public和default两种访问权限。
C) 内部类的访问权限可以被定义为public、protected、private和default。
普通类也可以定义上面四种访问权限,但是通常我们只应用public和default两种访问权限。
题目16:c程序如下:abstract class MineBase{abstract void amethod();static int i;}public class Mine extends MineBase{public static void main(String argv[]){int[] ar = new int[5];for(i = 0;i < ar.length;i++)System.out.println(ar[i]);}}上面程序运行结果是:(选择1项)A) 打印5个0B) 编译出错,数组ar[]必须初始化C) 编译出错,Mine应声明为abstractD) 出现IndexOutOfBounds的异常。
题目17:c下面关于抽象类描述错误的是:(选择1项)A) 抽象类的关键字是abstract,在抽象类中可以定义变量和方法。
B) 抽象类中的方法如果可以有实现体,如果没有实现体,则该方法叫做抽象方法必须加关键字abstract修饰该方法。
C) 抽象类中至少需要有一个方法被定义为抽象方法,在该方法前加abstract,把该方法定义为抽象方法。
D) 抽象类中可以没有抽象方法,即所有的方法全部都有实现体。
但是依旧不能为抽象类定义对象。
题目18:b下面关键字中,如果同时出现时,必须放在第一位的是:(选择1项)A) interfaceB) packageC) importD) class题目19:d下面关于接口的描述错误的是:(选择1项)A) 定义接口的关键字为interface,接口中可以定义变量,但是必须同时为该变量赋值,接口中的方法默认全部为public类型。
B) 实现接口的关键字是implements,其后可以跟多个接口的名字,即实现多继承。
一个类实现了接口,那么必须实现接口中的所有方法。
C) 类实现了接口,必须实现接口中的所有方法,并且接口中的所有方法均为public,在实现类中不可以削弱接口中方法的访问权限。
D) 类实现了接口,实现接口中的方法时可以重写该方法的访问权限,但是无法改变接口中变量的值。
题目20:b下面关于接口和抽象类的说法中正确的是:A) 抽象类使类与类之间依旧具有父子联系,而接口一般只是定义了一种规范,并不使实现的接口之间具有父子关系。