区别在于,public static void main表示是JAVA的入口函数,public static void只是表示函数的各种属性。
1.public 表示类成员访问控制级别,public 修饰成员函数或变量,可以被自身成员函数,派生类,类的实例对象进行访问。
2.static 修饰的成员变量或函数,可以用类名直接调用。
3.void 表示空类型,void修饰函数表示没有返回值。
函数内定义的静态变量,形式上是局部变量,但与一般局部变量不同:
1、一般的局部变量在函数结束后就释放了,下次调用时重新申请空间;
2、“静态局部”变量,在函数调用结束后,空间不释放,保留结束前的值,直到下次调用时作为初值使用,要到整个程序退出时才释放
静态构造函数是最早被调用的,只要有静态访问,那么就先调用静态构造函数。其他非静态构造函数会在调用完毕静态的成员之后才被调用。所以一般静态构造函数用来为静态成员初始化,或者作为单件模式中创建对象的唯一入口。例如:
privatestaticGoodsManagers_Instance;publicstaticGoodsManagerInstance{get{returns_Instance;}}staticGoodsManager(){s_Instance=newGoodsManager();
}privateGoodsManager(){}在访问类的静态成员的时候,系统会最先调用静态构造函数staticGoodsManager(),在构造函数中初始化了静态变量。
1、规则不同
类是一种引用数据类型,类似于byte、short、int(char)、long、float、double等基本数据类型;
函数必须声明后才可以被调用,调用格式为:函数名(实参)调用时函数名后的小括号中的实参必须和声明函数时的函数括号中的形参个数相同。
2、主体不同
类是面向对象程序设计实现信息封装的基础;
函数是指一段在一起的、可以做某一件事的子程序。
3、特点不同
类是一种用户定义的引用数据类型,也称类类型,每个类包含数据说明和一组操作数据或者传递消息的函数,类的实例称为对象;
函数分为全局函数、全局静态函数,在类中还可以定义构造函数、析构函数、拷贝构造函数、成员函数、友元函数、运算符重载函数、内联函数等。
是的,C++中非静态类可以有静态函数。静态函数是与类相关联的,而不是与类的实例相关联的。静态函数可以直接通过类名来调用,而不需要创建类的实例。它们通常用于实现与类相关的实用程序函数或者全局共享函数。在静态函数内部,无法访问类的非静态成员变量,因为它们不与特定的类实例相关联。但是,静态函数可以访问类的静态成员变量和其他静态函数。
还没有评论,来说两句吧...