static修饰属性、方法、类的区别

一、static修饰属性
1.属性随着类的加载而加载,是类变量,其加载早于对象,不需要new即可加载

2.类变量所在的类的所有对象共用这一个属性,存放在静态域中
二、static修饰方法
1.方法随着类的加载而加载随着类的加载而加载,是类方法,其加载早于对象,不需要new

2类方法所在的类的所有对象共用这一个方法.

3类方法内部只可调用静态的属性和静态的方法,而不能调用非静态的属性和方法
反之,非静态方法可以调用静态的属性和方法

三、static修饰内部类
1普通类是不允许声明为静态的,只有内部类才可以

2被static修饰的内部类可以直接作为一个普通类来使用,而不需实例一个外部类

|静态内部类
1 public class Outer {
2 public static class Inner{
3 Inner(){
4 System.out.println(“静态内部类”);
5 }
6 }
7 }

8 public class TestStatic {
9
10 // 不需要new一个对象
11 new Outer.Inner();
12 }
13 }

|普通内部类
1 public class Outer {
2 public class Inner{
3 Inner(){
4 System.out.println(“普通内部类”);
5 }
6 }
7 }

8 public class TestStatic {
9
10 // 需要new一个对象
11 new Outer.new Inner();
12 }
13 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值