当前位置: 首页 > news >正文

【Java基础面试题013】Java中静态方法和实例方法的区别是是么?

回答重点

静态方法

  • 使用static关键字修修饰的方法
  • 属于类
  • 随着类的加载而加载,随着类的卸载而消失
  • 可以通过类名直接调用,也可以通过对象调用,但是这种方式不推荐,会混淆意义,也不利于后期维护与扩展
class Example {static void staticMethod() {System.out.println("这是一个静态方法");}
}
public class Main {public static void main(String[] args) {Example example = new Example();example.staticMethod(); // 通过对象调用静态方法}
}
  • 可以访问类的静态变量和其他静态方法,不能直接访问实例变量和实例方法

实例方法

  • 不适用static关键字修饰的方法
  • 属于对象
  • 必须通过对象调用
  • 可以访问实例变量和实例方法,也可以访问静态变量和静态方法
  • 随着对象的创建而存在,随着对象的销毁而消失

注意事项

  1. 静态方法中不能使用this关键字,因为this代表当前对象,而静态方法属于类
  2. 静态方法可以被重载,但是不能被子类重写,因为方法信息在编译时就存在方法区中了,实例方法可以被重载也可以被重写
  3. 静态方法不支持子类重写,所以也不具有多态性,即不支持方法在运行时动态绑定

http://www.lryc.cn/news/505437.html

相关文章:

  • C语言入门(一):A + B _ 基础输入输出
  • Vue日历组件FullCalendar使用方法
  • TinyML在OBD-II边缘设备上燃油类型分类的实现与优化
  • vue3 中 defineProps 声明示例
  • SpringBoot整合MybatisPlus报错Bean不存在:NoSuchBeanDefinitionException
  • 异步电机的控制是否还有研究的必要,是不是已经非常成熟了?
  • 【Android】解决 ADB 中 SELinux 设置与 `Failed transaction (2147483646)` 错误
  • 企业车辆管理系统(源码+数据库+报告)
  • SAP RESTful架构和OData协议
  • centOS定时任务-cron服务
  • Python毕业设计选题:基于django+vue的宠物服务管理系统
  • css常用属性有哪些
  • 八大设计模式
  • 神经网络基础-初识神经网络
  • 《计算机视觉:瓶颈之辩与未来之路》
  • Centos gcc 12.3 安装
  • B站bilibili视频转文字字幕下载方法
  • vue CSS 自定义宽高 翻页 剥离 效果
  • uniapp使用百度地图配置了key,但是显示Map key not configured
  • Leetcode42-环形链表
  • C语言进阶(2) ---- 指针的进阶
  • 使用Python筛选图片
  • GESP CCF python五级编程等级考试认证真题 2024年12月
  • URL的概念与格式
  • 【Elasticsearch】高亮搜索:从原理到Web呈现
  • samout llm解码 幻觉更低更稳定
  • 单片机:实现多任务处理(附带源码)
  • 负载均衡oj项目:介绍
  • 剑指Offer 03比特位计数
  • 多音轨视频使用FFmpeg删除不要音轨方法