java static静态修饰符
2022/1/8 11:34:20
本文主要是介绍java static静态修饰符,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
java static
静态属性:
package com.yuanyu.Oop; public class Student{ private static int age; //静态变量 private double score; //非静态变量 public static void main(String[] args) { Student s1 = new Student(); System.out.println(age=10); System.out.println(s1.age=11); System.out.println(Student.age=12); //System.out.println(Student.score=89); //编译报错 System.out.println(s1.score=90); //System.out.println(score=91); //编译报错 } }
若是static静态变量推荐使用类名调用变量,可以很清楚看出是个静态变量
静态变量对于这个类而言在内存中只有一个,可以被类中所有的实例共享,常用于多线程
静态方法:
package com.yuanyu.Oop; public class Student{ public void run(){ //非静态方法 go(); //非静态方法可以直接访问类中的静态方法 System.out.println("run"); } public static void go(){ //静态方法 System.out.println("go"); } public static void main(String[] args) { //run(); //编译报错 静态方法不能直接调用非静态方法 new Student().run(); Student.go(); go(); } }
非静态方法可以直接访问类中的静态方法
代码块:
package com.yuanyu.Oop; public class Student{ { System.out.println("匿名代码块"); } static { System.out.println("静态代码块"); } public Student() { System.out.println("构造方法"); } public static void main(String[] args) { Student student1 = new Student(); System.out.println("================================"); Student student2 = new Student(); } }
运行结果:
静态代码块最先执行且执行一次,其次是匿名代码块、构造方法
因此静态代码块和匿名代码块都可以用来赋初始值
静态导入包:
package com.yuanyu.Oop; import static java.lang.Math.random; public class Student{ public static void main(String[] args) { System.out.println(Math.random()); //0.35021309558598646 System.out.println(random()); //0.07537262741719064 } }
导入包中方法时加入static修饰,否则会报错
这篇关于java static静态修饰符的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-26大厂数据结构与算法教程:入门级详解
- 2024-12-26大厂算法与数据结构教程:新手入门指南
- 2024-12-26Python编程入门指南
- 2024-12-26数据结构高级教程:新手入门及初级提升指南
- 2024-12-26并查集入门教程:从零开始学会并查集
- 2024-12-26大厂数据结构与算法入门指南
- 2024-12-26大厂算法与数据结构入门教程
- 2024-12-26二叉树入门教程:轻松掌握基础概念与操作
- 2024-12-26初学者指南:轻松掌握链表
- 2024-12-26平衡树入门教程:轻松理解与应用