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

举报
知识浅谈 发表于 2022/09/05 09:05:05 2022/09/05
【摘要】 库调多了,都忘了最基础的概念-方法篇

在这里插入图片描述

🍁 作者:知识浅谈,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值。

🍚总结

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

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。