java中static用法总结

1.定义静态变量

一般形式:

		[访问修饰符]   static  [变量类型]   [变量名]  = [值]

注:【访问修饰符】

主要包含 public 、protected、default、private (访问权限依次降低)

举例:

		public class Penguin {
		
			public static String SEX_FAMALE = "雌";
			public static String SEX_MALE = "雄";
		}

静态变量,又称类变量。
特点:
1.被所有对象共享,属于公共变量
2.必须定义在方法外,即使是静态方法也不可以
3.在调用时,对象和类名均可以调用,但一般用类名调用

2.定义静态方法

一般形式:

			[访问修饰符]  static [返回值类型]  [方法名]

举例:(最简单的每个类都有的main方法 就是静态方法)

		public static void main(String[] args) {

		}

静态方法特点:
1.可用类名调用静态方法
2.静态方法可以在非静态方法中被调用,而非静态方法不能在静态方法中被调用
即:

public static  void  print(){
    System.out.println("静态方法被调用了");
}
public void print_1(){
    print();
   System.out.println("非静态方法被调用了");
} 

这样调用编译器不会报错

但是,如果 是按如下方式调用 :

public static  void  print(){
    print_1();
    System.out.println("静态方法被调用了");
}
public void print_1(){
    System.out.println("非静态方法被调用了");
}

编译器就会报错如下:

Non-static method 'print_1()' cannot be referenced from a static context

3.静态方法中不能使用this关键字。

3.定义静态代码块

示例如下:

static{
    System.out.println("静态代码块");
}

静态代码块会在程序载入时优先执行
执行顺序为:

	静态代码块---------->>构造代码块------------>>普通代码块

4.静态导包

当我们需要同时用到同一个类的不同方法时,为了在编程中避免反复出现类名,可以选择静态导包的方式
示例如下:

import static java.lang.Math.*;

public class ImportDemo {
	public static void main(String[] args) {
    	System.out.println(Math.sqrt(2));
    	System.out.println(Math.abs(-2));

    	System.out.println(sqrt(2));
    	System.out.println(abs(-2));
	}
}

上例中,前两行的打印结果与后两行的打印结果完全相同。
(ps:静态导包的方式是jdk5.0之后出现,之前的版本不支持哦)

*以上就我对static用法的总结~(如果有不足的地方,希望大家在评论区多多补充)
感谢!!!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值