java 类和对象
本文摘要:面向对象是一种以对象为中心的编程思想,Java中通过类实现面向对象。类定义使用class关键字,采用大驼峰命名,包含属性和方法。对象通过new实例化,成员变量默认初始化为null或0。使用this引用当前对象,解决变量命名冲突和方法调用问题。构造方法用于对象初始化,需与类同名且无返回值,支持重载和this调用。编译器会对未初始化的变量赋予默认值。面向对象强调对象间的协作,与关注过程的面向过程形成对比。
面向对象的认识
什么是面向对象
java中一切皆对象 面向对象是一种解决问题的思想 主要是依靠对象之间互助来解决问题
面向对象和面向过程的区别
面向对象是不关注过程 只关注人 物品 东西
面向过程是关注过程
例如
我们在生活中做饭
我们只用把菜放进锅里 不关注它炒菜的过程 不关注菜在锅中怎么翻炒的 锅菜两个对象互助完成 菜 叫面向对象
我们把菜在锅里怎么翻炒 放各种料 多少量 叫面向过程
面向对象和面向过程是一种解决问题的方法 而不是一门语言
类定义和使用
面向对象是指生活中的实体
洗衣机的功能 属性

简单认识类
类是对对象属性的描述 主要是属性和功能
类的定义格式
class是关键类的关键字
Test 是类的名字 必须和java的名字相同
{}类的主体

类名使用大驼峰的形式
例如
定义一个狗


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调用必须放第一行

不能形成嵌套调用

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

构造方法就地初始化

更多推荐


所有评论(0)