java_类与对象的关系
//用java语言描述。类来体现。
其实描述事物无非就是描述该事物的属性和行为。
在类中的体现:
属性:成员变量。
行为:成员函数。
其实描述类就是在定义成员(成员变量和成员函数)
成员变量和局部变量的区别?
1,定义的位置不同。
成员变量定义在类,作用于整个类。
局部变量定义函数,作用于整个函数,或者定义在语句,作用于语句内。
2,内存出现的时间和位置不同。
成员变量:当对象创建时,出现在堆内存的对象当中。
局部变量:所属区间被运算时,出现在栈内存中。
3,生命周期不同。
成员变量:随着对象的出现而出现,随着对象的消失而消失。
局部变量:随着所属区间运算结束,立刻被释放。
4,初始化值。
成员变量:因为在堆内存中,都有默认初始化。
局部变量:没有默认初始化。
1 2 /* 3 描述一个汽车: 4 属性: 5 颜色。 6 轮胎数。 7 8 行为: 9 运行功能。 10 */ 11 class Car//汽车图纸。 12 { 13 String color ; 14 int num; 15 public void run() 16 { 17 // int num = 10; 18 System.out.println(color+":"+num); 19 } 20 } 21 22 23 24 class CarDemo 25 { 26 public static void main(String[] args) 27 { 28 //创建Car类的对象。通过new关键字完成。 29 // Car c = new Car();//左边:定义了一个Car类型的变量c。也称为类类型变量。类类型变量指向该类对象。 30 //指挥汽车做事情。调用格式:对象.对象成员。 31 // c.color = "blue";//改变的是c指向的内存中的对象中的color的值。 32 // c.num = 4; 33 // c.run(); 34 35 36 //------------------------------------- 37 Car c = new Car();//0x0023 38 // c.color = "blue"; 39 // c.num = 4; 40 // c.run(); 41 42 Car c1 = new Car(); 43 // c1.color = "blue"; 44 // c1.num = 4; 45 // c1.run(); 46 47 show(c); 48 show(c1); 49 50 51 //匿名对象。没名字的对象。这是对象的简写格式。 52 // Car c2 = new Car(); 53 // c2.run(); 54 //new Car().run(); 55 56 // Car c3 = new Car(); 57 // c3.color="red"; 58 // c3.num = 8; 59 // c3.run(); 60 61 new Car().color = "red"; 62 new Car().num = 8; 63 new Car().run(); 64 /* 65 匿名对象的使用: 66 1,当对象对方法进行一次调用的时候,可以使用匿名对象来简化。 67 Car c = new Car(); 68 c.run(); 69 c.num = 10; 70 r.run(); 71 new Car().run(); 72 new Car().run(); 73 当对对象的成员进行多次调用时,必须起名字。 74 75 2,可以将匿名对象作为实际参数进行传递。 76 */ 77 78 // Car c = new Car(); 79 show(new Car()); 80 81 } 82 83 //定义功能,对汽车进行改装。 84 public static void show(Car cc)// 0x0023 Car cc = new Car(); 85 { 86 cc.color = "black"; 87 cc.num = 3; 88 cc.run(); 89 } 90 }