类和对象的关系
- 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物
- 动物、植物、手机。。。。。
- Person类、Pet类、Car类等,这些类都是用来描述/定义某一具体的事物应具备的特点和行为
- 对象是抽象概念的具体实例
- 张三是人的一个具体实例
- 能够体现出特点,展现出功能的具体的实例,而不是一个抽象的概念
创建与初始化对象
- 使用new关键字创建对象
package java_oop.demo02;
/**
* @author IT_Jay
* @date 2022/1/23 16:43
*/
public class Student {
//属性:字段
String name;
int age;
//方法
public void study(){
System.out.println(this.name+"在学习");
}
// public static void main(String[] args) {
// //类是抽象的,实例化
// //类实例化后返回一个自己的对象
// //student对象就是类Student的一个具体实例
// Student student = new Student();
//
// student.name="小明";
// student.age=13;
//
// System.out.println(student.name);
// System.out.println(student.age);
// }
}
- 使用new关键字创建对象的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化,以及对类中构造器的调用
- 类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。且有以下两个特点:
- 必须和类的名字相同
- 必须没有返回类型,也不能写void
- 构造器
package java_oop.demo02;
/**
* @author IT_Jay
* @date 2022/1/23 16:55
*/
//java --->> class
public class Person {
String name;
int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
//一个类即使什么都不写,也会存在一个方法
//显示的定义构造器
//实例化初始值
//1、使用new关键字,本质是调用构造器
//2、默认构造器用来初始化值
public Person(){
this.name="IT_Jay";
}
//有参构造:一旦定义有参构造,无参就必须是显示定义
public Person(String name){
this.name=name;
}
//alt+insert :快捷键,生成构造器,set/get方法
}
/**
* public static void main(String[] args) {
* //new 实例化一个对象
* // Person person = new Person();
* Person person = new Person("我是有参构造",23);
*
* System.out.println(person.name);
* }
*
* 构造器:
* 1、和类名相同
* 2、没有返回值
* 作用:
* 1、new 本质在调用构造方法
* 2、初始化对象的值
* 注意点:
* 定义有参构造之后,如果使用无参构造,显示的定义一个无参 的构造
*
* Alt+Insert
*
* this. =
*/
小结
- 类与对象
- 类是一个模板,抽象;对象是一个具体的实例
- 方法
- 定义、调用
- 对应的引用
- 引用类型:基本类型(8)
- 对象是通过引用来操作的:栈——》堆(地址)
- 属性:字段Field 成员变量
- 默认初始化:
- 数字:0 0.0
- char:u0000
- boolean:false
- 引用:null
- 修饰符 属性类型 属性名 = 属性值
- 默认初始化:
- 对象的创建和使用
- 必须使用new关键字创造对象,构造器 Person person = new Person();
- 对象的属性 person.name
- 对象的方法:person.sleep()
- 类
- 静态的属性 属性
- 动态的行为 方法
封装、继承、多态