Java是面向对象的语言,函数是面向过程语言的叫法,比如C语言,在Java中一般称之为方法。
构造方法的作用是实例化对象,每个类中都有,即使不写程序也会分配一个默认无参数的构造方法。
Java中都是对象,方法都是通过对象去调用的
Java主方法main()方法必须是静态static的,这是因为static静态方法是存储在静态存储区内的,可以通过类.方法名直接进行调用,不需要进行实例化。
假设不使用static,那么main()方法在调用时必须先对其实例化,而main()做为程序的主入口显然不可能先对其实例化
静态加载后,对象可能未建立,所以为避免这种错误,编译不让过,静态可以调用静态 非静态既可以调用静态也可以调用非静态
类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;
非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创建类的实例)时才会分配内存,然后通过类的对象(实例)去访问。
class A
{
public A()
{
//这里是定义构造函数,默认的不写也可以
}
B b=new B();//方法1
public static void main(String[] args)
{
new A();// 方法1可以认为是调用构造函数,new对象,这里不是定义构造函数
b.test();//方法1
B b=new B();//方法2,在里面new对象
b.test();//方法2
}
}
class B
{
public test(){
}
}