• 静态方法跟实例方法有什么区别


    体形式如:     类名.方法名

    而实例化时必须使用new关键字,具体格式如:
    ArrayList one=new ArrayList();

    静态是类的,实例是对象的.oo的观点就是静态成员就是类所有对象所具备的特点,而实例成员是每个对象自有的实现,是不一样的.比如说每个人都有头发,眼睛,耳朵,名字,性别,年龄,身高等等.这些都是静态的,但是每个人的这些属性是不一样的,这些不同的属性就是实例化.所以也可以说静态方法不需要依赖类当中的属性,静态方法本身就可以封闭的完成一个功能,而实例的方法更多会用到类中的属性.
    静态方法在它一启动的时候就实例化了,因而静态内存是连续的,而且静态内存是有限制的;而实例方法是在程序运行中生成内存的,实例申请的是离散的空间.静态方法大多用的数据连接上.

    关于静态方法和实例方法的一些误区。 一、 静态方法常驻内存,实例方法不是,所以静态方法效率高但占内存。 事实上,方法都是一样的,在加载时机和占用内存上,静态方法和实例方法是一样的,在类型第一次被使用时加载。调用的速度基本上没有差别。 二、 静态方法在堆上分配内存,实例方法在堆栈上。 事实上所有的方法都不可能在堆或者堆栈上分配内存,方法作为代码是被加载到特殊的代码内存区域,这个内存区域是不可写的。 三、 实例方法需要先创建实例才可以调用,比较麻烦,静态方法不用,比较简单。 事实上如果一个方法与他所在类型的实例无关,那么它就应该是静态的,决不会有人把它写成实例方法。所以所有的实例方法都与实例有关,既然与实例有关,那么创建实例就是必然的步骤,没有...

    静态方法中的代码只能使用类的静态成员,而不能直接使用非静态成员。这是因为静态方法属于类所有,在其中不能判断非静态成员究竟属于那个对象。而实力方法既能够使用静态成员,也能够使用非静态成员。

    静态构造函数

    实例构造函数属于对象所有,而是用static修饰符的静态构造函数为类的所有对象共享,并且只在首次使用该类时被调用。

  • 相关阅读:
    关于cookies、sessionStorage和localStorage解释及区别
    冒泡排序到demo
    关于Spring配置文件提示的插件下载
    js动态获取浏览器或页面等容器的宽高
    16JavaScript for循环
    15JavaScript switch语句
    14JavaScript条件语句
    第一天 评分卡模型
    SQL面试50题
    第七章-模型评估
  • 原文地址:https://www.cnblogs.com/oo_o/p/5463244.html
Copyright © 2020-2023  润新知