Java访问权限

访问修饰符

访问修饰符修饰类和类的成员
Java将类成员的可见度分为四个种类:

访问修饰符本类同包子类
private
默认
protected✓(不同包子类也可以访问)
public

static修饰符

修饰变量

class 类名{
	public static 数据类型 变量名;
}

成员:
static: 静态成员变量,类变量;
非static :实例成员变量

class Student{
	private int homework;
	public static void main(String[] args){
	Student stu1 = new Student();
	Student stu2 = new Student();
	}
}

实例成员:属于变量,存在堆中
在这里插入图片描述
类变量:

public class Student {
	static int homeWork; // 0 实例成员变量
	
	public static void main(String[] args) {
		Student stu1= new Student();
		guojing.homeWork ++; // 1
		Student stu2= new Student();
		huangrong.homeWork ++;// 2
		System.out.println(stu1.homeWork);// 2
		System.out.println(stu2.homeWork);// 2

	}

}

在这里插入图片描述
静态变量属于类,优先于对象而存在,被所有对象所共享
类的加载初始化:

  1. 类的加载:把字节码.class文件加载到方法区中,并且在堆中生成字节码文件对应的对象,堆中new出的对象就是复制的这个字节码对象
  2. 连接:为静态变量默认初始化
  3. 初始化:静态块初始化
    方法区:存储常量值,静态变量、XX.class的内容

静态变量

语法 :static 类型 变量名
特点:属于类;被所有对象所共享;优先于对象而存在;
使用:1) 对象名.类变量; 2) 类名.类变量(使用)
作用:共享数据。
区别:静态成员 变量 和 实例成员变量的区别

实例成员变量静态成员变量
属于对象属于类
对象创建的时候创建,存在堆中类加载的时候创建,存在方法区中
对象销毁了,成员变量就释放了类卸载了(应用程序结束),就释放了

修饰方法

class 类名{
	public static 返回值类型 方法名(参数列表){
		方法体;
	}
}

使用:
类名.类方法();
对象名.类方法();
注意:
1) 不能直接访问实例成员;
2)不能使用this,super
作用:

  1. 共享
  2. 使用简单;
  3. 此类不能创建对象时外部类只能通过调用其静态方法
实例方法静态方法
属于对象属于类
可以直接访问静态和非静态的成员;只能直接访问静态成员
可以使用this,super不能使用this,super

修饰代码块

class 类名{
	static{
	
	}

}

构造块:

class{

    {
     // 构造块:初始化对象
    }
 }

使用: new 创建对象时自动调用,先执行构造块,后调用构造器。

class Demo{	
	{
		// 构造块 
		System.out.println("构造块");
	}
	Demo(){
		System.out.println("构造器");
	}
}
public class TestStaticDemo {
	public static void main(String[] args) {
		Demo demo = new Demo();
	}
}

静态块:
执行:初始化类的时候自动执行。

class{
    static{
        // 静态块:初始化类(给静态变量初始化)
    }
}

局部块:

class{
    public void 方法(){
        {
            // 局部块:控制局部变量的使用范围和生命周期的。
        }
    }
}
	public void func(){
		// 局部变量
		int n = 11;
		{
			int n1 = 22;
			System.out.println(n1);
		}
		System.out.println(n);
	}

静态导入

格式:
import  static 包名.类名.静态变量名(方法);

本人水平有限,欢迎大佬们批评指正!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值