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

面向对象基础

目录

面向对象和面向过程区别

创建一个对象用什么运算符?对象实体与对象引用有何不同

对象相等和引用相等区别

如果一个类没有声明构造方法,该程序能正确执行吗?

构造方法有哪些特点?是否可被 override?


面向对象和面向过程区别

两者的主要区别在于解决问题的方式不同:

面向过程编程:面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。

面向对象编程:面向对象编程的设计思想是以对象为中心,通过对象之间的交互来完成程序的功能,具有灵活性和可扩展性。

创建一个对象用什么运算符?对象实体与对象引用有何不同

1. 创建一个对象用什么运算符?
new 运算符

2.对象实体与对象引用有何不同?

对象引用存放对象实体的地址,对象实体存储对象具体的数据

一个对象引用可以指向 0 个或 1 个对象;

一个对象可以有 n 个引用指向它

对象相等和引用相等区别

对象的相等一般比较的是内存中存放的内容是否相等。

引用相等一般比较的是他们指向的内存地址是否相等。

实例:字符串变量比较 ==比较的是内存地址; equals比较的是字符串内容

如果一个类没有声明构造方法,该程序能正确执行吗?

可以正确执行。

在 Java 里,当你没有为类定义任何构造方法时,Java 编译器会自动为该类提供一个默认的无参构造方法。但一旦你为类定义了至少一个有参构造方法,编译器就不会再自动提供无参构造方法了。如果此时你还需要使用无参构造方法来创建对象,就必须手动编写它。

构造方法有哪些特点?是否可被 override?

构造方法具有以下特点:

名称与类名相同:构造方法的名称必须与类名完全一致。

没有返回值:构造方法没有返回类型,且不能使用 void 声明。

自动执行:在生成类的对象时,构造方法会自动执行,无需显式调用。

构造方法不能被重写(override),但可以被重载(overload)

class Animal {
    protected String name;

    // 有参构造方法
    public Animal(String name) {
        this.name = name;
        System.out.println("父类 Animal 的构造方法被调用,创建了一个名为 " + name + " 的动物。");
    }
}

相关文章:

  • 本地搭建dify结合ollama+deepseek方法详解
  • 2025最新智能优化算法:人工旅鼠算法(Artificial Lemming Algorithm, ALA)求解23个经典函数测试集,MATLAB
  • Spring原理
  • Android 布局系列(四):ConstraintLayout 使用指南
  • 毕业项目推荐:基于yolov8/yolo11的野生菌菇检测识别系统(python+卷积神经网络)
  • fastchat 支持llama3 harmbench PAIR攻击支持 llama3
  • SpringBoot + vue 管理系统
  • 零基础学习OpenGL(一)创建一个窗口
  • JAVA面试_进阶部分_23种设计模式总结
  • PhpStorm 绿色版 安装包 Win/Mac/Linux 商业的PHP集成开发环境 2025全栈开发终极指南:从零配置到企业级实战
  • docker镜像和容器(二)
  • 系统农场商城:打造绿色生态的未来购物新体验
  • mac电脑中使用无线诊断.app查看连接的Wi-Fi带宽
  • 【DeepSeek-R1背后的技术】系列十三:归一化方式介绍(BatchNorm, LayerNorm, Instance Norm 和 GroupNorm)
  • 【R语言】Kmeans算法
  • Servlet理论知识详解
  • 由堆栈异常引发的一系列问题启发
  • 计算机视觉 |解锁视频理解三剑客——TimeSformer
  • Spring 中的依赖注入
  • 【Deepseek学习大模型】Roofline计算规则
  • 腾讯布局智能体开发平台,吴运声:智能体行业增长很快,仍处于百花齐放阶段
  • 淡出政治舞台?马斯克称将削减政治开支:已经做得够多了
  • 每日475.52元!最高检公布侵犯公民人身自由最新赔偿金标准
  • A股高开高走:宠物经济走强,超3800股收涨,两市成交超1.1万亿元
  • 俄乌上周在土耳其直接谈判,外交部回应
  • 上海徐汇 “家 + 书屋”,创新服务广大家庭