Java 25天基础-DAY 06-面向对象-静态代码块

简介: Java 25天基础-DAY 06-面向对象-静态代码块

/*
静态代码快
格式:
static

    静态代码块中的执行语句。    

特点:随着类的加载而执行,只执行一次。优先于主函数执行。
用于给类进行初始化

*/
/*
class StaticCode
{

static
{
    System.out.println("a");
}

}
*/
class StaticCodeDemo
{

static
{
    System.out.println("b");
}

public static void main(String[] args) 
{
    //new StaticCode();
    //new StaticCode();
    System.out.println("over");

    new StaticCode2(4);
}
    static
{
    System.out.println("c");
}
//打印结果b,c,a over

// StaticCode s= null;//这个没有具体的指向,没有用到类中的内容,StaticCode不加载到内存。

}

class StaticCode2
{

int num = 9;
StaticCode2()    //构造函数
{//这不打印是因为没有创建过与它对应的对象
    System.out.println("d");
}
static
{//静态代码块,给类初始化。
    System.out.println("e");//这里不能访问num,因为num是非静态成员,当该代码执行的时候,num还没有存储进内存。
}

    
{//构造代码块,给对象初始化的。
    System.out.println("f"+this.num);
}

StaticCode2(int x)//构造函数,给对应对象初始化
{
    System.out.println("g"+num);
}
//打印结果:e,f,g

}

目录
相关文章
|
21天前
|
搜索推荐 Java
Java的面向对象特性主要包括封装、继承和多态
【4月更文挑战第5天】Java的面向对象特性主要包括封装、继承和多态
15 3
|
1月前
|
Java 关系型数据库
JAVA面向对象设计原则
JAVA面向对象设计原则
12 1
|
1月前
|
Java
java面向对象高级分层实例_实体类
java面向对象高级分层实例_实体类
10 1
|
1月前
|
Java 物联网 测试技术
Java面向对象程序设计3面向对象基础
Java面向对象程序设计3面向对象基础
169 0
|
2天前
|
安全 Java
Java基础&面向对象&继承&抽象类
Java基础&面向对象&继承&抽象类
|
2天前
|
Java
【Java基础】详解面向对象特性(诸如继承、重载、重写等等)
【Java基础】详解面向对象特性(诸如继承、重载、重写等等)
6 0
|
7天前
|
安全 Java 机器人
《Java 简易速速上手小册》第2章:面向对象的 Java(2024 最新版)
《Java 简易速速上手小册》第2章:面向对象的 Java(2024 最新版)
19 0
|
10天前
|
存储 Java
Java基础教程(7)-Java中的面向对象和类
【4月更文挑战第7天】Java是面向对象编程(OOP)语言,强调将事务抽象成对象。面向对象与面向过程的区别在于,前者通过对象间的交互解决问题,后者按步骤顺序执行。类是对象的模板,对象是类的实例。创建类使用`class`关键字,对象通过`new`运算符动态分配内存。方法包括构造函数和一般方法,构造函数用于对象初始化,一般方法处理逻辑。方法可以有0个或多个参数,可变参数用`类型...`定义。`this`关键字用于访问当前对象的属性。
|
14天前
|
存储 Java 编译器
对象的交响曲:深入理解Java面向对象的绝妙之处
对象的交响曲:深入理解Java面向对象的绝妙之处
46 0
对象的交响曲:深入理解Java面向对象的绝妙之处
|
24天前
|
搜索推荐 Java
Java基础(快速排序算法)
Java基础(快速排序算法)
24 4