static变量和方法

//static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法。被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。静态方法可以直接通过类名调用,任何的实例也都可以调用。因此静态方法中不能用this和super关键字,不能直接访问所属类的实例变量和实例方法(就是不带static的成员变量和成员方法),只能访问所属类的静态成员变量和成员方法。

在类中,用static声明的成员变量为静态变量,或者叫做:类变量。

  它为该类的公用变量,属于类,被该类的所有实例共享,在类被载入时被显示初始化。

  对于该类的所有对象来说,static成员变量只有一份,被该类的所有对象共享!

  可以使用“对象.类属性”来调用。不过,一般都是用“类名.类属性”

  static变量置于方法区中!

用static声明的方法为静态方法

  不需要对象,就可以调用(类名.方法名)

  在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可访问非static的成员

代码示例:

public class Student {
    //静态的数据
    String name;
    private int Id;

    static int ss;

    public static void printSS(){
        System.out.println(ss);
    }
}

public class test1 {
    public static void main(String[] args) {
        Student.ss = 32;//调用静态数据
        Student.printSS();//调用静态的方法
    }
}
时间: 2024-10-17 23:28:24

static变量和方法的相关文章

java执行程序的内存分析系列专栏二之static变量和方法内存分析

昨天写了简单的聊了下java执行程序时简单的内存划分,今天我们接着往下聊,聊聊static变量和方法的内存分析. 1.static变量和方法的第一个特性内存分析 statiic变量和方法的第一个特性能通过类名.static变量和类名.static方法的形式调用,而普通只能对象的形式调用.但具体为什么是这样的,这得分析static变量和方法他们在内存中怎样分配的,因此在这里我首先建立一个学生类,里面有一个普通成员变量和一个静态成员变量以及一个普通方法和一个成员方法,然后建立了一个测试学生的类. 1

Java知识点整理(9)——static变量和方法

1.在类中,用static变量声明的成员变量叫静态变量,或者叫做类属性.类变量.它为该类的公有变量,属于类,被该类的所有实例共享,在类被载入时被显式初始化. 2.类变量是类的公有变量,属于类,被该类的所有实例共享,当类被载入时显式初始化. 3.可以使用“对象.类属性”来调用.不过,一般都使用“类名.类属性”. 4.static变量置于方法区中. 5.用static声明的方法称为静态方法.不需要对象就可以调用(类名/方法名). 6.static方法只能使用static变量,非static方法可以使

转:Java中子类是否可以继承父类的static变量和方法而呈现多态特性

原文地址:Java中子类是否可以继承父类的static变量和方法而呈现多态特性 静态方法 通常,在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法,关于static方法,声明为static的方法有以下几条限制: 它们仅能调用其他的static 方法. 它们只能访问static数据. 它们不能以任何方式引用this 或super. 无论是static修饰的变量,还是static修饰的方法,我们都知道他们是属于类本身的,不是属于某一个对象的,当声明一个对象时,并不产生sta

java中static变量和方法的总结

转自:http://blog.csdn.net/haobo920/article/details/5921621 java中一切皆是对象 一个类中对象的定义一般都是分一下的两步来进行的:1/    A a;                                     //定义了一个类A的引用2/    a=new A("10","2563");        //真正地建立了对象a,也就是a指向了内存中一块连续的区域 也就是说通常我们说的创建了一个类,只

Java static 变量,方法 静态初始化化块

static修饰的变量和方法属于类,在类加载时在内存中分配空间: 调用时可以直接通过类名调用,当通过创建对象改变的是静态变量时,那么该静态变量就改变了: 静态方法中不能直接访问非静态的成员变量和方法,可以通过创建对象访问:反之,非静态的成员变量可以访问静态的变量和方法: 可以通过构造器,初始化块和静态初始化块来给成员变量赋值:相比于构造器和初始化块在没创建一个对象时执行一次,并且初始化块在构造器之前执行:静态代码块只执行一次:

java static 变量,和方法从属于类

第36集 可以用类来直接调用static属性和方法 static方法不能调用非静态的属性和方法,反之可以 new产生的对象,不包括static 属性和方法

四.OC基础--1.文档安装和方法重载,2.self和super&static,3.继承和派生,4.实例变量修饰符 ,5.私有变量&私有方法,6.description方法

四.OC基础--1.文档安装和方法重载, 1. 在线安装 xcode-> 系统偏好设置->DownLoads->Doucument->下载 2. 离线安装 百度xcode文档 3. 方法重载: 是指在一个类中定义多个同名的方法 在OC中没有重载 2.self和super&static, self和super: 1. self理解: 谁调用当前方法, self就代表谁. 比如: 在对象方法中,self代表的是对象, 因为只有对象才可以调用对象方法 在类方法中, self代表的

Java中的null对象也可以访问static成员变量和方法

声明:本博客为原创博客,未经允许,不得转载!小伙伴们如果是在别的地方看到的话,建议还是来csdn上看吧(链接为 http://blog.csdn.net/bettarwang/article/details/26515271),看代码和提问.讨论都更方便. 一般来说,一个类的对象要在实例化之后才可以访问类中的成员变量和方法.如果它还是null,通常意义上我们就认为它不能访问类中的成员.实际上确实不提倡这样,而且null对象确实不能访问实例成员(变量和方法),否则会引发NULLPointerExc

实习第一天:static 声明的 变量和 方法

static 声明的 变量和 方法   既可以用类.变量或者类.方法来调用 order by表格:Store_Information表格 Name Sacles DAteAngeles 1500 1999Diego 250 1990Fransisco 300 1998 按照Sales栏位的有大到小列出Store_Information表格的内容SELECT Name,Sacles,DAteFROM Store_InformationORDER BY Sales DESC; //BY对于的是Sac