面向对象编程oop

面向对象编程【oop】

什么是面向对象

面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装
)数据。


抽象


三大特性:封装、继承、多态


从认识论角度考虑是先有对象后有类。
对象,是具体的事物。
类,是抽象的,是对对象的抽象。


从代码运行角度考虑是先有类后有对象的。

类是对象的模板。


方法的调用

静态方法有static的可以直接在主类中调用

非静态方法要实例化才能调用

公共类要和主类在同一文件中


形参和实参

形式参数和实际参数的类型要一致

public static void main(String[] args){
  int add = add(1,2);// 实参
}

public static int add (int a ,int b){// 形参
  return a+b;
}

值传递

public class Demo04{
  public static void main(String[] args){
    int a=1;
    System.out.println(a);//1
    
    Demo04.change(a);
    System.out.println(a);//1
  }
  
  //返回值为空
  public static void change(int a ){
    a=10;
  }
}

引用传递

对象,本质还是值传递

public class Demo05{
  public static void main(String[] args){
    Person person = new Person();
    
    System.out.pringln(person.name);//null
    
    Demo05.change(person);
    
    System.out.println(person.name);//陈
  }
  
  public static void change(Person person){
    //person是一个对象:指向的--》Person person= new Person();这是一个具体的人可以改变
    person.name="陈";
  }
}

//定义了一个Person类,有一个属性:name
class Person{
  String name;//null
}

类与对象

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

对象是抽象概念的具体实例

类是抽象的它需要实例化。

类:静态的属性、动态的行为


构造器

一个类即使什么都不写,它也会存在一个方法。

构造函数基本上定义了两个规则。分别如下:

  • 构造函数名必须与其类名称相同
  • 构造函数必须没有显式返回类型

创建对象内存分析

面向对象编程oop

main方法在栈底部

对象是通过引用操作的:栈---》堆


面向对象编程oop

上一篇:收下这7款插件,让你在使用 Vite 的时候如虎添翼


下一篇:Photoshop简单打造一种低调色