面向对象02

类和对象的关系

  • 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物

    • 动物、植物、手机。。。。。

    • 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()

    • 静态的属性 属性

    • 动态的行为 方法

 

封装、继承、多态

 

posted @ 2022-01-23 20:06  作困兽之斗  阅读(27)  评论(0)    收藏  举报