相关文章推荐
玩足球的烈马  ·  Functional analysis ...·  2 周前    · 
喝醉的电脑桌  ·  git - How to fix ...·  10 月前    · 
温柔的开水瓶  ·  stata ...·  10 月前    · 

静态类是不能被实例化的。调用静态类的成员(方法,变量,属性)的时候用 态类名 . 成员名 的方式来调用

非静态类中可以有静态方法,但是静态类中只能有静态方法,不能有非静态方法及其他实例成员

静态构造函数不可被直接调用, 当创建类实例或引用任何 静态成员 之前,静态构造函数被自动执行,并且只执行一次。即:静态运行时被加载一次。 非静态每次运行都被加载

非静态类需要你自己去实例化加载它,才能调用

调用静态类成员的时候,会首先调用静态的构造函数去初始化这个静态成员。

一个类里 同时定义了静态字段和非静态字段 ,你在调用这个类的过程中,最先执行到的总是最先初始化静态字段(注意这个过程你可能会看不到,除非你自己定义了静态构造函数)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 字段访问权限
    class Users
        public int age;
        public static int age2;
        public Users() //非静态构造函数
            age = 100;
            Console.Write(age);            
        static Users()  //静态构造函数
            age2 = 10;
            Console.WriteLine(age2);
    class Program
        static void Main(string[] args) //这里是程序的入口,最先被执行到,然后往下开始执行
            Users user = new Users(); //接着会执行到这一步(当执行到这一步的时候,因为Users类里有静态字段age2,所以需要最先初始化age2 ,所以这个时候程序会跳到 static Users(),等静态构造函数执行完毕后,才会跳到public Users() 来初始化非静态字段)所以这段程序输出的结果是10 ,100【注意先输出的是10,后输出的是100】
            Console.ReadKey(); 
                    静态类是不能被实例化的。调用静态类的成员(方法,变量,属性)的时候用  静态类名.成员名 的方式来调用 静态构造函数不可被直接调用,当创建类实例或引用任何静态成员之前,静态构造函数被自动执行,并且只执行一次。即:静态运行时被加载一次。 非静态每次运行都被加载 非静态类需要你自己去实例化加载它,才能调用 调用静态类成员的时候,会首先调用静态的构造函数去初始化这个静态成
System.out.println(File.pathSeparator);//  ;
System.out.println(File.separator);//  \
早期Java不智能,还需要用这种适应平台的api去写分隔符
现在Java早已经成熟了 会自动根据平台转分隔符的
2、非静态成员需要实例化去调用
3、静态方法,只可以访问静态成员静态也只能有静态成员。
4、实例既可以访问静态成员也可以访问非静态成员;
5、不能静态声明实例成员;
6、可以在实例成员声明静态成员;
7、静态构造函数:只初始化一次,但是静态类的构造函数前面也要加static
结构与类的区别:
结构也可以有字段、属性
				
建议33:避免在泛型类型声明静态成员 在上一建议,已经理解了应该将MyList<int>和MyList<string>视作两个完全不同的类型,所以,不应该将MyList<T>静态成员理解成MyList<int>和MyList<string>共有的成员。 class MyList pu...
首先要明白无论调用成员变量还是方法,都需要主调(主语调用者),其格式为:主调.方法/成员变量 别看我们平时可以直接使用方法名/变量名,其实他们都有默认的前缀。如果是static修饰的,默认类名为前缀,没有static修饰的话,默认this为前缀。 记住一句话:谁调用这个方法,this就代表谁 接下来进入正题。标题的情况,类...
在Java接口,可以定义静态类。一个静态类是指被声明为 static 的嵌套类。与非静态类不同,静态类可以在没有实例对象的情况下直接使用。在接口静态类可以作为接口的一部分,从而提供一些相关工具类或者实用方法,方便用户调用。 静态类是通过 static 关键字和 class 关键字定义的,可以看做是内部工具类,用来提供一些工具方法,但是不能访问外部接口的非静态变量和方法。 以下是一个接口定义的静态类的示例: ```java public interface MyInterface { static class Utils { public static void doSomething(){ System.out.println("static method in static class"); 在上面的例子静态类 Utils 包含一个静态方法 doSomething(),可以在被实现的类直接调用,例如: ```java public class MyClass implements MyInterface{ public void myMethod(){ MyInterface.Utils.doSomething(); 需要注意的是,不可以创建接口的静态类的实例,因为它没有公共构造函数或者方法。静态类仅仅作为一种语法上的管理方式,用于结构化和组织代码。