关于面向对象中的“静态”概念的理解

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

        MSDN的C#编程指南中有这么一段描述“静态类和类成员用于创建无需创建类的实例就能够访问的数据和函数。静态类成员可用于分离独立于任何对象标识的数据和行为:无论对象发生什么更改,这些数据和函数都不会随之变化。当类中没有依赖对象标识的数据或行为时,就可以使用静态类。”

        这是关于“静态”的描述,现在看来这段描述已经比较清晰了。但在最初学习面向对象编程的时候,对于静态这个概念很糊涂,甚至觉得很神秘,不知道什么时候使用静态定义,以及如何使用现成的静态定义。期间也看过很多教程之类的,但大多都是照本宣科对其概念一略而过,说的都千篇一律,没有很白话的告诉我什么是静态,为什么要用静态。

        后来经过不断的看例程,和测试代码,才忽然明白,原来静态就是不可实例化的类、属性或方法的一种定义,要使用这些静态的类、属性和方法,必须从类引用,不能从对象引用,也就是说静态是不依赖具体对象范畴内的定义,或者说不论怎么具体实例化这些定义都是不会变的,为了简化这些共性的定义不必要的实例化,就要把他们静态化处理,更易于管理。

2、面向对象方法 概念理解 之前写了一篇面向对象,比较容易让人理解面向对象是什么东西 https://blog.csdn.net/moon_tang/article/details/97235464 接下来,说说面向对象中的一些概念,此篇文章的内容自动认为你已经知道了面向对象具体是什么,不知道的去看上面那篇博客 1、****面向对象方法解决问题的思路是:从显示世界中客观对象(如人和事物)入手,尽量运用人类的自然思维方式从... 阅读详情

相关推荐

面向对象下(static)

static关键字的使用 1、static:静态的 2、static可以用来修饰:属性,方法、代码块、内部类 3、使用static修饰属性:静态变量(类变量) 3.1属性:按是否使用static修饰,又分为:静态属性 vs 非静态属性(实例变量) 实例变量:我们创建类的多个对象,每个对象都独立的拥有一套类中的静态属性。当 修改其中一个对象中的静态属性时,不会导致其他对象中相同的...

weixin_56760130的博客 297

Java 面向对象:static的理解

Java 面向对象:static的理解以及各个代码块的运行顺序 一、static关键字 static修饰方法——称为类方法,可以直接通过类名调用 static修饰变量——称为类变量,能被类中所有实例共享 二、代码块的运行顺序 单个类的加载顺序: 静态代码块(只执行一次) 匿名代码块(用于赋初始值) 构造器 普通代码块 示例: test类 package Day0204.Demo04; //依次执行静态代码块(只执行一次)、匿名代码块(用于赋初始值)、再到构造器 public class Test {

KUNKING1958的博客 305

Java—面向对象(高)——类变量/静态变量

什么是类变量 类变量也叫静态变量/静态属性,是该类的所有对象可以共享的变量,任何一个该类的对象去访问它时,取到的都是相同的值。同样,任何一个该类的对象去修改它时,修改的也是同一个变量。 一、类变量定义语法 访问修饰符 static 数据类型 变量名;(推荐使用这种) static 访问修饰符 数据类型 变量名; 二、如何访问类变量 类名.类变量名;(推荐使用这种) 对象名.类变量名; 【静态变量的访问修饰符的访问权限和范围和普通属性是一样的】 三、类变量的使用细节和注...

weixin_61843013的博客 691

C/C++中使用static关键字定义或声明静态对象

在C/C++中使用static关键字来定义或声明静态对象,主要有以下的应用场景: (1)static修饰局部对象,使其成为静态局部对象 将一个函数中定义的变量声明为static对象,那么在函数被多次调用的过程中,静态局部对象会持续存在并保持它的值。 (2)static修饰类成员,使其成为类静态成员 static即可以修饰类成员变量,也可以修改类成员函数,是他们成为类静态成员。类静态成员是与

