类、对象、方法、实例方法、类方法

类实例化了就是对象,

类的方法不能用,除了static方法,

对象的方法不是static的也可用,

用类名引用的就是类方法,

用对象名引用的就是对象方法。


比如

class a
a ddfdf=new a();
a.f();  //这个是类的方法,这个方法必得是静态的才行。通常用来取得类的选代器或取的类本身的一个对象
ddfdf.f();  //这个是对象方法。

静态方法必须定义成static的,在类被实例化以前就已经存在于内存中
静态方法是所有该类的实例也就是对象共有的方法
非静态方法,
只有在类Test被实例化以后,才被加载到内存中,具体存储在堆中,
非静态方法是每个该类的实例也就是对象所私有的
静态方法必须既可以用类名直接调用,也可以用对象来调用
非静态方法只能用对象来调用

类是封装好的,像一个模型;对象是有类实例化的,也就像一个具体的样本!通俗来说吧,比如说“人”就是一个类,而你就是一个实例即对象

类和对象的区别
1,类是一个抽象的概念,它不存在于现实中的时间/空间里,类只是为所有的对象定义了抽象的属性与行为。就好像“Person(人)”这个类,它虽然可以包含很多个体,但它本身不存在于现实世界上。
2,对象是类的一个具体。它是一个实实在在存在的东西。
3,类是一个静态的概念,类本身不携带任何数据。当没有为类创建任何对象时,类本身不存在于内存空间中。
4,对象是一个动态的概念。每一个对象都存在着有别于其它对象的属于自己的独特的属性和行为。对象的属性可以随着它自己的行为而发生改变。

一、类和对象的区别
1、定义不同

类是现实世界或思维世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起。

对象是具有类类型的变量。类和对象是面向对象编程技术中的最基本的概念。

2、范畴不同

类是一个抽象的概念,它不存在于现实中的时间、空间里,类知识为所有的对象定义了抽象的属性与行为。

对象是类的一个具体。它是一个实实在在存在的东西。

3、状态不同

类是一个静态的概念,类本身不携带任何数据。当没有为类创建任何数据时,类本身不存在于内存空间

对象是一个动态的概念,每一个对象都存在着有别于其它对象的属于自己的独特的属性和行为,属性可以随着它自己的行为而发生改变。

二、类和对象的关系

类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。

类与对象的关系就如模具和铸件的关系 类的实例化结果就是对象,而对一类对象的抽象就是类,类描述了一组有相同属性和相同方法的对象。

扩展资料

使用类时的注意事项:

1、类的成员可以是其他类的对象,但不能以类自身的对象作为本类的成员,而类自身的指针和引用可以作为类的成员。

2、类定义必须以分号“;”结束。

3、类与结构体的区别:没有明确指定类成员的访问权限时,C++结构体的成员是公有的,而类的成员是私有的。

类是一个抽象的概念;
而对象是类抽象概念的实物表达;
打个比方:
比如水果摊进了一批水果(就好比是类);
然后就去问卖家有哪些新鲜的水果;
店家说有苹果、梨、桃等等(这里的苹果、梨、桃就是对象);
也就是说对象是类的具体表达;
而类则是对象的抽象表达。

类方法必须既可以用类名直接调用,也可以用对象来调用;对象方法只能用对象来调用。

实例方法是建立实例才有的方法
类方法是直接可以使用类引用,不需要实例化就可以使用的方法,一般在项目中类方法都是设置为工具类使用的

实例方法是必须创建了一个类的实例之后才能调用的方法 属于一个特定的实例 调用方法为 实例名.方法名();
而类方法是属于一个类的 是类的静态方法。可以一用类字节调用 ;调用方法是 类名.方法名();
类方法主要用于工具类的方法。

猜你喜欢

转载自www.cnblogs.com/arrows/p/10407476.html
今日推荐