库调多了,都忘了最基础的概念-方法篇

简介: 库调多了,都忘了最基础的概念-方法篇

🍁 作者:知识浅谈,CSDN博客专家,阿里云签约博主,InfoQ签约博主,华为云云享专家

📌 擅长领域:全栈工程师、爬虫、ACM算法

💒 公众号:知识浅谈

🔥 联系方式vx:zsqtcc

🤞这次都给他拿下🤞

正菜来了⛳⛳⛳

🎈方法优先调用可选参数还是固定参数?

先说结论:会优先调用固定参数,因为可选参数的调用优先级是最低的,只有没有其他选项的时候,才会调用可选参数。

举🌰:

public class Main {
    public void get(int a){
        System.out.println("我是固定参数");
    }
    public void get(int... a){
        System.out.println("我是可变参数");
    }
    public static void main(String[] args) {
        Main a = new Main();
        a.get(2);
    }
}
返回:
我是固定参数

🎈方法重写和方法重载有什么区别?

方法重写:方法重写是发生在父类和子类之间的。

方法重写遵循5点原则:相同方法名,相同参数个数和类型,修饰符重写的要大于等于被重写的范围,返回值类型重写的要小于等于被重写的,重写方法中抛出的异常要小于等于被重写的方法。

class A{
    public Number get(int a){
        System.out.println("被重写者");
        return a;
    }
}
public class Main extends A{
    public Number get(int a){
        System.out.println("重写者");
        return a;
    }
}

方法重载:方法重载是发生在同一个类之中的,向我们常见的构造函数重载。

重载最重要的就是和方法引用有关:方法引用由方法名+参数类型+参数个数组成。

重载要遵循的几点规则:方法名相同,对应的参数的类型和个数不同的方法是重载。

public class Main {
    public void get(int a){
        System.out.println("被重载者");
    }
    public void get(int a,int b){
        System.out.println("重载者");
    }
}

🎈this和super有什么区别?this能调用到父类吗?

this是用来调用当前类中的变量,super是用来调用父类的变量,一般我们子类在执行构造函数执行的时候,会现在最开是调用super()也就是父类的构造函数,所以this是不能直接调用父类而是通过super调用父类的。

注意:在构造函数中,super()是需要放到最上边执行的,如果放在下边会报错。

🎈List,Set,HashMap能存放null值吗

List:因为List是一个列表的形式,其内部可以存储多个null。

Set:因为Set是一个集合的形式,其内部只能存储一个null。

HashMap:因为key是唯一的,所以key中只能存储一个null,而value中可以存储多个null值。

🍚总结

这次就先回顾这四个,下次接着学习,希望有所帮助。

相关文章
|
3月前
|
算法 测试技术 持续交付
技术感悟:代码之外的智慧
【8月更文挑战第14天】在技术的海洋中,我们常常沉浸于代码的编写和调试,追求着更高效的算法和更优雅的解决方案。然而,技术的世界远不止于此。它还包括了对问题的理解、对工具的运用、以及与他人的协作等多个方面。这些看似与代码无关的技能,实际上对我们的技术成长有着深远的影响。本文将分享一些在代码之外的技术感悟,希望能够为大家提供一些新的视角和思考。
|
PHP 开发者
|
编解码 缓存 NoSQL
7点 讲明白地图切片的概念与原理
7点 讲明白地图切片的概念与原理
482 0
|
JavaScript 前端开发
【重温基础】12.使用对象 上
【重温基础】12.使用对象 上
151 0
|
网络架构
【重温基础】12.使用对象 下
【重温基础】12.使用对象 下
110 0
|
网络架构 iOS开发