面向对象初体验(类和对象)

初识面向对象

面向对象的思想

寻找一个对象来实现功能,注重完成功能的结果\

万物皆对象

类和对象

描述一类事物,是相同属性和功能的一类事物的描述

对象

具体的个体,实力对象

  1. 静态部分: 属性
  2. 动态部分: 动作,行为(属性)

设计一个类

//设计一个学生类
class Student{//描述学生这一类
    //静态属性
    String name;//姓名
    int age;//年龄
    //动态属性
    void eat(){
        System.out.println("吃东西");
    }
    void study(){
        System.out.println("学习使我快乐");
    }
}

对象的创建

new 类名():       相当于新建的类的一个模板

给对象赋值

class Test{
    public static void main(String[] args){
        //新建对象
        Student stu=new Student();
        //赋值
        stu.name="张伟";
        System.out.println(stu,name);
        stu.study();
    }
}

class Student{
    String name;
    void study(){
        System.out.println("学习使我快乐");   
    }
}

方法的调用

  1. 没有static修饰: 对象名.方法名+参数列表
  2. 有static修饰: 类名.方法名+参数列表
  3. 在同一个类中: 方法名+参数列表

构造方法

什么是构造方法

  1. 构造方法的结构和普通方法类似,但是和普通方法完全不同两个代码块;

  2. 构造方法也是方法,意味着使用了构造方法,方法会执行,也能完成功能

  3. 构造方法就是一个代码块【就是一个结构 ,构造方法和 字段方法一样都是一个类中的成员之一】

  4. 构造方法也该存在于类的结构体中

  5. 一个类中可以存在多个构造方法,可以理解为方法的重载

语法

new 方法名()
  • 构造方法名和类名一致
  • 没有返回值类型

特点

  1. 每一个类中都至少有一个构造方法

  2. 如果没有看到(显示的),那么存在一个隐式的无参数的构造方法

  3. 如果一个类中有显示的构造方法,那么隐式的就不存在了

作用

  1. 通过调用构造方法可以创建对象
  2. 在创建对象的同时给对象的字段赋值【通过构造方法来完成】

匿名对象

什么是匿名对象

  1. 匿名对象,就是没有名字的对象[创建了一个对象而没有使用变量接收]

  2. 该对象存在于堆总处于游离状态:没有任何变量持有引用地址,指向他

  3. 但是匿名对象本质也是一个对象

匿名对象的使用

  • 匿名对象只使用一次
  • 可作为参数进行传递

对象的生命周期

  • 开始: new创建对象时就开始了
  • 结束:
    • 当对象失去所有引用
    • 对象被销毁(jvm垃圾回收机制)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容