我对JAVA的OOP基本原理

【24届数字IC秋招总结】正式批面试经验汇总6——禾赛 15、ahb写或者读的数据存储起来了嘛,ahb读的话,apb这边是怎样的。19、覆盖率收集的时候有没有哪些是很难收集到的,然后写了定向测试。2、C++有学过嘛 还记得C++的什么内容 C++成绩多少。12、config_db机制用过嘛 四个参数的含义。8、脚本语言有学过嘛 简单学过 简单是指代码数少嘛。13、run_phase和mian_phase的区别。10、覆盖机制的创建方法 ,是不是覆盖用的很少。6、call_back机制记得哪些细节的东西。9、uvm实战学了哪些章节 印象深刻的章节。 阅读详情

JAVA的OOP基本原理

JAVA的OOP原本只有3个,分别为:封装,继承和多态,后加入抽象,他们是OOP的四大支柱。

抽象

抽象简单来说就是将一个程序整体细分为许多部分,让我们可以选出对象的主要特性,而忽略其他不重要的信息。例如一个学校下分为各个年级,年级又分出许多个班,而班上又分为男生女生,男生女生又分在几个宿舍,宿舍里又有具体的人,就这样一直下分,我们就可以具体到个人,我们要关注年级第一的话,我们就直接找到具体的个人,而不用去关注一整个班,这样我们就能找到对象的主要特性,而忽略其他不重要的因素。

封装

封装,从其字面意思就能知道,是将程序具体实现的方法和类等封装起来,不让使用者知晓其实现的过程,只让他们知道是怎么使用的就行,这样既方便了使用者,又可以保证数据不被故意或者恶意篡改。例如:你去做飞机,你只要买票,去机场,上飞机,到目的地,下飞机就行了,对于飞机的使用,原理,都不需要了解。

继承

继承,在类中是指两个类的关系,子类包含父类的所有方法和实例字段,并且可以自己重写父类的方法。我们可以在原有类的基础上,写出自己想要的类,比如,我有个马的类,但是现在我需要的是天马这个类,我就新创建的天马类,并继承马这个类,然后加上翅膀这个专属于天马类的方法和字段,这就省略了创建马类这个过程。现在我们一般不需要在自己重新从零创造,只需要继承有相似功能的类,然后在添加上自己独有的方法就行,这样即快捷又省事。

多态

多态让我们能够与不同的类的对象进行交互(他们之间有同一个父类),且一般来说,交互的方法不会改变。这种优势当我们的程序很大,类很多时,优势就会越大,因为他们之间的交互会方便许多,而不用创造许多的对象。例如,我是一个人,人是一个接口、一个对象,但是我这个人的身份可以是老板,也可以是员工,也可以是儿子,也可以是父亲,但是我还是我,就是一个对象,却有许多身份,当我在生活中和我的员工,我的儿子,我的父亲交互时,多态的作用就显现出来了,我不用在创建老板,父亲,儿子这些身份,创建这些具体的对象,因为这些身份我都可以表示,可以直接与这些不同的类进行交互。

总结

这就是我理解的OOP基本原理,编程是有规则,和现实中的道德一般,你不遵守,不一定会犯法,但是你不遵守,别人会指责你,四个基本原理都在通过某种方法规范着我们,但在程序越来越大的时候,带给我们巨大的好处,当我们要抽离其中之一时,整个系统就会不稳定。

(14-3)值分布式算法:QR-DQN (Quantile Regression DQN)算法 QR-DQN(Quantile Regression DQN)是一种强化学习算法,它是深度 Q-网络(Deep Q-Network,DQN)的一个变种,旨在更好地处理值函数的不确定性。QR-DQN的实现步骤与传统的DQN类似,但在目标分布计算和损失函数方面有一些不同之处,这使得它能够更好地处理值函数的不确定性。QR-DQN(Quantile Regression DQN)算法的核心思想是将值函数表示为一个分布,而不是传统的单一值估计。在下面的内容中,将讲解一个使用QR-DQN算法的例子。 阅读详情

