类与对象的创建
package Demo.oop; public class demo01 { public static void main(String[] args) { student.say();//静态方法 student student=new student();//非静态方法,当使用new方法时,非静态方法才开始拥有空间和内存 student.say1(); System.out.println(); int a=1; System.out.println(a);//打印初始a和值传递例子对比 demo01.change(a);//调用函数该值 System.out.println(a);//结果并未改变 //总结:值传递是仅仅把值丢过去,然而main方法里并未改变 Person person =new Person(); System.out.println(person.name);//null demo01.change1(person); System.out.println(person.name);//引用传递,可以完成赋值 } //static和类一起加载,在这个包里,和demo01一起加载,一起产生空间 /**public static void a(){ b();//不可以调用 } public void b(){ a();//可以调用 }*/ //实例化后才开始产生空间,才会存在(也就是用了new关键字) public static void change(int a){ a=10; } public static void change1(Person person){ person.name="帅哥"; } } //定义了一个person类,有一个属性叫name class Person{ String name;//最初定义时肯定结果为null }
main方法即项目启动器
package Demo.oop.APP; //学生类 public class Student { //属性:字段 String name;//null int age;//0 //有点像C语言里面的结构体,只不过声明是在类里面,调用也需要实例化也就是new关键字 //方法 public void study(){ System.out.println(this.name+"在学习"); } }
main方法调用的类