【Java中的静态(static)】教程文章相关的互联网学习教程文章

Java之static【图】

Java 中可以基于一个类创建多个对象,这些对象之间是相互独立的,他们拥有自己的成员。但是有时候我们需要使其共享同一个成员,可以很方便的操作,于是出现了我们的static。  static 可以修饰变量、方法和代码块一、static 修饰的变量 static 修饰的变量称为静态变量或者类变量,他属于某各类所有,并不是某个对象独有的,类的所有对象均可对其修改。比如,野外的一颗柿子树上的柿子,凡是经过的人均可采摘,并且后去的...

[javase学习笔记]-7.12 static关键字的使用场景

这一节我们来看一下在我们开发的过程中,在什么时候我们要用到static关键字进行静态修饰。我们这里所说的静态,无非就是两种,一种是静态变量,一种是静态函数,我们分这两种情况进行说明static关键字的使用场合。一、静态变量我们在7.8节中对static关键字特点和7.9节中成员变量与静态变量区别进行学习的时候就已经很明确的指出了静态变量是共享数据,而对象中封装的特有数据。因此我们可以这样解释:当分析对象中所具备成员变量的...

001.java中static的作用【代码】

static的作用:1.将对象层级提升为类层级 (即将对象可以调用的,提升为对象和类均可调用的成员); //推荐使用类来调用 ClassNme.静态成员 (包括变量、方法、成员对象)2.static修饰的成员,在类加载时即准备完成,而不需要创建对象; //类加载只做一次:1 类名. 的时候会类加载; 2 new 对象时会类加载3.静态成员方法只能访问静态成员,不能访问非静态成员(因为调用该方法时可能还没有创建对象); 而非静态成员方法既能访...

Java Static

在Java中,Static修饰的变量或者方法,可以直接通过类来调用。不使用Static修饰的变量或者方法,只能在将class实例化为object之后,再通过object调用。Static修饰的变量、方法 是在定义类的时候就在内存中创建的,在后续创建对象的过程中不在创建,所有对象使用同一个,访问同一个内存地址。Static方法中只能调用同为Static的变量或者方法。非Static方法既可以调用Static方法、变量,也可以调用Static方法、变量。原文:https://ww...

Java关键字final、static使用总结【代码】

一、final 根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。为什么要这么做,可出于两种理解:设计或效率。 final类不能被继承,没有子类,final类中的方法默认是final的。那么在调用时->类.方法 final方法不能被子类的方法覆盖,但可以被继承。 final成员变量表示常量,只能被赋值一次,赋值后值不再改变。 final不...

Java之static理解

说到关键字static,首先想到了常量,静态变量,本文我总结了下static的用法。  1、静态变量       可以被赋值,便于类访问。  2、静态方法    静态方法与静态变量都可以被private、public修饰。    当JVM加载类时,就会将类的静态方法和静态变量加载到方法区中。且只会加载一次,对所有线程共享,也就说其他线程可以更改方法区中的静态变量。    static final 可以修饰变量和方法,表示常量不可被修改,修饰...

java中static、final、static final的区别

final可以修饰:属性,方法,类,局部变量(方法中的变量) final修饰的属性的初始化可以在编译期,也可以在运行期,初始化后不能被改变。 final修饰的属性跟具体对象有关,在运行期初始化的final属性,不同对象可以有不同的值。 final修饰的属性表明是一个常数(创建后不能被修改)。 final修饰的方法表示该方法在子类中不能被重写,final修饰的类表示该类不能被继承。 对于基本类型数据,final会将值变为一个...

【Java面试题】10 abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?

1、abstract是抽象的,指的是方法只有声明而没有实现,他的实现要放入声明该类的子类中实现。2、static是静态的,是一种属于类而不属于对象的方法或者属性,而我们知道,类其实也是一个对象,他是在class文件加载到虚拟机以后就会产生的对象,通常来说它是单例的,就是整个虚拟机中只有一个这样的类对象(当然,如果用新的类加载器也会生成新的类的对象)。3、synchronized 是同步,是一种相对线程的锁。4、native 本地方法,这种方...