相关推荐

Diebold-Mariano检验

给定两个预测的预测结果,我们希望比较他们的预测结果,以用于预测模型精度的比较。 Diebold-Mariano检验本质是一个t检验,用于检验替代预测的两个损失序列的平均值是否相等。即,它是一系列损失差的零均值的t检验。在存在自相关的情况下,它使用损失差分时间序列标准差的自相关一致性估计。 注意,在使用DM检验式时,假设损失序列是平稳的。 另外,DM检验在小样本数据时往往会拒绝零假设。对于小样本数据,推荐Harvey, Leybourne and Newbold (HLN)检验【1】; 参考文献 【1】htt

weixin_43948357的博客 6565

php oop java oop_什么是面向对象编程(OOP)

本篇文章给大家带来的内容是介绍java中什么是面向对象编程(OOP),让大家了解面向对象编程的优点,以及java面向对象编程的三大特性是什么。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。什么是面向对象编程(OOP)?面向对象编程(OOP)是一种围绕对象构建的编程语言模型,它使用对象和数据作为核心组件。此模型将数据划分为对象(数据字段),并通过类(方法)声明描述对象内容和行为。【...

weixin_39767887的博客 154

微机原理-基于8086电压报警2.5V仿真系统设计

*单片机设计介绍,微机原理-基于8086电压报警2.5V仿真系统设计。

2201_75940997的博客 1083

java i o是什么意思_Java I/O体系从原理到应用,这一篇全说清楚了

基础概念在介绍I/O原理之前,先重温几个基础概念:(1) 操作系统与内核操作系统:管理计算机硬件与软件资源的系统软件内核:操作系统的核心软件,负责管理系统的进程、内存、设备驱动程序、文件和网络系统等等,为应用程序提供对计算机硬件的安全访问服务2 内核空间和用户空间为了避免用户进程直接操作内核,保证内核安全,操作系统将内存寻址空间划分为两部分:内核空间(Kernel-space),供内核程序使用用户...

weixin_33509203的博客 442

Foxglove 介绍以及入门使用教程

Foxglove 是由Foxglove 工作室开发的一套工具集,包括和等组件。跨平台支持:可以在 Windows、macOS 和 Linux 上运行。多协议兼容:支持 ROS、ROS 2、CAN 数据以及其他自定义协议。丰富的可视化功能:可以绘制点云、轨迹、激光雷达数据、IMU 数据等。实时与离线模式:既可以实时监控机器人状态,也可以加载和回放记录的数据文件。Foxglove 的 3D 视图允许你以三维方式查看机器人的运动轨迹、传感器数据和其他几何信息。你可以旋转、缩放和平移视图以获得更好的观察角度。

zolty 1万+

用户和实体行为分析(UEBA)基础指南及解决方案

用户和实体行为分析(UEBA)或异常检测是一种网络安全技术,它使用机器学习(ML)算法来检测网络中用户、主机和其他实体的异常活动。

ITmoster的博客 2893

【Java从头开始到光头结束】No0.Java简介

计算平台是在电脑中运行应用程序(软件)的环境,包括硬件环境和软件环境。一般系统平台包括一台电脑的硬件体系结构、操作系统、运行时库。

菲林都已拆走 684

Obsidian的Git插件设置配置全流程 -- 简单的电脑端多平台同步方案及常见问题

Git同步obsidian的保姆级教程和常见问题

weixin_44370439的博客 1万+

Java基础篇 IO流

I 表示intput,是数据从硬盘进内存的过程,称之为读。O 表示output,是数据从内存到硬盘的过程。称之为写IO的数据传输,可以看做是一种数据的流动,按照流动的方向,以内存为参照物,进行读写操作内存在读,内存在写1、节点流可以从一个特定的数据源读写数据,如:FileReader、FileWriter2、处理流(也叫包装流)是连接在以存在的流(节点流或处理流)之上,为程序提供更为强大的读写功能,更加灵活多变。如BufferReader、BufferWriter。计算机文件、文件。

