D选项错误: 说法不正确,重写的方法需要遵循"两同两小一大"原则。
=======================================================================================
-
A: 重载方法的方法名必须相同
-
B: 重载方法的区别是参数列表(参数个数或者参数类型)
-
C: 重载方法的返回值必须一致
-
D: 重载方法的实现可以不一样
答案: C (重载只与方法的参数列表和方法名相关,与方法的返回值类型和方法修饰符类型无关)
===================================================================================
-
A: 静态方法不能被重写
-
B: 静态方法不能被private修饰
-
C: 私有方法不能被重载
-
D: 静态方法不能通过对象进行调用
答案: A
A选项正确: 静态方法可以被继承,但是不能被重写。因为静态方法是属于类级别的,在加载到JVM时就已经确定了,但重写是表现多态的一种方式,通过父类引用指向子类,然后在运行时再确定具体的类型从而执行不同的逻辑。
B选项错误: 静态方法和普通方法一样可以被public、protected,默认修饰符、private修饰。
C选项错误: 重载是表示相同的方法名有不同的参数列表的方法,与返回值类型和访问修饰符无关。
D选项错误: 静态方法是属于类级别的方法,可以通过类名和实例对象名调用(不推荐使用实例调用静态方法)。
四: 下面那个选项替换到"here"可以让结果输出为:son
===================================================================================================
public class DemoFather {
private String name;
public static void main(String[] args) {
DemoFather item = new DemoSon();
// here
}
}
class DemoSon extends DemoFather{
private String name;
public String output(){
name = “son”;
return name;
}
}
-
A: System.out.println(item.name);
-
B: System.out.println(item.output());
-
C: System.out.println(((DemoSon)item).output());
-
D: System.out.println((DemoFather)item).output());
答案: C (使用父类引用指向子类,想调用子类的方法,需要将父类类型强制转换成子类类型再进行调用)
======================================================================================
class Parent {
public Parent() {
System.out.println(“A”);
}
}
public class Son extends Parent {
public Son() {
System.out.println(“B”);
}
public static void main(String[] args) {
Parent a = new Son();
a = new Parent();
}
}
答案: A B A (因为Son继承了Parent类,在加载Son类时会先去加载它的父类,所以会先执行父类的构造方法)
=========================================================================
不积跬步,无以至千里;不积小流,无以成江海。今天播种努力的种子,总会有一天发芽!
欢迎大家关注,如果觉得文章对你有帮助,不要忘记一键三连哦,你的支持是我创作更加优质文章的动力,希望大家都能够早日拿到心仪的Offer,有任何面试问题可以私信我,欢迎大家投稿面试题目哦!
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
8925)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!