黑马程序员技术交流社区

标题: 新手求大神解惑 [打印本页]

作者: 进击的大鹏    时间: 2014-9-1 22:54
标题: 新手求大神解惑
  请问类和对象区别是什么, 还有什么时候用static 修饰符。
作者: 柳超    时间: 2014-9-1 23:08
类就是把事物的描述比如人就可以是一个类,对象就是类的一个实在的个体也就是一个人,static修饰成员时,成员变量被你实例化的对象共享,方法被static修饰时,在类被加载到内存时就会被加载到内存方法区,所以不需要把类实例化就可以类名加点加方法名调用方法
作者: 丁夏宁    时间: 2014-9-1 23:19
对象就是现实中的具体事物,具有自己的属性和行为。类就是对象的抽象表现形式,描述对象的。static        用于修饰成员变量,方法,类名调用,属于类,不属于对象,对象的共享数据
作者: hmyuanqi    时间: 2014-9-1 23:27
类是对事物的描述,对象是对类的实例化,也就是一个封装体。
作者: hmyuanqi    时间: 2014-9-1 23:28
不好意思,还没说完。

静态的特点:1.随着类的加载而加载。也就是说静态会随着类的消失而消失,说明它的生命周期最长。2.优先于对象存在,明确一点:静态是先存在的,对象是后存在的。3.被所有对象所共享,4.可以直接被类名所调用。

什么时候使用静态?
要从两方面来讲:因为静态修饰的内容有成员和函数。
1.什么时候定义静态变量(类变量)呢?
当对象中出现共享数据时,该数据被静态所修饰。
对象中的特有数据要定义成非静态存在于堆内存中。
2.什么时候定义静态函数呢?
当功能内部没有访问到非静态数据(对象的特有数据),那么该功能可以定义成静态的。
作者: xpsyztd    时间: 2014-9-1 23:43
类是对象的抽象,而对象时类的具体实例。类是抽象的,不占内存的,而对象时具体的,占用存储空间。如果想有一个可以再类的所有实例中共享的变量,比如,这可以使用作实例之间交流的基础或者追踪已经创建的实例的数量。可以用关键字static来标记变量的办法获得这个效果。
作者: 低调小邦    时间: 2014-9-2 00:39
类:是相关的属性和行为的集合。是一个抽象的概念。类是对象的抽象表达形式
对象:是某种事物的具体存在,具体的表现形式。对象是类的实例化

static关键字的总结
(1)是一个关键字。可以修饰成员变量和成员方法。
(2)静态的特点:A:随着类的加载而加载
                     B:优先于对象存在
                     C:被类的所有对象共享
                     D:可以通过类名调用
(3)静态的注意事项:
                    A:在静态方法中是没有this关键字的。
                    B:静态方法只能访问静态的成员变量和静态的成员方法。
(4)静态内容的调用:
                A:被对象调用
                B:被类名调用
         推荐被类名调用。
(5)什么时候该用static呢?
        如果某个内容是所有对象共享的,就用静态修饰。

作者: 袁枭飞    时间: 2014-9-2 08:55
类是一个抽象的概念,也可以说是属性和行为的集合,对象就是类里面的具体事物,实例化的一个对象。静态修饰符是当这个内容是静态的可以被共享时才会使用
作者: Apologize丶    时间: 2014-9-2 12:58
我理解的类就是一个整体,对象就是这个整体里的一个抽象.他也拥有这个整体的特征丶
作者: yl82846094    时间: 2014-9-2 13:09
看看!!!!!
作者: yl82846094    时间: 2014-9-2 13:10
看看!!!!!
作者: 大王小王    时间: 2014-9-2 14:54
对象就是某一个人,比如王二小,类就是指的是一类统筹说法,比如香港人,北京人
作者: 空洞的望着窗外    时间: 2014-9-2 15:20
类是抽象的,对象是实在的,static是共享的。
作者: 新新人类嘿嘿嘿    时间: 2014-9-2 17:55
对象:客观世界存在的一切可以被描述的,都称为对象,正所谓 万物接对象。
类:具有相同属性和方法的一组对象的集合

类是对象的类型,是抽象的。
而对象是类的实例化




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2