日常Java练习题(每天进步一点点系列)

提示:好多小伙伴反映,直接看到答案不太好,那我把答案的颜色设置为透明,答案位置还是在题目后面,需要鼠标选中才能看见(操作如下图),同时为了手机端的小伙伴(手机端也可以长按选中查看),我还会把所有答案放到文章最下面,希望给每天进步一点点的小伙伴更好的体验。
在这里插入图片描述

每天进步一点点!

经过小伙伴的反馈,这一次的题目难度有所降低,大家应该都可以全做对。

1、设Tree为已定义的类名,下列语句能正确创建 Tree 对象的是 。
正确答案: B 你的答案: B (正确)
Tree t=new Tree;
Tree t=new Tree();
Tree t=Tree();
Tree t[ ]=new Tree[10];

题解:
需要对象,当然只需new一个了,还有别忘了括号。

2、区分类中重载方法的依据是( )。
正确答案: C 你的答案: C (正确)
不同的形参名称
不同的返回值类型
不同的形参列表
不同的访问权限

题解:
两个重载函数必须在下列一个或两个方面有所区别:
1、函数的参数个数不同。
2、函数的参数类型不同或者参数类型顺序不同

3、以下代码执行后输出结果为( )

public class ExceptionTest
{
    public void method()
    {
        try
        {
            System.out.println("进入到try块");
        }
        catch (Exception e)
        {
             System.out.println("异常发生了!");
        }
        finally
        {
            System.out.println("进入到finally块");
        }
            System.out.println("后续代码");
 }
     public static void main(String[] args)
     {
         ExceptionTest test = new ExceptionTest();
         test.method();
     }
 }

正确答案: B 你的答案: B (正确)
进入到try块 异常发生了! 进入到finally块 后续代码
进入到try块 进入到finally块 后续代码
进入到try块 后续代码
异常发生了! 后续代码

题解:
对于这题,没有异常,直接从try进入到finally,然后执行下面的后续代码。

4、现有一变量声明为 boolean aa; 下面赋值语句中正确的是 ( )
正确答案: A 你的答案: A (正确)
aa=false;
aa=False;
aa=“true”;
aa=0;

题解:
boolean的值要不是true,要不就是false。

5、以下关于 abstract 关键字的说法,正确的是()
正确答案: D 你的答案: D (正确)
abstract 可以与final 并列修饰同一个类。
abstract 类中不可以有private的成员。
abstract 类中必须全部是abstract方法。
abstract 方法必须在abstract类或接口中。

题解:
1、abstract类不能与final,static使用。final修饰方法,子类可以调用,但不能覆盖。
2、最好不要有private因为私有和抽象放在一起,子类如果想重写父类的私有方法根本继承不过来,也就无法重写
3、抽象类中可以有非抽象方法
4、抽象类中可以都是非抽象的,但是抽象方法一定要在类和接口中

6、一个类中,有两个方法名、形参类型、顺序和个数都完全一样,返回值不一样的方法,这种现象叫覆盖。( )
正确答案: B 你的答案: B (正确)
正确
错误

题解:
重载(overload)和重写(override)的区别: 重载就是同一个类中,有多个方法名相同,但参数列表不同(包括参数个数和参数类型),与返回值无关,与权限修饰符也无关。调用重载的方法时通过传递给它们不同的参数个数和参数类型来决定具体使用哪个方法,这叫多态。 重写就是子类重写基类的方法,方法名,参数列表和返回值都必须相同,否则就不是重写而是重载。权限修饰符不能小于被重写方法的修饰符。重写方法不能抛出新的异常或者是比被重写方法声明更加宽泛的检查型异常。

7、局部变量能否和成员变量重名?
正确答案: A 你的答案: A (正确)
可以,局部变量可以与成员变量重名,这时可用“this”来指向成员变量
可以,这时可用“local”关键字来指向局部变量
不能,局部变量不能与成员变量重名
不能,在一个类中不能有重名变量,不管是成员变量还是函数中的局部变量

题解:
java采用局部优先的思想。局部变量可以和成员变量相同,使用标识符调用时,优先使用局部变量。在实例方法中出现变量名相同时,可以使用this关键字来调用。

8、指出下列程序运行的结果()

public class Example{
    String str = new String("good");
    char[ ] ch = { 'a' , 'b' , 'c' };
    public static void main(String args[]){
        Example ex = new Example();
        ex.change(ex.str,ex.ch);
        System.out.print(ex.str + " and ");
        System.out.print(ex.ch);
    }
    public void change(String str,char ch[ ]){
        str = "test ok";
        ch[0] = 'g';
    }
}

正确答案: B 你的答案: B (正确)
good and abc
good and gbc
test ok and abc
test ok and gbc

题解:

9、java中提供了哪两种用于多态的机制
正确答案: A B 你的答案: A B(正确)
通过子类对父类方法的覆盖实现多态
利用重载来实现多态.即在同一个类中定义多个同名的不同方法来实现多态。
利用覆盖来实现多态.即在同一个类中定义多个同名的不同方法来实现多态。
通过子类对父类方法的重载实现多态

题解:
Java通过方法重写和方法重载实现多态
方法重写是指子类重写了父类的同名方法
方法重载是指在同一个类中,方法的名字相同,但是参数列表不同

10、下列说法正确的是()
正确答案: A B 你的答案: A B (正确)
JAVA程序的main方法必须写在类里面
JAVA程序中可以有多个名字为main方法
JAVA程序中类名必须与文件名一样
JAVA程序的main方法中,如果只有一条语句,可以不用{}(大括号)括起来

题解:
答案:AB
A,java是强类型语言,所有的方法必须放在类里面,包括main
B ,java中可以有多个重载的main方法,只有public static void main(String[] args){}是函数入口
C,内部类的类名一般与文件名不同
D,函数都必须用{}括起来,不管是一条语句还是多条语句

答案汇总:
1、正确答案: B
2、正确答案: C
3、正确答案: B
4、正确答案: A
5、正确答案: D
6、正确答案: B
7、正确答案: A
8、正确答案: B
9、正确答案: A B
10、正确答案: A B

以上部分题解来自牛客评论区,感谢评论区大佬的解释。

每天进步一点点!
不进则退!

版权声明:
原创博主:牛哄哄的柯南
博主原文链接:https://keafmd.blog.csdn.net/

看完如果对你有帮助,感谢点击下面的一键三连支持!
[哈哈][抱拳]

在这里插入图片描述
加油!

共同努力!

Keafmd

评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牛哄哄的柯南

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值