Java基础:第二十六讲 从对象抽象出类

java第四讲:java中的类、对象、属性、方法 1. 面向对象编程 2. 类与对象 3. 属性 4. 方法 4.1 类方法和实例方法 4.2 重载 4.3 可变形参 4.4 局部变量 4.5 参数传递方式 4.6 递归 阅读详情

        上次介绍了如何从现实世界的对象抽象出软件系统中的对象,本次介绍如何从软件系统中的对象抽象出需要在软件系统中创建的类型。而程序在运行过程中使用的是对象,所以在运行的时候需要根据类型创建(new)对象。

从软件系统中的对象抽象出类型
    在10 路公交系统中有很多10 路车,那么在10 路公交虚拟系统中是否需要把每个对象都进行模拟?实际有多少汽车,在模拟系统中就创建多少汽车,这是不现实的,当数量很大的时候,没有办法实现,或者如果增加或者减少汽车就需要重新修改系统。
既然不能把现实中的每个对象都模拟到系统中,那么如何来模拟现实世界?
    通常的做法是构造一个类型,用这个类型来表示一些对象的集合,当需要使用某个对象的时候,可以使用这个类型创建一个对象。
    表1 列出了4 辆汽车的相关属性。
表1 汽车示例
汽车/ 属性
编号
方向
位置
汽车1
辽B-31274
百合山庄——沙河口火车站
黄河路300 米
汽车2
辽B-31288
百合山庄——沙河口火车站
软件园路50 米
汽车3
辽B-32293
沙河口火车站——百合山庄
西南路200 米
汽车4
辽B-31287
沙河口火车站——百合山庄
西安路150 米
    根据这些汽车创建类型的过程,就是删除对象的具体的值,形成一个抽象的对象,然后这些没有属性值的对象就相同了,这个对象就是抽象后的类型。
    删除属性值之后上面的汽车对象都变成了:
        某个汽车   有一个编号   有方向 有位置
    这样就可以在软件系统中创建一个类型:
        汽车:有一个编号,有方向,有位置。
    这个抽象的过程就是删除对象的具体的属性。
根据类型创建对象
    抽象出类型之后,如果需要描述汽车1 ,可以创建汽车类型的对象,然后把它车牌号赋值为“辽B-31274 ”,方向赋值为“百合山庄——沙河口火车站”,位置赋值为“黄河路300米”。这样就形成了软件系统中的对象,它又表示了现实世界中的一辆汽车。
具体在Java 中如何实现我们下一次介绍。
 
李绪成 优快云 Blog: http://blog.youkuaiyun.com/javaeeteacher
【Java基础知识 12】Java对象、类、抽象类、构造函数 封装是处理对象的一个重要概念,从形式上来说,封装就是将数据和行为组合在一个包中,并对对象的使用者隐藏具体的实现细节。 阅读详情

相关推荐

移植 lwip,在 windows 内核构建一个 TCPIP 协议栈

移植 lwip,在 windows 内核构建一个 TCPIP 协议栈 亲,当你点开看这篇文章,就说明你知道我想要干什么事情,或者说,你知道在 Windows 的内核种绕开它的网络协议,再独立构建一个网络协议栈的意义。如果你要问我有 windows 系统的网络协议栈不用,移植 lwip 有什么意义,那么你可以关闭链接走人了,因为这篇文章不适合你,它不是讲 lwip 移植原理的。 经常关注我的博客的朋...

oRbIt 的专栏 3576

Java面向对象抽象的概念和作用

抽象的定义 抽象是把多个事物的共性的内容抽取出来,本质就是把我们关注的内容抽取出来。(比如:宝马、奔驰都属于汽车,汽车是我们抽象出的概念) 抽象类 java中可以定义没有方法体的方法,该方法由其子类具体的实现,该没有方法体的方法我们称之为抽象方法,含有抽象方法的类我们称之为抽象类 抽象方法特点 只有方法的头没有方法体 抽象方法用abstract来修饰 抽象方法代表一种不确定的操作或行...

QuZDLvT的博客 4116

注册“Oracle Provider for OLE DB”和创建链接服务器

