黑马程序员 java基础常识 类的中的静态

本文介绍了Java中的静态代码块概念及其执行时机。通过一个具体示例展示了类加载时静态代码块如何被执行,并解释了静态成员的优势与局限性。


------- android培训java培训、期待与您交流! ----------


在java程序中如果用static声明变量的话,则此变量称为静态变量。


一个类可以使用不包含在任何方法体中的静态代码块,当类被载入时,静态代码块被执行,且只执行一次,静态代码块经常用来进行类属性的初始化。

class Person 
{ 
  public Person() 
  { 
  System.out.println("1.public Person()"); 
  } 
  //  此段代码会首先被执行
    static 
    { 
     System.out.println("2.Person类的静态代码块被调用!"); 
   } 
} 
public class TestStaticDemo5 { 
  //  运行本程序时,静态代码块会被自动执行 
  static 
   { 
      System.out.println("3.TestStaticDemo5 类的静态代码块被调用!"); 
    } 
  public static void main(String[] args) { 
      System.out.println("4. 程序开始执行!"); 
  //  产生两个实例化对象 
      new Person() ; 
      new Person() ;  //测试第二次实例化对象时的状态
   } 
} 
 


运行的结果是:
3.TestStaticDemo5 类的静态代码块被调用!
4. 程序开始执行!
2.Person 类的静态代码块被调用!
1.public Person()
1.public Person()

说明在类加载时,首先运行的是静态代码块。

在我看来,静态成员的有点是可以使程序的调用更加方便,缺点是静态成员比较占内存,不会释放。

静态代码块就我目前的知识来看的话,可以在类加载的时候,初始化变量使用。
 
 

【源码免费下载链接】:https://renmaiwang.cn/s/rpwet 在进行科学计算和数据分析时,使用Python中的Numpy库是必不可少的。Numpy库提供了高性能的多维数组对象和用于处理这些数组的工具,而数组和矩阵是Numpy中两个非常重要的概念。数组(array)是一个通用于各种数值运算的同质数据结构,而矩阵(matrix)则是一种特定的二维数组,用于更专业的数学运算。在使用过程中,我们可能需要在数组和矩阵之间进行转换。本文将详细介绍如何在Numpy中进行这两种型之间的转换,并通过实例代码进行说明。我们来了解一下什么是Numpy中的数组和矩阵。Numpy中的数组(ndarray)是一种多维的数组对象,它可以处理数值计算中的各种数据型,包括整数、浮点数、复数等。数组的维度可以是任意的,但数组中的所有元素必须是相同的数据型。数组通常用于一般的数值计算和数据处理任务。而Numpy中的矩阵(matrix)则是一种特殊的二维数组,它在某些方面与传统的数学上的矩阵概念相仿,例如支持矩阵乘法,具有逆矩阵等属性。Numpy的矩阵名为matrix,它继承自ndarray,但增加了一些特定于矩阵的操作方法。当我们需要进行特定的矩阵运算,比如矩阵乘法时,使用matrix对象可能会更加直观和方便。但是,在需要进行一些通用的数组操作时,使用ndarray对象更为合适。下面将介绍如何将ndarray对象转换为matrix对象,以及如何将matrix对象转换回ndarray对象。1. ndarray转换成matrix在Numpy中,要将一个ndarray对象转换为matrix对象,可以使用numpy库中的mat函数,或者直接将ndarray对象传递给numpy.matrix的构造器。下面给出一个示例:```pythonimport numpy as np# 创建一个4x4的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值