分享思想,留下痕迹。 1102

8、Windows 部署ollama

一个本地运行大模型的集成框架,目前主要针对主流的LLaMA架构的开源大模型设计,通过将模型权重、配置文件和必要数据封装进由Modelfile定义的包中,从而实现大模型的下载、启动和本地运行的自动化部署及推理流程。此外,Ollama内置了一系列针对大模型运行和推理的优化策略,目前作为一个非常热门的大模型托管平台,已被包括LangChain、Taskweaver等在内的多个热门项目高度集成。

Andy_shenzl的博客 1131

[VT虚拟化驱动]正式启动VT

文章目录前言一、vmlaunch正式开始虚拟化二、使用步骤1.引入库2.读入数据总结 前言 本章开始真正实现一个最简单的VT框架,当然,只是能跑起来一个VT驱动了,没有并包括EPT,EPT后面再讲 提示:以下是本篇文章正文内容,下面案例可供参考 一、vmlaunch正式开始虚拟化 执行VMLAUNCH指令执行后,就正式进入虚拟化了,再该指令执行之前,得先保存Guest当前的环境,执行完VMLAUNCH后,要恢复Guest的环境,让Guest就像什么都没发生一样,所以需要保存和恢复Guest的各种寄存器的值

吾无法无天的博客 3663

