本文摘要:面向对象是一种以对象为中心的编程思想,Java中通过类实现面向对象。类定义使用class关键字,采用大驼峰命名,包含属性和方法。对象通过new实例化,成员变量默认初始化为null或0。使用this引用当前对象,解决变量命名冲突和方法调用问题。构造方法用于对象初始化,需与类同名且无返回值,支持重载和this调用。编译器会对未初始化的变量赋予默认值。面向对象强调对象间的协作,与关注过程的面向过程形成对比。

面向对象的认识

什么是面向对象

java中一切皆对象  面向对象是一种解决问题的思想    主要是依靠对象之间互助来解决问题

面向对象和面向过程的区别

面向对象是不关注过程  只关注人  物品    东西

面向过程是关注过程     

例如

我们在生活中做饭     

我们只用把菜放进锅里 不关注它炒菜的过程     不关注菜在锅中怎么翻炒的   锅菜两个对象互助完成   菜    叫面向对象     

我们把菜在锅里怎么翻炒  放各种料  多少量     叫面向过程

面向对象和面向过程是一种解决问题的方法   而不是一门语言

类定义和使用

面向对象是指生活中的实体

洗衣机的功能     属性

简单认识类

类是对对象属性的描述   主要是属性和功能

类的定义格式

class是关键类的关键字

Test 是类的名字   必须和java的名字相同

{}类的主体

类名使用大驼峰的形式

例如

定义一个狗

. 一般一个文件当中只定义一个类
2. main方法所在的类一般要使用public修饰(注意:Eclipse默认会在public修饰的类中找main方法)
3. public修饰的类必须要和文件名相同

4. 不要轻易去修改public修饰的类的名称,

类的实例化

类的实体化就像我们在定义一个新的变量    在栈上开辟它所需要要的空间    来使用它      类来面向对象   用类类型创建对象的过程,称为类的实例化

我们用关键字new来实例化类 

用  实体化的名字.成员变量/成员方法

.

如果没有定义赋值

那么引用类型默认值为null   空指针

基本数据类型为0

this

问题

第一种当用new关键字实例化两个对象或多个对象时

通过对象来引用 类里的成员变量多个   方法只有一个   当调用方法时有两个对象 不知道指向哪个对象   会出现000

第二种  当参数与变量名相同时谁赋值给谁?

这些问题通过this来解决

用this来引用当前对象   怎么判断当前对象   谁调用了该方法   this就引用谁    java中通过引用来指向成员变量

this引用特性

this  引用当前对象

只能在成员方法内使用

在成员方法中  this  引用当前对象 不能引用其他对象

this的三种用法

1访问当前成员变量

2访问当前非静态的成员方法

3访问当前对象的其他构造方法

注  重要重要      this调用其他构造方法必须在第一行

对象的构造及初始化

如何初始化对象
我们知道局部变量必须要初始化      赋值

通过把类实体化  使用类内的方法成员变量

加载

理解一个概念  就是  我们java.c 文件  通过字节码成.class文件    到JVM运行的过程叫加载

构造方法

什么叫构造方法

就是给创建的对象成员变量初始化

构造格式

返回值   方法名(成员变量){
     主体代码

}

方法名必须和类名相同

必须在类里面   没有返回值    设置void也不行

一般使用public     只有一次生命周期

生成对象步骤

1为对象提供合适的空间

2没有加载的加载

3多线程保证安全

在初始化多个对象 使用构造方法  怎么知道他们调用哪个  怎么调用   通过入口函数 打印出的结果来观察

而在构造方法中也能构成重载    方法名相同  传参类不同

使用this来调用构造方法  传参

this调用必须放第一行

不能形成嵌套调用

构造方法的默认初始化

我们在不初始化时为什么还能打印出值来   因为编译器默认有自己的默认值

构造方法就地初始化

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