首页 > 其他分享 >面试二

面试二

时间:2024-04-10 10:00:34浏览次数:27  
标签:函数 代码 局部变量 面试 重载 全局变量 方法

return、continue、break三者的区别是什么?

return 用于从函数中退出并返回值,continue 用于跳过当前循环的剩余部分并继续下一次迭代,
而 break 用于完全结束循环的执行。

方法重载overload?

1.同一类中:方法重载发生在同一个类中(或者在一个类的继承关系中)。
2.方法名相同:重载的方法必须有相同的方法名。
3.参数列表不同:可以是参数的数量不同,参数的类型不同,或者参数的顺序不同。只有返回类型不同不足以成为方法重载。
4.返回类型:重载的方法可以有不同的返回类型,但仅仅返回类型不同不足以构成方法重载。
5.编译时多态性:方法重载是静态的,这意味着编译器在编译时就确定了应该调用哪个方法。

重载与重写的区别?

方法重载是指在同一个类中定义有相同名称但参数列表不同的多个方法。
方法重写指的是子类重新定义父类的方法,在方法的名称、参数列表和返回类型都相同的情况下改变方法的具体实现。

Java的参数传递?

基本数据类型传递的是:值本身。
引用数据类型传递的是:变量在堆中的引用地址。

全局变量

定义位置:全局变量定义在函数外部,通常在程序的最上方,这使得它在整个程序文件甚至是多个文件中都可见。
作用域:全局变量在整个程序中都是可访问的,除非被同名局部变量所遮蔽。
生命周期:全局变量的生命周期通常与程序的运行周期相同,从程序开始执行时被创建,直到程序结束时才销毁。
用途:常用于存储整个程序运行期间都需要访问的数据,如配置信息、共享资源等。
潜在问题:过度依赖全局变量可能导致程序难以理解和维护,因为任何部分的代码都可能修改全局变量的值,从而引起不可预料的结果。

局部变量

定义位置:局部变量定义在函数或代码块(如循环、条件语句等)内部。
作用域:局部变量仅在定义它的函数或代码块内部可见和可用。当控制流离开该函数或代码块时,局部变量就会失效。
生命周期:局部变量的生命周期通常很短,仅限于函数调用的持续时间或代码块的执行时间。
用途:常用于存储函数计算过程中的临时数据,或者在代码块中控制循环和决策结构。
资源管理:局部变量的创建和销毁通常更加高效,因为它们占用的内存会在函数或代码块执行完毕后立即释放。

标签:函数,代码,局部变量,面试,重载,全局变量,方法
From: https://www.cnblogs.com/lxs666/p/18125373

相关文章

  • 【速记】一些Spring面试题的速记口诀
    帮助记忆,实际还是自己多练。1.Spring中应用了哪些设计模式呢?工厂模式 :Spring容器本质是一个大工厂,使用工厂模式通过BeanFactory、ApplicationContext创建bean对象。代理模式 :SpringAOP功能功能就是通过代理模式来实现的,分为动态代理和静态代理。单例模式 :Sp......
  • 《架构风清扬-Java面试系列第19讲》解释一下Java中的“volatile”在多线程环境中的作
    适用范围:这道题适应范围挺宽的,各个年限都可以用参考答案:主要用于确保变量在多个线程之间的可见性和有序性。可见性:当一个线程修改了被volatile修饰的变量,其他线程能够立即看到修改后的值。这确保了变量在多个线程之间的可见性。有序性:volatile关键字能够防止指令重排序......
  • C++程序分享--常见编程面试题:判断字符串是否为回文串
    关注我,持续分享逻辑思维&管理思维;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自我介绍》, 《做好面试准备,迎接2024金三银四》。【图解《程序员面试常见的十大算法......
  • 面试常问问题——web端测试、安卓测试、ios测试的区别是什么?
    web端需要考虑:1、浏览器种类的兼容2、浏览器版本的兼容3、电脑和显示器的显示4、缩放窗口大小的显示5、响应时间 app测试需要考虑:1、不同的屏幕分辨率2、不同品牌的设备3、不同的系统4、不同的安卓版本5、安装卸载......
  • 前端面试题 — 浏览器安全问题
    1.什么是XSS攻击?如何防范XSS攻击?XSS攻击是一种跨站脚本攻击,攻击者通过在网页中注入恶意脚本来获取用户信息或控制页面。防范XSS攻击的方法包括对用户输入进行过滤和转义、使用HTTP头部中的ContentSecurityPolicy(CSP)等。2.什么是CSRF攻击?如何防范CSRF攻击?CSRF攻击是一种跨......
  • 面试中数据结构与算法——知识点最全总结(学完可应对一线大厂)
    各大厂历年高频面试题系列,以下为部分内容不包括全部:双指针类面试题括号类面试题回文类面试题递推类面试题树型dp类面试题区间dp类面试题背包dp类面试题排序相关面试题常见贪心面试题常见图算法面试题子数组类面试题子序列类面试题二分类面试题bfs与dfs类面试......
  • 多线程面试要点
    一、线程的基础知识1、线程和进程的区别一个线程就是一个指令流,将指令流中的一条条指令以一定顺序交给CPU执行一个进程之内可以分为一到多个线程。二者对比进程是正在运行程序的实例,进程中包含了线程,每个线程执行不同的任务。不同的进程使用不同的内存空间,在当前进程......
  • 再探Java为面试赋能(二)Java基础知识(二)反射机制、Lambda表达式、多态
    文章目录前言1.4反射机制1.4.1Class对象的获取1.4.2Class类的方法1.4.3通过反射机制修改只读类的属性1.5Lambda表达式1.5.1函数式接口1.5.2Lambda表达式的使用1.6多态1.6.1多态的概念1.6.2多态的实现条件1.6.3重载(Overload)和重写(Override)前言往期精选......
  • LeetCode 面试经典150题---003
    ####55.跳跃游戏给你一个非负整数数组nums,你最初位于数组的第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回true;否则,返回false。1<=nums.length<=1040<=nums[i]<=105本题题意比较明确,我们可以......
  • 肖sir__ 接口测试面试题(12.2)
    1.postman接口测试,它有一个功能可以设置参数化,你有用过吗1、创建数据文件,支持数据格式文件分别为csv和json、txt等,这里我们以创建txt文档为例2、请求中对应位置替换参数变量:请求参数中用{{参数名}}替换,代码中通过:data.参数名来进行替换,注意这里的变量名要和txt文档中的变量名一......