Java(IO异常解释(为什么要捕获异常,为什么要给NULL)

【代码】Java(IO异常解释(为什么要捕获异常,为什么要给NULL)

2301_80295141的博客 322

LabVIEW实现HTTP通信

本节简要介绍HTTP通信的基础知识,并以工业物联网平台TLINK中云端设备的数据发布设计为例,阐述互联网环境下HTTP客户端应用程序设计的基本方法。重点讲解工业物联网平台TLINK中HTTP设备的创建、通信数据帧的构造与测试。

不脱发的程序猿 1546

【java】学习笔记【核心篇】- OOP 基础知识:基本原理、继承、封装

面向对象原理详解:https://codegym.cc/groups/posts/oop-principles 面向对象代码例子:https://codegym.cc/groups/posts/159-principles-of-oop (下面可不看) 面向对象的编程 (OOP) 四大支柱: 抽象:把庞大的东西拆分成多个细小的部分。就程序员而言,抽象就是把一个程序妥善地分成多个对象。一个大程序通常是多个对象通过各种各样的方法进行交互。通过抽象,你可以选出一个对象的主要特性,忽视其他不重要的信息。 封装:*

weixin_45915254的博客 295

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

那些年我们追过的面向对象编程(oop)

抽象类使用abstract关键字定义的类,称为抽象类。抽象类不能被实例化,但可以被继承。抽象类可以包含抽象方法和具体方法。抽象方法没有实现,必须在子类中重写。接口接口是一种形式的抽象,它定义了一组方法规范,但不实现这些方法。任何类都可以实现多个接口,必须提供接口中所有方法的具体实现。

2201_75685905的博客 2097

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

java中oops是什么意思_什么是oop思想_什么是OOPS

什么是oop思想OOPS is a programming approach which provides solution to real life problems with the help of algorithms based on real world. It uses real world approach to solve a problem. So object oriented...

weixin_28894691的博客 1073

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

面向对象编程(OOP)基础:Java入门指南

OOP是一种设计程序时考虑如何将复杂世界中的对象进行建模的方法。通过将复杂的系统分解成较小的部分(即对象),可以更清晰地理解和解决问题。在Java中,OOP的核心概念有三个:类、实例和方法。

xiaozhi_wei的博客 709

java程序的构成_Java对象构成所有Java应用程序的基础

java程序的构成 An object in Java— and any other "object-oriented" language— is the basic building block of all Java applications and represents any real-world object you might find around you: an apple, ...

cumao2792的博客 387

Java面向对象编程(oop)(1)

Java的核心思想就是oop初始:属性➕方法——(构成)类物以类聚。

2501_90581349的博客 356

Java I Basics 9 OOP [A]

Java Ref [A]coding topic: Java EEInstallationOverviewVariablesMethodsPackageOOPOps, Conditionals & Loops; Class & Obj (Arr)KeywordsInterfaceStringExceptionsMulti-ThreadingConcurrency UtilsLam...

tw808的博客 412

Java面试题--- OOP基础 知识

目录 1、什么是b/s,什么是c/s? 2、java都有哪些开发平台? 3、什么是jdk?什么是jre? 4、java语言有哪些特点? 5、面向对象和面向过程的区别? 6、什么是数据结构? 7、java的数据结构都有哪些? 8、什么是oop? 9、类与对象的关系? 10、java中有哪几种数据类型? 11、标识符命名规则 12、什么是显示类型转换,什么是隐式类型转换? 13、什么是拆装箱? 14、针对浮点数运算出现的误差问题,如何解决? 15、面向对象的特征:(经典) 16、

qq_41074044的博客 1974

java第四周

1.面向对象的概念 (1)面向对象是一种符合人类思维习惯的编程思想。 (2)现实生活中存在各种形态不同的事物,这些事物之间存在着各种各样的联系。 (3)在程序中使用对象来映射现实中的事物,使用对象的关系来描述事物之间的联系,这种思想就是面向对象。 2.面向对象思想 面向对象是以现实生活中客观存在的事物(即对象)来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式,强调直接以事物对象为中心来思...

shuia6的博客 303

新手学java7编程_新手学Java 7编程:面向对象程序设计

该楼层疑似违规已被系统折叠隐藏此楼查看此楼面向对象程序设计Java的核心是面向对象程序设计(OOP)。面向对象方法论与Java是密不可分的,而Java所有的程序至少在某种程度上都是面向对象的。因为OOP对Java的重要性,所以在开始编写一个哪怕是很简单的Java程序之前,理解OOP的基本原理都是非常有用的。OOP是一种功能强大的程序设计方法。从计算机诞生以来,为适应程序不断增加的复杂程度,程序设...

weixin_36217616的博客 124

面向对象编程(OOP)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录面向对象编程(OOP)一、面向对象编程的思想二、类,对象类的格式:对象的格式:三、构造器四、this关键字五、封装补充:标准JavaBean补充:成员变量和局部变量的区别总结 – 面向对象编程(OOP) 一、面向对象编程的思想 面向:拿或者找。 对象:东西。 面向对象编程:拿或找东西来编程。 把现实世界中的事物当成一个一个的对象来解决问题。(万物皆对象) 好处:1.符合人类思维,让人共容易理解 .

m0_58866496的博客 847

Java基础:Java面向对象编程(OOP)之【类与对象】

本文介绍了Java面向对象编程的核心概念——类与对象。首先对比了面向过程与面向对象编程的区别,并阐述了OOP的四大特性(封装、继承、多态、抽象)。重点讲解了如何定义类(作为对象的模板)和创建对象实例,通过学生类示例展示了属性定义、方法声明和对象实例化的过程。文章还比较了成员变量与局部变量的区别,详细说明了构造方法的作用和使用技巧,包括默认构造方法、自定义构造方法以及this关键字的应用。最后指出了初学者常见误区,并提供了汽车类定义的练习题目。全文采用代码示例和表格对比的方式,帮助读者深入理解面向对象编程的基

lzq617789的博客 518

Java面向对象(OOP)总结

自己所总结的Java面向对象的一些知识点。

LMYxxXX的博客 300
上一篇: 关于使用if语句处理列表
下一篇: JAVA继承
yu_sh
博客等级 码龄7年 1粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值