注册“Oracle Provider for OLE DB”和创建链接服务器 在sql server 数据库上创建链接服务器,连接oracle数据库,访问接口需要设置为:“Oracle Provider for OLE DB”。 如果电脑上没有这个驱动,安装一个完整的Oracle11gR2程序是一个有效的方法,但这个64位版本的安装包有2个多G, 相当庞大,如果仅仅...

weixin_30760895的博客 2383

Java面向对象——抽象详解

Java面向对象——抽象详解

weixin_64811434的博客 766

从二极管到CMOS:手把手教你搭建数字电路中的基础门电路(附原理图)

本文详细介绍了数字电路中基础门电路的搭建方法,从二极管门电路到现代CMOS门电路的设计与实现。通过原理图解析和实战案例,帮助读者掌握数字电路设计的核心知识,包括电平实现、门电路工作原理及实际调试技巧,适合电子技术爱好者和初学者学习参考。

weixin_29252171的博客 320

PyTorch实战:5步搞定Res2Net图像分类模型(附完整代码)

本文详细介绍了如何使用PyTorch在5步内构建高性能Res2Net图像分类模型,包括环境配置、核心模块实现、完整网络架构搭建、训练流程优化及模型部署技巧。Res2Net通过多尺度特征融合机制显著提升图像分类性能,附完整代码帮助开发者快速实践。

java5的博客 1022

设计模式->如何抽象出对象

这里说对象,而不说类,是因为我们总是先发现了对象,然后抽象出类的。绝不是相反的,不然很别扭,很不符合认知习惯。你要教你小孩鸟类这个概念你总不会说世界一种鸟类,有翅膀、有羽毛,会飞。看这就是鸟。你想你小孩会怎样,一脸蒙逼,但是你拿个模型呢,或者去宠物市场呢,看到一只鸟,再和你小孩讲解鸟类就容易很多。 那么两者的关系呢,个人理解从对象抽象出类,从类具象化为对象。在代码层面上先发现对象,然后定义类,然...

u014695894的博客 1045

在轻量化与精度之间取得平衡:YOLOv8 + GhostNet 的设计与实验分析

摘要: GhostNet系列(GhostNet、GhostNetv2、GhostNeXt)通过“幽灵特征图”技术,以极低计算量生成丰富特征,为YOLOv8提供轻量化改造方案。该技术能在减少参数量与计算量的同时保持或提升检测精度,适用于边缘设备部署。实现时需替换YOLOv8的Backbone为GhostNet模块,并通过消融实验验证其有效性。实验数据表明,改造后的模型在参数量降低30%的同时,推理速度提升28.6%,mAP@0.5最高提升1.9个百分点,平衡了轻量化与精度,为毕设提供技术创新性与工程落地性的双

m0_64661770的博客 194

Java:抽象成类找对象

抽象与类 抽象:   从特定的出发,从已经存在的一些事务中抽取所要关注的特性、行为,从而形成一个新的事物的思维逻辑,是一种从复杂到简洁的思维方式。 类:   具有相同特性(状态)和行为(功能)的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例就是对象,类实际上就是一种数据类型。 类具有特性,对象的状态,用成员变量来描述 类具有功能,对象的行为,用方...

simple的博客 537

YOLO26涨点改进 | 独家创新,细节涨点改进篇 | CVPR 2025顶会 | YOLO26引入Mona即插即用模块, 含MoCAA和DyTMona二次创新改进,含多种创新改进高效发论文

本文给大家介绍Mona即插即用模块, 含MoCAA和DyTMona二次创新模块优化YOLO26模型。YOLO26引入 Mona通过引入多尺度视觉友好型卷积滤波器(如3x3、5x5、7x7深度卷积)和可伸缩归一化层来优化适配器设计,以更好地处理视觉信号并调节输入特征分布。YOLO26引入Mona即插即用模块, 含MoCAA和DyTMona二次创新改进,含多种创新改进高效发论文。适合目标检测、图像分割、图像分类等所有CV任务通用即插即用模块。

Ai缝合怪、助力小伙伴高效发论文 239

