java练习本(原每日一练)(2019-04-21)

名人名言

昨日翻译

“Love is a serious mental disease.”

    ——Plato

“爱情是一种严重的精神疾病。”

 ——柏拉图

今日名言

“Our greatest fear should not be of failure… but of succeeding at things in life that don’t really matter.”

——Francis Chan

2019.04.20问题及解析

题目
public class Son extends Father{
    private String name = "son";
    public static void main(String[] args) {
        Father son = new Son();
    }
    void printName(){
        System.out.println(name);
    }
}


class Father{
    private String name = "father";
    Father(){
        printName();
    }
    void printName(){
        System.out.println(name);
    }
}

请问会输出什么?

A.father

B.son

C.null

D.异常

答案与解析

1.相关知识

①创建一个对象时会优先执行它的构造函数

②当它有父类时优先执行它父类的构造函数

2.代码流程

定义了Son类继承Father类

定义了私有属性name,值为son

通过多态创建了一个子类对象

定义了printName方法,打印出属性name

定义了父类对象

定义私有属性name,值为father

定义了构造函数调用printName方法

定义了printName方法,打印出属性nameA

3.答案解析

由于new的是子类对象,因此首先调用父类的构造方法

调用父类的构造方法则会调用printName方法

因为子类中有printName方法,因此此时调用的是子类的printName方法

但此时子类对象还没有构造,因此输出的结果为null

答案选C。

2019.04.21问题

public class Son extends Mother{
    public String grade;
    public static void main(String[] args) {
        Mother mother = new Son();
        System.out.println(mother.name);
    }
}


class Mother{
    private String name = "mom";
    int age = 50;
}

这道题主要是为了解决昨天评论区小伙伴们的误区出的哦

请问上述代码的输出是:

A.mom

B.没有输出

C.编译出错

D.抛出异常

E.null

往期回顾

java练习本(原每日一练)|(2019-04-20)

java练习本(原每日一练)|(2019-04-19)

java练习本(原每日一练)|(2019-04-18)

java练习本(原每日一练)|(2019-04-17)

java练习本(19_04_16)|继承——访问修饰符、覆盖

java练习本(19_04_15)|lang包类——Math

java每日一练(19_04_12)|循环语句——for

java每日一练(19_04_11)|条件语句——switch

java每日一练(19_04_10)|异常—— try catch finally

java每日一练(19_04_09)|面向对象—— 继承、访问修饰符

java每日一练(19_04_08)|运算符、循环—— for、++自增

java每日一练(19_04_07)|基础数据类型、包装类—— double、float、int、Double

java每日一练(19_04_03)|HashMap、Hashtable

java每日一练(19_04_02)|instanceof关键字

java每日一练(19_04_01)

java每日一练(19_03_31)

java每日一练(19_03_30)

java每日一练(19_03_29)  (不定项选择题)

加入我们吧~

眼过千遍,不如手过一遍,一定一定要把自己的想法写出来(想法不论对错,写你所想就是进步),这样才会有所收获,你的每一个留言和分享小刀都会认真回复,彼此学习共同进步~

小刀和小伙伴在学习群里

等你来一起监督学习哦,坚持!加油!

进群请加小刀微信: best396975802

END


微信群请点击公众号菜单进微信群

文字|天堂

排版|花音

你点的每个在看,我都认真当成了喜欢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值