6.static、final关键字

1.静态成员变量

   1.1既可以用对象名来调用,也可以直接用类名来调用

Person.i = 10;   //Person是一个类名。i是成员变量;

类名.成员变量= ;

静态变量的功用:被同类的所有实例变量共享的变量。

tip:静态变量会在该类的任何静态方法执行之前就初始化。

1.2他不是对象层次的变量,是类层次的变量,它是属于某个类的。

2.静态函数

2.1函数前面加static关键字,可以用类名直接调用;

2.2因为不能使用this,所以静态函数不能引用非静态的变量。

tip:静态方法不能够调用非静态变量/方法。因为静态的方法是通过类的名称来调用,所以静态的方法无法引用到该类的任何实例变量。

静态方法调用没有对象。

3.静态代码块

他没名字。是在装载类的时候自己执行,为静态成员变量赋初始值,用得少。

适合放静态final变量的起始程序。

static{

代码…………

}

4.final

1.一个被标记为final的变量代表它一旦被初始化之后就不会在改动。

2.java中的常数被定义为public static final double PI = 3.14

常数的名称应该要都是大写字母。

3.final不只用在静态变量上,也可以用来修饰非静态的变量。

final的变量代表不能改变值

final的方法代表不能覆盖

final的类代表不能继承

来自为知笔记(Wiz)

时间: 2024-10-18 12:18:37

6.static、final关键字的相关文章

java进阶11 static final关键字

static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块. 被static修饰的成员变量和成员方法独立于该类的任何对象,也就是说. 它不依赖类的特定的实例,被类的所有实例共享. package Static; public class Static { /* * 使用的情况 * 1:在对象之间共享值时 * 2:方便访问变量 * */ public static void main(String[] args){ Sta

java学习笔记之面向对象static,final关键字

java学习笔记之面向对象static,final关键字 一.static关键字 1.概述: static静态的,被static修饰的成员属于类,不属于单个对象,被所有对象所共享,存在静态区中,静态的成员优先于对象加载到内存中. 2.statc修饰成员的使用方式:(被static修饰的成员变量有默认值) /* 1.可以通过对象直接使用,不推荐使用 2.通过类名调用静态成员 类名.静态成员变量 类名.静态成员方法 */ 3.static的特点 /* 1.在同一个类中,静态成员只能访问静态成员,非静

Java中static final 关键字释惑

static static表示"全局"或者"静态"的意思 1. 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或类变量:另一种是没有被static修饰的变量,叫实例变量.两者的区别是: 对于静态变量在内存中只有一个拷贝(节省内存),JVM只为静态分配一次内存,在加载类的过程中完成静态变量的内存分配,可用类名直接访问(方便),当然也可以通过对象来访问(但是这是不推荐的). 对于实例变量,每创建一个实例,就会为实例变量分配一次内存

static final 关键字

static 声明的变量和方法都是全局的 被static修饰的变量,叫静态变量或类变量:没有被static修饰的变量,叫实例变量. static静态变量一旦生成其内存空间位置不变 static 修饰的属性方法该类中所有对象共享   可通过类名直接调用    (被private修饰除外) final 修饰的变量为常量,不能被修改 final 声明的方法不能被重写 将方法声明为final,那就说明你已经知道这个方法提供的功能已经满足你要求,不需要进行扩展,并且也不允许任何从此类继承的类来覆写这个方法

java中static,super,final关键字辨析

1:static关键字 利:1)对对象的共享数据提供单独的空间存储. 2)修饰的方法可以直接被类名调用 弊:1)生命周期长. 2)访问出现限制(只能访问静态) 它可以有静态方法,静态类,静态变量 2:super关键字 1)使用super关键字调用父类的成员变量和成员方法. 格式1:super.成员变量 格式2:super.成员方法([参数1,参数2...]) 2)使用super关键字调用父类的构造方法 格式1:super([参数1,参数2...]) 总结:this代表当前对象(可以输出或地址).

部分关键字--this/extends/super/static/final/abstract/访问权限总结

1.this关键字的作用 1)调用本类中的属性; 2)调用本类中的构造方法;且只能放首行,且必须留一个构造方法作为出口,即不能递归调用 3)表示当前对象; 2.匿名对象 直接new出来的对象,不创建变量名,且只能使用一次,通常作为方法的参数及返回值使用 3.继承 关键字:extends 通过继承,子类可以直接访问父类中非私有的属性及方法 只允许单继承,但是可以多层继承 子类对象的实例化过程是先调用父类的构造器,再调用子类的构造器; 子类程序调用方法,先调用子类方法,如果子类没有再调用父类中的方法

关于static以及final关键字

Static关键字: 可以用来修饰类中的属性.类中的方法.以及具体的某一个类. 1.用于修饰属性: 则表示该属性属于整个类,不论有多少个对象实例,所有的实例共同拥有一个static静态的成员变量.该变量属于整个类,而并非是某个具体的实例,直接通过类名就可以访问对应的成员变量. 2.用于修饰方法: 用static修饰的方法称为静态方法,被修饰的静态方法可以通过一个实例来直接进行方法调用,也可以通过类名来直接调用类的静态方法. 关于静态方法的继承问题: 静态方法是可以被继承下来的,但是静态方法的子类

java中 static,final,transient,volatile关键字的作用

static 和final static  静态修饰关键字,可以修饰 变量,程序块,类的方法: 当你定义一个static的变量的时候jvm会将将其分配在内存堆上,所有程序对它的引用都会指向这一个地址而不会重新分配内存: 修饰一个程序块的时候(也就是直接将代码写在static{...}中)时候,虚拟机就会优先加载静态块中代码,这主要用于系统初始化:当修饰一个类方法时候你就可以直接通过类来调用而不需要新建对象. final 只能赋值一次:修饰变量.方法及类,当你定义一个final变量时,jvm会将其

Java之static与final关键字

static关键字:可以用于修饰属性,也可以用于修饰方法,还可以用于修饰类 static修饰属性:无论一个类生成了多少个对象,所有这些对象共同使用唯一一份静态的成员变量:一个对象对该静态成员变量进行了修改,其他对象的该静态成员变量值也会随之发生变化,如果一个成员变量是static的,那么我们可以通过类名.成员变量名来的方式来使用它(Java推荐使用这种方式) package com.yuanzijian01; class MyStatic{    static int a; } public c

static和final关键字

static: 我们在两种特殊的情况下会使用static关键字: ①我们想用一个存储区来保存一个特定的数据,无论要创建多少个对象,或者根本不创建对象. ②我们需要一个特殊的方法,这个方法没有与类的任何一个方法相关联. public class StaticInJava { static int i = 47; static void staticTest(){ StaticInJava.i++; } } final: 在谈final之前,我们首先谈下“常数”的概念: ①编译期常数,永远不会改变.