类与对象

简介: 创建与初始化对象 使用new关键字创建对象 使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化(String初始为null,int初始为0)以及对类中构造器的调用 类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下两个特点

类与对象


创建与初始化对象


  • 使用new关键字创建对象


  • 使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化(String初始为null,int初始为0)以及对类中构造器的调用


  • 类中的构造器也称为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下两个特点:


  • 1.必须和类的名字相同


  • 2.必须没有返回类型,也不能写void


//构造器详解
//java --> class(project structure->module->add->out) 查看class文件
public class Person {
    //一个类即使什么都不写,它也会存在一个方法
    //显式的定义构造器
    String name;
    int age;
    //实例化初始值
    //1.使用new关键字,本质是在调用构造器,必须要有构造器
    //2.用来初始化值
    public Person(){
        this.name="qinjiang";
    }
    //有参构造器:一旦定义了有参构造器,无参就必须显式定义
    public Person(String name){
        this.name=name;
    }
    //alt + (Fn笔记本) + insert  自动生成一个构造器
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
}
/*
    public static void main(String[] args) {
        //new 实例化了一个对象
        Person person = new Person("kuangshen",23);
        System.out.println(person.name);    //qinjiang
    }
    构造器:
        1.和类名相同
        2.没有返回值
    作用:
        1.new 本质在调用构造方法
        2.初始化对象的值
    注意点:
        1.定义有参构造之后,如果想使用无参构造,显式的定义一个无参的构造
    Alt+Fn+Insert
    this
 */


  • 创建对象内存分析


微信图片_20220425165848.png


  • 示例


public class Pet {
    public String name;     //属性前加public以便其他packages调用
    public int age;
    //无参构造
    public void shout(){
        System.out.println("叫了一声");
    }
}
/*
public static void main(String[] args) {
        Pet dog = new Pet();
        dog.name="旺财";
        dog.age=3;
        dog.shout();
        System.out.println(dog.name);
        System.out.println(dog.age);
    }
 */


  • 类与对象小结


public class Application {
    public static void main(String[] args) {
        /*
        1.类与对象
            类是一个模板:抽象,对象是一个具体的实例
        2.方法
            定义、调用!
        3.对应的引用
            引用类型:基本类型(8)
            对象是通过引用来操作的:栈-->堆
        4.属性:字段Field 成员变量
            默认初始化:
                数字:0    0.0
                char:u0000
                boolean:false
                引用:null
            修饰符 属性类型 属性名 = 属性值!
        5.对象的创建和使用
            -必须使用new关键字创建对象,构造器 Person kuangshen = new Person()
            -对象的属性 kuangshen.name
            -对象的方法 kuangshen.sleep()
        6.类
            静态的属性   属性
            动态的行为   方法
         */
    }
}


相关文章
|
8月前
|
存储 Serverless C++
【C++】——类与对象(一)
【C++】——类与对象(一)
|
8月前
|
C++
【C++】——类与对象(二)
【C++】——类与对象(二)
|
编译器 C语言 C++
C++(类与对象)详解 - 1(上)
C++(类与对象)详解 - 1
67 0
|
存储 编译器 C语言
|
8月前
|
存储 程序员 数据安全/隐私保护
深入探索C++中的类与对象
深入探索C++中的类与对象
|
8月前
|
存储 安全 编译器
类与对象(一)
类与对象(一)
|
8月前
|
编译器 C语言 C++
类与对象(2)
类与对象(2)
38 0
|
8月前
|
存储 编译器 C语言
【C++】什么是类与对象?
【C++】什么是类与对象?
54 1
|
8月前
|
编译器 C++
C++类与对象(中)
C++类与对象(中)
67 2
|
8月前
|
存储 编译器 C语言
C++类与对象(上)
C++类与对象(上)
52 1