学习面型对象内容的三个主线:
1.Java类和类的成员、属性、方法、构造器、代码块、内部类
2.面向对象的三大特征---封装性,多态性,继承性
3.其他关键字---this、super、static、final、abstract、interface、package、import...
面向对象的编程思想是什么?设计、编写代码的原则、方法、技术等
面向过程和面向对象的区别:面向过程强调的是功能行为,以函数为单位;面向对象具备了功能的对象,以对象/类为单位,考虑谁来做。面向对象像是指挥者,面向过程像是执行者。
面向对象分析方法分析问题的思路和步骤:
练习:设计类其实主要是设计类的成员(如:属性和方法)。
属性=>也叫:成员变量=field--域、字段
方法=>成员方法,函数
//测试类
可以发现,在类PersonTest的主函数中,我们还没有定义或者没有在person类中定义的变量,下面就会出现红线,定义的name和isMale下面就没有出现
创建类和对象的示例,完整代码如下
1 /*
2 * 类和对象的使用方法与步骤:
3 * 1.创建类,设计类的成员
4 * 2.创建类的对象
5 * 3.通过“对象、属性”或“对象,方法”调用对象的结构
6 */
7 public class PersonTest {
8 //这是主函数,作为程序的入口
9 public static void main(String[] args) {
10 // TODO Auto-generated method stub
11 //创建类的对象=类的实例化=实例化一个类
12 Person p1 = new Person();
13
14 //调用对象的结构、属性、方法
15 //调用属性,“对象,属性”
16 p1.name = "Tom";
17 //注意:这里的true只能是小写的
18 p1.isMale = true;
19 System.out.println(p1.name);
20 //调用方法函数“对象,方法”
21 p1.eat();
22 p1.sleep();
23 p1.talk("Chinese");
24 }
25
26 }
27 //然后这个类中有他的属性和方法,我们再去完善这个类
28 class Person{
29 //属性
30 String name;
31 int age = 1;
32 boolean isMale;
33 //方法=函数
34 public void eat() {
35 System.out.println("人可以吃饭");
36
37 }
38 public void sleep() {
39 System.out.println("人可以睡觉");
40
41 }
42 public void talk(String language) {
43 System.out.println("人可以交流,使用的是:"+language);
44
45 }
46
47 }
运行结果如下:
如果在下面再创建一个对象p2,引用同样的Person,会出现什么情况呢?
答:null。每一个对象都有一个独立的实体。
(如果创建了一个类的多个对象,每个对象都独立的拥有一套类的属性(static)
,意味着修改一个对象的属性,不影响另一个对象的属性)
null是一维数组的默认初始化值