类与对象

类与对象的关系

  • 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物。
    • 动物、植物、手机、电脑…
    • Person类、Pet类、Car类等,这些类都是用来描述/定义某一类具体的事物应该具备的特点和行为
  • 对象是抽象概念的具体实例
    • 张三就是人的一个具体实例,张三家里的旺财就是狗的一个具体实例。
    • 能够体现出特点,展现出功能的是具体的实例,而不是一个抽象的概念。

创建与初始化对象

  • 使用new关键字创建对象
  • 使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化以及对类中构造器的调用
  • 类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下两个特点:
      1. 必须和类的名字相同
      2. 必须没有返回值,也不能些void
package opp.demo02;

//学生类
public class Student {

    //属性:字段
    String name;//null,没有赋值前
    int age;//0,没有赋值前

    //方法
    public void study(){
        System.out.println(this.name+"在学习");// this 代表当前这个类
    }

}

对象
package opp.demo02;



//一个现目一个只存在一个main方法
public class Application {
    public static void main(String[] args) {

        //类:抽象的,需要实例化
        //类实例化后会返回一个自己的对象
        //peter对象就是一个Student 类的具体实例!
        Student peter = new Student();
        Student Isa = new Student();

        peter.name = "周骏腾";
        peter.age = 20;

        Isa.name = "laiyuying";
        Isa.age = 19;

        System.out.println(peter.name);
        System.out.println(peter.age);

        System.out.println(Isa.name);
        System.out.println(Isa.age);






    }
}


构造器

无参
package opp.demo02;

//Java....>class
public class Person {
    //一个类即使什么都不写,它也会存在一个方法
    //显示的定义构造器

    String name;

    //实例化初始值
    //1. 使用new关键字的时候,本质是在调用构造器
	//2. 用来初始化值
    public Person(){
        this.name = "Peter zhou";

    }

package opp.demo02;



//一个现目一个只存在一个main方法
public class Application {
    public static void main(String[] args) {

        //new 实例化了一个对象
        Person person = new Person();

        System.out.println(person.name);


    }
}

有参
package opp.demo02;

//Java....>class
public class Person {
    //一个类即使什么都不写,它也会存在一个方法
    //显示的定义构造器

    String name;

    public Person() {//alt + insert ---> Constructor--> select none。 生成无参
    }

    public Person(String name) {//alt + insert --->Constructor. 默认生成有有参
        this.name = name;
    }
//alt + insert

}

/*
    public static void main(String[] args) {

        //new 实例化了一个对象
        Person person = new Person("Zhoujunteng");//后面有了参数,然后就会去对应寻找有class里面有参的

        System.out.println(person.name);


    }
    构造器
        1.和类名相同
        2.没有返回值
     作用:
        1.new 本质在调用构造器
        2. 初始化对象的值
     注意点:
        1.定义了有参构造之后:如果想使用无参构造,显示的定义一个无参构造

Alt + insert
this. =
 */

package opp.demo02;



//一个现目一个只存在一个main方法
public class Application {
    public static void main(String[] args) {

        //new 实例化了一个对象
        Person person = new Person("Zhoujunteng");//后面有了参数,然后就会去对应寻找有class里面有参的

        System.out.println(person.name);


    }
}

总结

  1. 类于对象

    类是一个模板:抽象。 对象是一个具体的实例

  2. 方法

    定义。调用!

  3. 对应的引用

    引用类型: 基本类型(8)

    对象是通过引用来操作的:栈–>堆

  4. 属性:字段Field 成员变量

    默认初始化:

    ​ 数字: 0 or 0.0

    ​ char : u0000

    ​ boolean: false

    ​ 引用: null

    赋值:

    修饰符 属性类别 属性名= 属性值;

    1. 对象的创建和使用

      1. 必须使用new 关键字来创造对象,构造器 Person peter =new Person();
      2. 对象的属性 peter.name
      3. 对象的方法 perter.sleep()
    2. 类:

      静态的属性 属性

      动态的行为 方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值