java--public_private_void_static功能作用【图】

对于初学者,对于这几个经常出现的名字很熟悉,但又感到不完全理解。下面一一解释:public与private(这两个是针对权限范围的)public xxx(){}是公共的方法,可以被任何一个类调用。private xxx(){}是私用的方法,也就是只能在本类中被调用,任何其他类都不能调用。 void函数返回值得类型(函数可以返回多种类型值,如int、String、Float等)比如publicvoid xxx(){} 这个函数执行完成后,什么值也不会返回。但这个函数可以被...

[JAVA][从0开始的JAVA随笔]静态(static)属性的使用方法及注意事项【代码】【图】

除了内部类之外,类一般不能具有静态属性。如下定义了一个外部类Static_test和一个内部静态类Static_class:class Static_test{Static_test(){s_int = 1;}publicstaticint s_int;publicstaticvoid s_func(){System.out.println("s_int = "+s_int);} } publicclass Hello{Hello(){}publicvoid seta(int num){a = num;}publicvoid setb(int num){b = num;}publicvoid showa(){System.out.println("a = "+a);}publicvoid showb(){Syst...

java的static块执行时机

一、误区:简单认为JAVA静态代码块在类被加载时就会自动执行。证错如下: [java] view plaincopyclass MyClass1 { static {//静态块 System.out.println("static block "); } } public class Main { Class[] classArray = { MyClass1.class//这样引用该类,必然需要将该类加载到虚拟机中 }; public static void main(String[] args){ System.out.println("hello wor...

java之关键字static和final【图】

static可以修饰变量,方法或者类(普通类是不能用static修饰的,只能用来修饰内部类)  static静态变量又称之为类变量(和c++中的全局变量概念是一样的),在类加载后,jvm只为类变量分配一次内存,内存中只有一份,静态变量可以直接通过类名访问(当然也可以通过实例对象访问);与静态变量对应的是实例变量,每次实例化对象,内存中就会有一份拷贝,所以在内存中可以存在该实例变量的多份拷贝。 static int a=10; S...

java中静态代码块的用法 static用法详解

(一)java 静态代码块 静态方法区别一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类名直接调用比如main方法就必须是静态的 这是程序入口两者的区别就是:静态代码块是自动执行的;静态方法是被调用的时候才执行的....

Android源码编译jar包BUILD_JAVA_LIBRARY 与BUILD_STATIC_JAVA_LIBRARY的区别

一般情况下,在Android源码下编译一个jar包的典型makefile(Android.mk)如下:在文件中加入以下内容:LOCAL_PATH:= $(call my-dir)#make jarinclude $(CLEAR_VARS)LOCAL_SRC_FILES := $(call all-subdir-java-files)LOCAL_MODULE := mytestjarinclude $(BUILD_JAVA_LIBRARY)#include $(BUILD_STATIC_JAVA_LIBRARY) 那么,BUILD_JAVA_LIBRARY 与BUILD_STATIC_JAVA_LIBRARY的区别是什么?简单的说,jar包其实就是一个zip格式的压缩...

Java基础复习(1) 为什么在java中我们要将main定义为一个static方法?【代码】【图】

2015-10-20 以前学习java知识,只是跟着用到的代码跳着学了些,学的不全还错漏成片……恩,好惨! 思来想去,是必须要好好复习加整理下,不然写出来的东西真没法读了。所以,就从今儿起一点一点的啃下去吧。 回头创建了Class文件,又看到了熟悉的main函数……然后,有了标题的问题。那么,今天就回顾这个问题吧。 1publicclass Review_p2 {2publicstaticvoid main(String[] args) {3byte b = 3;4 5byte aa = 4;6byte bb =...