【微服务】Spring AI Alibaba Jmus 从部署到项目实战详解

Spring AI Alibaba Jmus 从部署到项目实战详解

congge 4185

JAVA面向对象四大特性:多态、继承、抽象、封装

一、多态(晚绑定;运行时;一个接口,多种实现)面向对象的四大特性:封装、继承、多态、抽象。从一定角度来看,封装和继承几乎都是为多态而准备的。是最重要的知识点。多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其...

二一点 1万+

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Java 中的类与对象和继承与抽象类

在 Java 编程中,类与对象、继承与抽象类是非常重要的概念。它们是面向对象编程的基础,帮助我们更好地组织和管理代码,提高代码的复用性和可维护性。// 属性int age;// 方法System.out.println("我叫 " + name + ",今年 " + age + " 岁,我是 " + gender + "。");System.out.println(name + " 正在走路。");在上述示例中,我们定义了一个名为 Person的类,它具有两个属性:name和 age。

Kitten_DC的博客 1670

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【0基础保姆级】Java类、实例、对象、抽象(用水杯/画小狗讲透,一看就懂)

🔥【纯新手必看】不用官方术语,用水杯、画小狗的例子讲透 Java 类、实例、对象、抽象! 全程大白话,搭配可直接复制运行的代码,从 “图纸造实物” 的逻辑拆解核心概念,0 基础也能一眼看懂,告别面向对象的弯弯绕绕,看完就能上手写代码!

小雪的博客 933

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Java基础——类、接口、抽象类、对象

初学Java时,对这几个概念似懂非懂,一知半解。在这里总结下。 类 类:是一种抽象的集合,是对现实世界中具备共同特征的实体的集合抽象。 类的关键字:class。类可以实例化,指某一具体对象 类的定义形式如下 public class Object { //具体代码省略 }举个栗子: 银行可以是一个类,是对所有银行对象的抽象。 2. 接口 接口:一系列方法的声明,是

yuzhi1022 369

Java中的对象、类、抽象类、接口的理解

更好阅读体验:Java中的对象、类、抽象类、接口的理解 1.对象 对象是个具体的东西,有着明确的属性特征和行为特征。 例如:你手上牵着的女朋友或男朋友就是个具体的对象。 如图中的苏格兰折耳猫,特征是耳朵向下呈折叠状,有着具体的颜色(你看到的颜色),并且和其他猫科动物有着共同的基本特征。 2.类 类是个抽象的东西,有着一些基本属性和行为。 例如:你的对象是某类人(男人、女人等),但具体是哪个就不知道了,因为Ta还没出现(还没实例化)。 以下三个都是同一类猫,统称为苏格兰折耳猫,特征是耳朵向

持 开源思想,撰 必胜所学,望 勤学者,无难处 730

对「Java」中对象、类、抽象类、接口的理解

类和对象 一个对象对应一个实体,用代码来描述实体的状态和行为。而如果一切皆对象,那么由什么来决定某一类的对象的外观和行为呢,也就是对象的类型(Type)。也就是说,类是对一类具有相同外观和行为的对象的抽象。 先有对象还是先有类 看似是先有鸡还是先有蛋的哲学问题,其实从现实生活中发现。是先有实体的存在,然后人们将这些实体的外观和行为统一抽象概括。比如说:你我他、小明的存在。我们都被归于人这个类型,因为我们具有相似的外观和行为。 抽象是有层次的 对某一类的对象的抽象程度不同,形成的类在抽象层次树中的位置不同。继

weixin_42862555的博客 991

java类、抽象类、接口、继承和对象解析

这不是什么教材,笔者有时会在论坛上瞧瞧,看到不少初学者问到很多问题,这些问题是java程序员应该懂得的,而一般书上不会讲到或者一笔带过的知识。因此斗胆涂鸦一篇文章,把想说的在这里一口气说完。这也是本人第一次写技术性的文章,文笔不畅之外,还请各位见谅。首先讲清楚类和对象的区别。类是广泛的概念,表示一个有共同性质的群体,而对象指的是具体的一个实实在在的东西。例如,“人”是一个类,它可以表示地球上所有的

Go for it! 1900

Java中的类、对象、抽象

学了很久的JAVA了,已经进入J2EE企业级应用的学习,今天逛论坛碰到的问题,忽然感觉自己真像老师说的是一个漏斗,只是漏的快慢的问题,所以特此记录下来,以作警示!1.什么是类?2.什么是对象?3.什么是抽象?类:1)书面的定义是:类就是具有相同属性和行为的对象集合(抽象)。2)我的理解:类不是具体的实体(如苹果),而是对实体的抽象概念化(如水果),世界上本来没有类这个东西,只是人类为了更好的理

