一、类与对象的关系
1.1 类:
前面提过,类就是一种抽象的数据类型,并不是某一件事物的具体描述,可以解为目录结构中的目录(包括父目录,子目录 )如:
- 动物、植物、飞机
- Java类统称为XX类,如汽车类,学生类,教师类等
1.2 对象
对就就是些具体的实例
- 如上面提到的教师类,具体实例就是老王,老张这些个体。
- 能体现出特点,展现出具体功能的实例就是对象。在Java中,用关键字
new
来创建对象 - 使用new 关键字创建对象时,程序除了会分配相应的内存空间外(new的对象都放在堆中,并实例化),还会进行默认的初始化以及调用类的构造器。
二、示例
从这里开始,以后不再是每个Class文件都包含一个main方法。
按规范来说,一个项目下(package):
- 只有一个main方法作为入口
- 只有一个 public 作为修饰符的类(class)
- 所有的类都应该只包含属性与方法
所以,在往后的代码中,测试代码放在Application中,其他类分开保存。
如以下测试new关键字创建对象的示例:
1. Application.java
package com.zctou.oop.demo01;
public class Application {
//以后一个项目只保留一个main方法进行测试
public static void main(String[] args) {
Student student = new Student();
student.say();
student.name = "张三";
student.age = 18;
student.say();
}
}
2. Student.java
package com.zctou.oop.demo01;
//学生类
public class Student {
//所有的类都只有 属性 和 方法
//学生的一些共同属性,
//名字,年龄等,这些属性都是抽象的
String name;
int age ;
//方法
public void say(){
System.out.println(this.name + "说,他的年龄是: " + age + "岁。");
}
}
输出:
null说,他的年龄是: 0岁。
张三说,他的年龄是: 18岁。