`
huihui_0218
  • 浏览: 26897 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java +static

阅读更多
Java代码:

public class StaticDemo { 
 
    public static String info ; 
    private String other ; 
     
    static { 
        info = "静态语句块能操纵静态的对象"; 
        //other = "无法操纵非static对象"; 
        System.out.println(" == StaticDemo 被加载到JVM == "); 
    } 
 
    public StaticDemo(){ 
        System.out.println(" StaticDemo 被实例化了。"); 
    } 
 
}

Java代码:

public class StaticTest { 
 
    public static void main(String[] args) { 
         
        // 加载到JVM中,默认的方式 
        try { 
            // 等效于Class.forName("StaticDemo"); 
            Class.forName("StaticDemo", true, StaticTest.class.getClassLoader()); 
        } catch (ClassNotFoundException e) { 
            e.printStackTrace(); 
        } 
         
        // 加载的JVM时,info被赋值了 
        System.out.println("info对象 ==> "+StaticDemo.info); 
         
        // 实例化对象,注意此时Static语句块中的内容不再出现 
        StaticDemo obj1 = new StaticDemo(); 
        StaticDemo obj2 = new StaticDemo(); 
         
    } 
}

执行结果:
---------------
== StaticDemo 被加载到JVM ==
info对象 ==> 静态语句块能操纵静态的对象
StaticDemo 被实例化了。
StaticDemo 被实例化了。
---------------

-------------------------------------------------
import java.util.ArrayList; 
import java.util.List; 
 
public class Test { 
    private static List list = new ArrayList() { 
        { 
            add(new Object()); 
            // ... 
        } 
    }; 
    //  除了这样初始化list之外,还可以如下: 
    private static List list2; 
    static { 
        list2 = new ArrayList(); 
        list2.add(new Object()); 
        // ... 
    } 
 
    // private static A a = new A(); 这样写就不允许了 
    private static A a; 
    static { 
        try { 
            a = new A(); 
        } catch (Exception e) { 
            e.printStackTrace(); 
        } 
    } 
 
    static class A { 
        public A() throws Exception { 
        } 
    } 
}

--------------------------

package com.test;

class Test {
public static int X = 100;
public final static int Y = 200;

public Test() {
System.out.println("Test构造函数执行");
}

static {
System.out.println("static语句块执行");
}

public static void display() {
System.out.println("静态方法被执行");
}

public void display_1() {
System.out.println("实例方法被执行");
}
}

public class StaticBlockTest {
public static void main(String args[]) {
try {
Class.forName("com.test.Test");
Class.forName("com.test.Test");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}

----------
执行结果:

static语句块执行
----------
分享到:
评论

相关推荐

    java中static作用

    "Java 中 static 作用" static 是 Java 语言中一个关键字,表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态代码块。在 Java 语言中,没有全局变量的概念,但是可以使用 static 来实现...

    java+MySQL用户管理系统

    此代码主要是用JDBC和MySQL数据库完成一个简单的用户管理系统,系统的设计模式采用工场模 式和代 理模式,此代码很适合初学Java者。 运行方法: 1.运行需要启动MySQL数据库 2.创建数据库名为zhaochao和表名为...

    Java + MongoDB 实现 hello world 例子(译)

    在本教程中,我们将探讨如何使用Java编程语言与MongoDB数据库进行交互,通过一个简单的"Hello, World!"示例来入门。MongoDB是一款流行的、基于文档的NoSQL数据库,而Java是广泛应用于企业级开发的编程语言。结合两者...

    java中static属性学习

    ### Java中的Static属性详解 #### 一、引言 在Java编程语言中,`static`关键字扮演着重要的角色。它允许我们创建与类关联而非特定实例关联的数据成员和方法。本文将详细介绍`static`属性的基本概念、静态成员变量...

    Java中的Static块与静态方法

    在Java编程语言中,`static`关键字扮演着至关重要的角色,它被用于声明类成员(如变量、方法)为静态的。静态成员不依赖于任何特定的对象实例,而是与类本身绑定,这意味着无论该类有多少个实例,静态成员只会有一份...

    java视频 static关键字

    在Java编程语言中,`static`关键字是一个非常重要的修饰符,它有多种用途,涉及到类、对象以及变量和方法的生命周期。本视频教程详细讲解了`static`关键字在Java中的应用及其背后的原理。 首先,我们要理解`static`...

    Java中的static关键字

    Java 中的 static 关键字 Java 中的 static 关键字是用于声明类的成员变量和成员方法的,它可以使得变量和方法属于类本身,而不属于某个对象。静态变量也称为类变量,静态方法也称为类方法。静态变量和静态方法可以...

    java+sql源代码信用卡管理系统

     staticMessage.java~3~ 1.12 KB  staticMessage.java~4~ 1.07 KB  staticMessage.java~5~ 1.07 KB  storePanel.java~15~ 3.43 KB  storePanel.java~16~ 3.43 KB  storePanel.java~17~ 3.43 KB  storePanel....

    Java static修饰方法

    在Java编程语言中,`static`关键字是一个非常重要的修饰符,它有多种用途,但最常见的是用来修饰类的方法和变量。在这个主题中,我们将深入探讨`static`修饰方法的概念、作用以及它如何影响Java程序的执行。 首先,...

    java中static的作用

    static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块

    Java+Java基础知识+基本概念+运算符+判断和循环+循环高级和数组+方法+综合练习+面向对象+面向对象综合熏硫胺+字符串等

    Java基础知识,其中包括基本概念+运算符+判断和循环+循环高级和数组+方法+综合练习+面向对象+面向对象综合训练+字符串+集合&学生管理系统+学生管理系统升级版+面向对象进阶(static&继承+多态+包&final&权限+抽象类&...

    Java中static变量的几个优缺点

    Java中static变量的几个优缺点 简单介绍static

    java中final和static的区别

    Java 中 final 和 static 的区别 final 关键字在 Java 中有多种用法,包括修饰变量、方法、类等。下面是 final 关键字的各种用法: 1. final 修饰变量:表示该变量一旦被初始化,程序无法修改变量的值,该变量变成...

    java中的static变量,方法,代码块

    ### Java中的Static概念详解 在Java编程语言中,`static`关键字扮演着极其重要的角色,它主要用于声明类的成员变量、方法以及代码块为静态。本文将深入探讨`static`在变量、方法和代码块中的应用,通过示例和解释...

    Java中static、this、super、final用法.doc

    在Java编程语言中,`static`、`this`、`super`和`final`是四个非常重要的关键字,它们各自有着特定的用途和含义。 1. **static**: 静态关键字`static`用于声明类级别的变量和方法,即静态变量和静态方法。静态变量...

    Eclipse+Java+OpenCV246人脸识别

    public static void main(String[] args) { System.loadLibrary(Core.NATIVE_LIBRARY_NAME); CascadeClassifier faceDetector = new CascadeClassifier("haarcascade_frontalface_default.xml"); Mat image = ...

    Java static静态初始快

    在Java编程语言中,`static`关键字扮演着重要的角色,特别是在初始化类的静态成员时。`static`静态初始化块是用来初始化类级别的变量,也就是说,这些变量是属于类本身,而不是类的实例。当我们讨论“Java static...

    java中final关键字和static关键字详细用法

    Java中的`final`和`static`关键字是编程中非常重要的两个修饰符,它们分别用于不同的场景,以确保代码的稳定性和高效性。 首先,`final`关键字主要用于表示不可变性。它可以用来修饰类、方法和变量。对于类,如果一...

    java中final和static讲解及实例

    java中final和static讲解及实例

Global site tag (gtag.js) - Google Analytics