ziran_dhw123的专栏 563

对Java中对象、类、抽象类、接口的理解

对Java中对象、类、抽象类、接口的理解类和对象先有对象还是先有类抽象是有层次的抽象类的形成抽象类的构成抽象类和普通类接口的意义接口和抽象类接口的构成 类和对象 一个对象对应一个实体,用代码来描述实体的状态和行为。而如果一切皆对象,那么由什么来决定某一类的对象的外观和行为呢,也就是对象的类型(Type)。也就是说,类是对一类具有相同外观和行为的对象的抽象。 先有对象还是先有类 看似是先有鸡还是先有...

帝轩的博客 419

Java开发基础系列(四):类与对象概述及使用

Java开发基础系列(四):类与对象概述及使用

一恍过去 2万+

类与对象,抽象的类小结

类和对象的区别:  类:学生,车,桌子  对象:小明同学(名字,身高),凯迪拉克(颜色,大小,能加速),黄色的桌子(长、宽、高,能摆书)构造方法和类同名,且没有返回值,不能带有数据类型,构造方法(和new同时使用,new person();new调用的是构造方法)类中若没有定义构造方法,系统默认一个隐藏的构造方法,默认属性赋值为0类名首字母大写,变量名,方法名,首字母小写,若多个单词组成,后面的字...

Fessil的博客 1509

06从抽象类shape类扩展出一个圆形类Circle

请从下列的抽象类shape类扩展出一个圆形类Circle,这个类圆形的半径radius作为私有成员,类中应包含初始化半径的构造方法。 public abstract class shape {// 抽象类 public abstract double getArea();// 求面积 public abstract double getPerimeter(); // 求周长 } 主类从键盘输入圆形的半径值,创建一个圆形对象,然后输出圆形的面积和周长。保留4位小数。 圆形类名Circle 裁判测试程序样例:

ihopeyousuccess的博客 3040

类、对象、抽象类、接口概述

java重新学习之 什么叫类? 类是现实世界中某一类具有相同特征或行为的事物(对象),抽象出来的。 类是广泛的概念,而对象则是该类的具体实例。 例子:人是类,因为人们都具有很多相似的特征(眼,鼻子等等)或行为(吃饭、睡觉、拉粑粑)。所以人就是类。 那小明就是类的一个实例。是世界中实实在在能看得到摸得到的人,所以,小明就是对象。 什么叫对象? 对象,就是类的一个个实例。 对象的抽象化就是类,类的具...

初步成长的程序员 813

java重点——面向对象--类与对象、抽象、封装

1、面向对象的编程思想 1.1、面向过程的编程思想 面向过程的编程思想,就是以流程(过程)为单位,更注重最后功能的实现。 缺点: 1、 代码的耦合性(关联性)比较高 2、 不易于程序的维护和功能的扩展 1.2、面向对象的编程思想 【面向对象的编程依赖于面向过程的编程】 面向对象的编辑思想,就是把一个事物看成一个整体,从事物的特征(属性)和行为(功能、 方法)两个方面进行描述。 Java 语言是一门纯面向对象的编程语言,而面向对象思想是一种程序设计的思想,我们在面 向对象的指引下,使用 java 语言去设计、

vlucky_long的博客 720
上一篇: Java基础:第二十五讲 软件系统的对象与现实世界对象的关系
下一篇: Java基础:第二十七讲 类的定义
老李-大连
博客等级 码龄20年 3206粉丝 308原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值