●回复"每日一练"获取以前的题目!
●【新】Android视频更新了!(回复【安卓视频】获取下载链接)
●【新】Ajax知识点视频更新了!(回复【学习视频】获取下载链接)
●【新】HTML5知识点视频更新了!(回复【前端资料】获取下载链接)
●答案公布时间:为每期发布题目的第二天
★【新】回复“测试题”获取昨天发布的软件工程师初级阶段测试题答案
★【新】回复“学习资料”获取java学习电子文档
★【新】需要求职简历模板的可以加小编微信xxf960513
聊天系统
●我希望大家积极参与答题!有什么不懂可以加小编微信进行讨论
★珍惜每一天,拼搏每一天,专心每一天,成功每一天
如果你是初学者,或者是自学者!你可以加小编微信!小编可以给你建议以及给你提供学习资料!你在学习上有什么问题都可以咨询小编!小编都会为你解答!注:本公众号纯属个人公众号!不存在任何培训机构招生信息
每日一句
学的到东西的事情是锻炼,学不到的是磨练。
点击右下角的“阅读原文”查看以前的所有练习题目以及答案
本期题目:
(单选题)1、一个类可以有多个不同名的构造函数 。( )
A 正确
B 错误
(不定项选择题) 2、关于HashMap和Hashtable正确的说法有()1/1
A 都实现了Map接口
B Hashtable类不是同步的,而HashMap类是同步的
C Hashtable不允许null键或值
D HashMap不允许null或值
(单选题)3、下列关于修饰符混用的说法,错误的是( )
A abstract不能与final并列修饰同一个类
B abstract类中不应该有private的成员
C abstract方法必须在abstract类或接口中
D staic方法中能处理非static的属性
(单选题)4、下列代码的执行结果是()
public class Test {
public static int a = 1;
public static void main(String [ ] args) {
int a = 10;
a++; Test.a++;
Test t=new Test();
System.out.println("a=" + a + " t.a=" + t.a);
}
}
A a=10 t.a=3
B a=11 t.a=2
C a=12 t.a=1
D a=11 t.a=1
(单选题) 5、在异常处理中,如释放资源,关闭数据库、关闭文件应由()语句来完成。
A try子句
B catch子句
C finally子句
D throw子句
不管你会不会!小编都希望大家积极【留言】参与答题!小编才可根据大家的学习情况去出题!让大家争取到最大的进步!(转发给身边需要的朋友!)
上期答案:
(单选题)1、对于如下代码段可以放入到横线位置,使程序正确编译运行,而且不产生错误的选项是( )
class A{
public A foo(){return this;}
}
class B extends A{
public A foo(){
return this;
}
}
class C extends B
{
_______
}
A public void foo(){}
B public int foo(){return 1;}
C public A foo(B b){return b;}
D public A foo(){return A;}
正确答案是:C
复习一下子类方法重写父类方法遵循“两同两小一大”的规则
子类覆盖父类要遵循“两同两小一大”
“两同”即方法名相同,形参列表相同
“两小”指的是子类方法返回值类型应比父类方法返回值类型更小或相等,子类方法声明抛出的异常类应比父类方法声明抛出的异常类更小或相等。
(注:看到有网友有这样的疑问,父类方法返回值是double,子类修改成int为什么不行呢?
这是因为返回值类型更大或者更小,是对于同一类型而言的。也就是说,返回值的类型需要有继承关系才去考虑大小这个概念。类型不同,肯定不是方法重写)
“一大”指的是子类方法的访问权限应比父类方法的访问权限更大或相等。
注意:覆盖方法和被覆盖方法要么都是类方法,要么都是实例方法,不能一个是类方法一个是实例方法,否则编译出错。
所以,根据这个原理,再来分析上面这道题。
A.public void foo(){}
返回值类型与父类不一致,所以不可能是方法的重写。又因为方法名相同,那么只能是方法重载,而方法重载有需要满足三个条件:形参个数、顺序、类型必须有一者不同,A选项都不满足,错
B.public int foo(){return 1;}
与A选项一样
C.public A foo(B b){return b;}
返回值类型与父类相同,但由于参数列表不同,所以是对父类方法的重载
D.public A foo(){return A;} 语法错误
(单选题)2、要表示10个学生的成绩,下列声明并初始化数组正确的是()
A int[] score=new int[ ]
B int score[10]
C int score[]=new int[9]
D int score[]=new int[10]
正确答案是:D
解析:
以下两种写法都可以:
int score[] = new int[10];
int[] score = new int[10];
注意:数组的下标是从0开始 所以第一个学生的成绩则是这样表示score[0]
(单选题)3、关于下面代码 int[] x=new int[25]; 描述正确的是()
A x[25]存放了数据“\0”。
B x[24] 存放了数据“\0”。
C 若访问x[25],程序将抛出异常。
D x[1]访问此数组的第一个元素。
正确答案是:C
解析:
A:不存在x[25] 索引从0开始到length-1 B:x[24] 存的是默认值0(java中没有'\0'这一说) C:超出内存正确 D:第二元素
(单选题) 4、已知 声明并初始化二维数组 int a[ ][ ]={{1,2},{3,4},{5,6}} ,则 a[1][1] 的值为()
A 1
B 2
C 4
D 5
正确答案是:C
解析:
二维数组: 0 1
0 {1,2}
1 {3,4}
2 {5,6} 所以a[1][1]=4;
(单选题)5、面向对象程序设计语言的三个基本特征是?( )
A 封装、接口和多态
B 继承、接口和动态
C 跨平台、接口和动态
D 封装、继承和多态
正确答案是:D
解析:
封装:访问权限继承:子父类之间属性方法的访问多态:同一个方法名的不同功能
读者可在右下角的留言留下你的答案以及理由!
一张图诠释你做一个合格的程序员必备的知识点