1 /** 2 3 什么是面向对象: 4 5 笼统的说就是:万物皆对象 6 7 类名 对象名 = new 类名(); 8 9 类是对事物的抽象描述,对象就是对类的实例化 10 11 成员变量和局部变量的区别: 12 1、定义的位置不同(成员变量定义在类中,局部变量定义在方法或{}中) 13 2、内存的位置不同(成员变量定义在堆内存中,局部变量定义在栈内存中) 14 3、声明周期不同(成员变量在堆内存中随着对象出现而出现,随着成员变量消失而消失,,局部变量在栈内存中随着方法出现而出现,随着方法的弹栈而弹栈) 4、初始化不同(成员变量默认值为null或0;局部变量不赋值不能使用) 15 */ 16 17 /* 18 19 创建一个Person类 20 21 定义name和age属性和speak方法 22 23 */ 24 25 public class Person{ 26 27 String name; 28 29 int age; 30 31 public void speak(){ 32 33 System.out.println("人再说:" + name + age); 34 35 } 36 37 } 38 39 /* 40 41 创建一个PersonTest类 42 43 */ 44 45 public class PersonTest{ 46 47 public static void main(String[] args){ 48 49 //实例化Person类 50 51 Person p = new Person(); 52 53 p.name = "张三"; 54 55 p.age = "20"; 56 57 p.speak(); 58 59 } 60 61 } 62 63 64 65 /* 66 67 this关键字:区分同名问题 68 69 (封装)private私有修饰符:属性私有化,使用setxxx和getxxx来调用类中的属性 70 71 */ 72 73 public class Car{ 74 75 //定义name和color属性 76 77 private String name; 78 79 private String color; 80 81 public void setName(String name){ 82 83 this.name = name; 84 85 } 86 87 public String getName(){ 88 89 return name; 90 91 } 92 93 public void setColor(String color){ 94 95 this.color = color; 96 97 } 98 99 public String getColor(){ 100 101 return color; 102 103 } 104 105 public class run(){ 106 107 this.name = "奔驰"; 108 109 this.color = "红色"; 110 111 System.out.println("汽车在跑" + name + color); 112 113 } 114 115 } 116 117 /* 118 119 定义CarTest类 120 121 */ 122 123 public class CarTest{ 124 125 public static void main(String[] args){ 126 127 Car c = new Car(); 128 129 c.run(); 130 131 } 132 133 }