@_囚徒-2018_的家园 2814

静态对象(全局+局部+静态对象成员)

所有的静态对象、全局对象都于静态存储区分配。关于全局对象,是在main()函数执行前就分配好了的。其实,在main()函数中的显示代码执行之前,会调用一个由编译器生成的_main()函数,而_main()函数会进行所有全局对象的的构造及初始化工作。而在main()函数结束之前,会调用由编译器生成的exit函数,来释放所有的全局对象。比如下面的代码: void main(void) ...

3432

java中的多态和继承---"编译看左边,运行看右边"(多态执行)

老毕的"编译看左边,运行看右边"(多态执行)   (对面向对象语言理解多态、继承很有帮助~~~)   老毕在讲到多态执行问题时,结合下面的例子,给我们总结了一套口诀:“成员变量,静态方法看左边;非静态方法:编译看左边,运行看右边。”意思是:当父类变量引用子类对象时(Fu f = new Zi(); ),在这个引用变量f指向的对象中,他的成员变量和静态方法与父类是一致的,他的非静态方法

foreverhuylee的专栏 1万+

java多态看左边右边_java中的多态和继承---"编译看左边,运行看右边"(多态执行)...

老毕的"编译看左边,运行看右边"(多态执行)(对面向对象语言理解多态、继承很有帮助~~~)老毕在讲到多态执行问题时,结合下面的例子,给我们总结了一套口诀:“成员变量,静态方法看左边;非静态方法:编译看左边,运行看右边。”意思是:当父类变量引用子类对象时(Fu f = new Zi();),在这个引用变量f指向的对象中,他的成员变量和静态方法与父类是一致的,他的非静态方法,在编译时是与父类一致的,...

weixin_29535577的博客 149

C++面向对象静态成员和静态

C++学习笔记:静态成员和静态类1.类的静态成员1.1 static关键字1.2 什么是静态成员1.3 静态成员的特征和实践验证2.静态成员的深度理解2.1静态数据成员的使用2.2 静态成员和普通成员的互相调用规则2.3 从内存角度来看静态成员3.静态成员的用途3.1 用途举例3.2 静态成员与面向对象4.静态类的概念4.1 什么是静态类4.2 静态类的优势4.3 C++不支持静态类 1.类的静态成员 1.1 static关键字 static关键字在C语言中有2种用法:static修饰局部变量和全局变量,这

Hundreays 9851

深入理解Python中的面向对象编程(OOP)

在Python编程领域中,面向对象编程(Object-Oriented Programming,简称OOP)是一种强大而灵活的编程范式,它允许开发者以对象为中心组织代码,使得程序结构更加清晰、可维护。在本文中,我们将深入探讨Python中的面向对象编程,介绍关键概念,并通过实例演示如何利用OOP构建更健壮的应用。

一键难忘的博客 4810

java面向对象理解_java胜于C语言,却又静态面向对象,简单?

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、We...

weixin_39818014的博客 2533

面向对象概念

面向对象最关键的两个词汇是类和对象。面向对象就是:把数据及对数据的操作方法放在一起,作为一个相互依存的整体

m0_65386984的博客 4969

面向对象理解及相关概念(封装,继承,多态)

前言 面向对象程序设计(OOP)是当今主流的程序设计范性,它取代了结构化或过程式编程技术。 一、面向对象是什么? 1、定义: 面向对象就是:把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象。对同类对象抽象出其共性,形成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。程序流程由用户在使用中决定。对象即为人对各种具体物体抽象后的一个概念,人们每天都要接触各种各样的对象,如手机就是一个对象。 java中有一个概念就是万物皆可对

m0_51167384的博客 4195

如何理解面向对象思想

