七,JAVA面向对象

对象

  • 用类来描述对象,将对象的共同特征进行抽取而形成类

  • 大象:类

    • 属性:鼻子眼睛 :变量

      • 行为:跑,拔树 :函数

  • 同一个类中。成员函数可以直接访问其他成员

  • 类与类之间的访问:需要创建对象

    • 格式:类名 对象名 = new类名();

    • Car car = new Car();//对象名.成员名car.run();car.show();
  • 每一个new出来的对象都是堆内存中一块独立的空间

  • com.msr.lesson01.Car//全类名

成员变量

  • 局部变量与成员变量的区别

    • 声明位置

      • 成员变量声明在函数外部,类的内部

      • 成员变量声明在函数或语句内部

    • 默认值

      • 成员变量有默认值

      • 局部变量除了形式参数外都要先初始化在使用

    • 内存中的位置

      • 成员变量依附于对象,纯在堆内存中

      • 局部变量依附于函数或语句,存在栈内存中

    • 生命周期

      • 成员变量依附于对象,与对象同生共死

      • 局部变量在函数或语句执行完后,就会清理掉

  • 当内存中不再有变量引用该区域时,SC会清理内存中对应的区域

  • 默认初始化会先于显示初始化

  • 匿名对象调用属性无意义

    • new Car().wheels=10;
      new Car().show();
  • 当函数只被调用一次时,可以使用匿名对象

  • 匿名对象可以作为参数进行传递,传递的是地址值private

private

  • 表示私有的,成员被private修饰后,只能在该类中访问

  • set函数

    • 返回值类型:void

    • 形参:对应成员变量的类型

    • 禁止在get和set函数中进行逻辑判断,前端数据可以帮助过滤数据

    • public void setAge(int age) {
         this.age = age;
      }
  • get函数

    • 形参:对应成员变量的类型

    • 形参:无

    • public String getName(){
         return name;
      }
  • this:代表正在访问文当前类的对象的类型

    • 通过this.成员名 来区别成员变量和局部变量

构造器/构造函数/构造方法

  • 对单个对象进行初始化

  • 格式:

    •     /*
      修饰符 类名(数据类型 变量名,数据类型 变量名){
      舒适化内容
      } */
         public Person(){
             System.out.println("空参构造器");
        }

         public Person(String name) {
             this.name = name;
        }
  • 构造函数没有返回值类型,也不能写void

  • 构造函数的名字就是当前类的类名

  • 不能出现return语句

  • 当没有显式定义构造器时,那么JVM默认会提供一个空参构造器

  • 一旦显示定义构造器,无论定义的构造器是否带参数,那么JVM都不在提供构造器

  • 多个跟之前之间是以重载的形式存在的

posted on 2023-12-11 16:35  とんぽ  阅读(9)  评论(0)    收藏  举报

导航