Java_类与对象
2024-10-21 09:53:55
类与对象
概念
- 类是抽象的,概念的,代表一类事物,比如人类、猫类……,即它是数据类型。
- 对象是具体的,实际的,代表一个具体事物,即使实例。
- 类是对象的模板,对象是类的一个个体,对应一个实例
对象在内存中存在的形式
属性/成员变量
- 从概念或叫法上看:成员变量 = 属性 = field (即 成员变量是用来表示属性的)
- 属性是类的一个组成部分,一般是基本数据类型,也可以是引用类型(对象,数组)。比如前面定义猫类时的int age;就是属性。
注意事项和细节说明
属性的定义语法同变量,示例:访问修饰符 属性类型 属性名;
访问修饰符:控制属性的访问范围
有四种访问修饰符:
public,protected,默认,private
属性的定义类型可以为任意类型,包含基本类型或引用类型
属性如果不赋值,有默认值,规则和数组一致。
如何创建对象
先声明再创建
Cat cat;//声明对象cat
cat = new Cat();//创建
直接创建
Cat cat = new Cat();
如何访问属性
对象名.属性名
类和对象的内存分配机制(※)
Java内存结构:
栈:一般存放基本数据类型(局部变量)
堆:存放对象(Cat cat,数组等)
方法区:常量池(常量,例如字符串),类加载信息
示意图[Cat(name,age,price)]
创建对象的流程:
Person = new Person();
p.name = "Tom";
p.age = 10;
先加载Person类信息(属性和方法信息,只会加载一次)
在堆中分配空间,进行默认初始化
把地址赋给p,p就指向对象
进行指定初始化,比如:
p.name = "jack" p.age = 10
成员方法
在某些情况下,我们要需要定义成员方法(简称方法)。比如人类:除了有一些属性外( 年龄,姓名..),我们人类还有一
些行为比如:可以说话、跑步..,通过学习,还可以做算术题。这时就要用成员方法才能完成。现在要求对Person 类完善。
最新文章
- 《静静的dojo》 总体教程介绍
- ext4 文件系统的一些记录
- physical addressing virtual addressing 物理寻址 虚拟寻址
- Android获取图片资源的4种方式
- YTU 2615: AB编程题--世界杯小组赛
- 异常:ERROR [org.hibernate.proxy.BasicLazyInitializer] - CGLIB Enhancement failed...
- [计算机基础]关于实体( Entity )和模型( Model )
- jsp web JavaBean MVC 架构 EL表达式 EL函数 JSTL
- NOIP 2008 双栈排序
- python requests 请求禁用SSL警告信息解决
- FPGA跨时钟域握手信号的结构
- CSAPP:第三章程序的机器级表示2
- LeetCode 485 Max Consecutive Ones 解题报告
- 服务器重启报错:提示fstab readonly报错!( /etc/fstab 只读无法修改的解决办法)
- 一起来点React Native——常用组件之Touchable系列
- C# 在程序中控制IIS服务或应用程序池关闭重启
- 几种减小javascript对性能影响的方法
- 微信小程序 --- https请求
- Hive将txt、csv等文本文件导入hive表
- 实现TextView中link的点击效果
热门文章
- Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.1.0
- drf-day6——九个视图子类、视图集、路由系统、认证组件
- Vue33 使用nvm管理nodejs
- day11-JSON处理和HttpMessageConverter<;T>;
- JavaScript基础练习
- The Missing Semester - 第二讲 学习笔记
- 关于vux-ui框架的scroller组件所踩的坑
- [BSR文摘] 如何解释CRP正常而多普勒超声显示关节炎活动的RA亚型
- CF837F - Prefix Sums
- Java第三讲动手动脑