我们学习JAVA语言必须要掌握对象和类,这样的话就可以更深层次的理解JAVA这种面向对象的程序开发理念,从而更好更快  地掌握JAVA的变成思想和方法。掌握类和对象是JAVA语言变成的基础。那么,问题来了,到底什么是对象和类呢? 一:对象 关于对象的理解其实非常简单。在我们的身边,每一种事物都是一种对象,统筹一句话概括就是,对象是事物存在的实体。例  如:电视、汽车、书桌、

LK764265808的博客 1万+

关于Java面向对象理解

前言 这是Java系列的第二篇文章,其实在年初的时候我就给我自己定下了目标,要重新走一遍所有Java有关的知识,所以应该会写很多,会把我的面试经历,日常踩坑都写进去,有兴趣的大佬可以看看。 面向对象 Java是一款优秀的面向对象编程语言,既然是面向对象,那么我们必须清楚面向的对象是什么?面向的对象在哪里? 首先我们来解答一下什么是面向对象面向对象程序设计的主要精神是将存在于日常生活中的对象概念应用在软件设计的发展模式中,着重于对象的分解与相互作用,重点是强调程序代码的可读性、可重复使用性与扩展性,让程序

我是新手的博客 2093

面向对象的核心概念

1.面向对象的核心概念 从理论上说,面向对象技术拥有四大基本特性。 (1)封装 这是一种隐藏信息的特征。封装这一特性不仅大大提高了代码的易用性,而且还使得类的开发者可以方便的更换新的算法,这种变化不会影响使用类的外部代码。可以用以下公式展示类的封装特性: 封装的类=数据+对此数据所进行的操作(即算法) 通俗的说,封装就是:包起外界不必需要知道的东西...

a5868530的博客 2409

你是如何理解Python中的面向对象编程的?

现如今面向对象编程的使用非常广泛,本文我们就来探讨一下Python中的面向对象编程。 Python支持多种类型的编程范式,例如过程式编程、函数式编程面向对象编程,而且还可以融合多种类型的范式。 现如今面向对象编程的使用非常广泛。面向对象编程的基本元素是对象,其包含的数据成员称为属性,函数(例程、过程)称为方法。 对象是类的实例。换句话说,类主要定义对象的结构,然后我们以类为模板创建对象。类不但包...

chen801090的博客 945

如何理解 Python 中的面向对象编程

现如今面向对象编程的使用非常广泛,本文我们就来探讨一下Python中的面向对象编程。 作者 |Radek Fabisiak 译者 |弯月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 以下为译文: Python支持多种类型的编程范式,例如过程式编程、函数式编程面向对象编程,而且还可以融合多种类型的范式。 现如今面向对象编程的使用非常广泛。面向对象编程的基...

CSDN资讯 2085

对“面向对象“的理解

面向对象(Object Oriented,OO)的方式,将现实世界的事物抽象成对象,现实世界中的关系抽象成类、继承,帮助人们实现对现实世界的抽象与数字建模。通过面向对象的方法,更利于用人理解的方式对复杂系统进行分析、设计与编程。      首先根据客户需求抽象出业务对象;然后对需求进行合理分层,构建相对独立的业务模块;之后设计业务逻辑,利用多态、继承、封装、抽象的编程思想,实现业务需求;最后通过

程雅丽的博客 1608

37 Java中的静态变量静态方法:掌握类的共享力量

在Java中,静态变量静态方法是与类相关联的,而不是与类的实例(对象)相关联。它们在类加载时初始化,并且在整个程序的生命周期中保持不变。静态变量(Static Variables):静态变量是属于类的变量,而不是属于类的实例。它们在类加载时初始化,并且在类的所有实例之间共享。静态方法(Static Methods):静态方法是与类相关联的方法,而不是与类的实例相关联。它们可以直接通过类名调用,而不需要创建类的实例。

xycxycooo的博客 1902
上一篇: 关于MOSS2007的用户权限的思考
下一篇: asp.Net2.0中TextBox只读的设置方法
loadown
博客等级 码龄19年 9粉丝 18原创
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值