java009 - Java面向对象基础

1、类和对象

1.1 什么是对象

万物皆对象,客观存在的事物皆为对象。

1.2 什么是面向对象

1.3 什么是类 

类是对现实生活中一类具有共同属性行为的事物抽象。

特点:

  • 类是对象的数据类型
  • 类是具有相同属性和行为的一组对象的集合

1.4 什么是对象的属性

属性:对象具有的各种特征,每个对象的每个属性,都拥有特定的值。

1.5 什么是对象的行为

行为:对象能够执行的操作

1.6 类和对象的关系

  • 类是对现实生活中一类具有共同属性和行为的事物的抽象
  • 对象是看得见摸得着真实存在的实体

 重要总结:

1.7 类的定义

1.7.1 概念、重要性、组成

1.7.2 定义步骤
  • 定义类
  • 成员变量
  • 成员方法(无static关键字)

编写一个手机类:

1.8 对象的使用

1.8.1 语法

1.8.2 案例

001 使用之前定义的手机类的成员变量和成员方法

 002 定义学生类和学生测试类,并使用成员变量及成员方法

思路:

实现:

2、对象内存图

2.1 单个对象的内存图

2.2 多个对象的内存图

2.3 多个对象的指向相同内存图

3、成员变量和局部变量

3.1 成员变量和局部变量概念

3.2 成员变量和局部变量区别

4、封装

4.1 private关键字

why出现?

private关键字概念:

  • 是一个权限修饰符 
  • 可以修饰成员(成员变量和成员方法)
  • 作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能访问

 4.2 private关键字的使用

代码:

学生类:

 学生测试类:

4.3 this关键字

引入:

4.3.1 this概念

this修饰的变量即为成员变量

4.3.2 this使用场景

 解决:局部变量隐藏成员变量问题(同名问题)

4.3.3 this指对象引用
  • 代表所在类的对象引用
  • 方法被哪个对象调用,this就代表哪个对象

4.4 this内存原理

4.5 封装

4.5.1 封装概述

4.5.2 封装原则

4.5.3 封装的好处
  • 安全性
  • 复用性

5、构造方法 

5.1 概述

构造方法是一种特殊的方法,作用是用于创建对象。

构造方法的名称和类的名称相同,修饰符一般为public

5.2 构造方法功能

构造方法是完成对象数据的初始化

  • 作用:创建对象
  • 功能:完成对象数据的初始化 

5.3 案例

学生类:

测试类:

 5.4 构造方法注意事项

5.5 标准类的制作🌟🌟

给成员变量赋值两种方法

代码:

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/712444.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

project.config.json 文件内容错误] project.config.json: libVersion 字段需为 string, string

家人们,遇到了一个新的报错 于是从网上找了各种方法,有说把开发者工具关闭重启的,有说开发者工具下载重新下载的,有说开发者工具路径安装得在C盘的,均没有效果 解决方法: 1、运行项目,在开发者…

[安洵杯 2019]easy_serialize_php1

打开题目 题目源码&#xff1a; <?php$function $_GET[f];function filter($img){$filter_arr array(php,flag,php5,php4,fl1g);$filter /.implode(|,$filter_arr)./i;return preg_replace($filter,,$img); }if($_SESSION){unset($_SESSION); }$_SESSION["user&q…

好的测试数据管理,到底要怎么做?

你的组织是否实施了测试数据管理&#xff1f;如果你的组织处理关键或敏感的业务数据&#xff0c;测试数据管理肯定会让组织受益。与测试数据相关的问题占所有软件缺陷的 15%&#xff0c;这一事实强调了测试数据的重要性。本文将准确讨论测试数据经理职责、测试数据经理需要什么…

java-ssm-jsp广播剧制作订阅系统

java-ssm-jsp广播剧制作订阅系统 获取源码——》公主号&#xff1a;计算机专业毕设大全

AFL fork server和fuzzer的交互

看了一些博客&#xff0c;都是在说fuzzer和fork server进行交互&#xff0c;由fork server fork出子进程来执行程序&#xff0c;但是不太明白这两者到底是如何在代码层面进行交互的。 run_target中有这么一段代码&#xff0c;大概意思是fuzzer给fork server传递prev_timed_out…

13.网络游戏逆向分析与漏洞攻防-网络通信数据包分析工具-如果没有工具就创造工具

内容参考于&#xff1a; 易道云信息技术研究院VIP课 上一个内容 &#xff1a;12.游戏网络通信存在的问题 现在把游戏网络的架构看了一个小小的大概&#xff0c;可以用它的接口发数据接收数据了&#xff0c;如果真正想用它这一套东西&#xff0c;真正核心不在于它的接口而在于…

2024GAS《声学大讲堂》

由中国电子音响行业协会主办&#xff0c;上海市浦东新区先进音视频技术协会承办的GAS《声学大讲堂》2021年开播&#xff0c;三年来GAS《声学大讲堂》开设了“沉浸声音频与艺术”、“智能车载音频”、“智能可穿戴”、“智能耳机”、“智能音箱”、“专业音响”、“助听/辅听设备…

老卫带你学---leetcode刷题(268. 丢失的数字)

268. 丢失的数字 问题 给定一个包含 [0, n] 中 n 个数的数组 nums &#xff0c;找出 [0, n] 这个范围内没有出现在数组中的那个数。 示例 1&#xff1a; 输入&#xff1a;nums [3,0,1] 输出&#xff1a;2 解释&#xff1a;n 3&#xff0c;因为有 3 个数字&#xff0c;所以…

R语言安装和简单入门HelloWorld用法

R语言安装和简单入门HelloWorld用法 #R语言安装地址 https://www.r-project.org/ click->CRAN mirror->选择China下列表&#xff1a; https://mirrors.tuna.tsinghua.edu.cn/CRAN/ 选择Download R for Windows 选择base Download R-4.3.2 for Windows 下载文件R-4.3.2-…

怎么重构数据库表结构

重构数据库表结构是指对已有的数据库表进行调整和优化&#xff0c;以提高数据库的性能、可扩展性和可维护性。以下是一些重构数据库表结构的常见步骤&#xff1a; 分析现有表结构&#xff1a;首先&#xff0c;仔细分析现有的数据库表结构&#xff0c;了解表之间的关系和依赖关…

数据结构从入门到精通——算法的时间复杂度和空间复杂度

算法的时间复杂度和空间复杂度 前言一、算法效率1.1 如何衡量一个算法的好坏1.2 算法的复杂度 二、时间复杂度2.1 时间复杂度的概念2.2 大O的渐进表示法2.3常见时间复杂度计算举例2.4等差数列计算公式2.5等比数列计算方法 三、空间复杂度四、 常见复杂度对比五、 复杂度的oj练习…

ts学习:is关键词

is关键词主要用来框定类型并实现对应的类型断言&#xff0c;下面看一个例子 写一个简单函数来判断某个值是否是字符串类型 function isString(value:unknown):boolean{return typeof value "string" } 这里我们的参数选用了unknown类型&#xff0c;该类型就是一个…

python代码优化学习

代码优化对比&#xff1a; 优化前&#xff1a; # 登录系统 xxljob_login() start_time time.time() # 循环处理需要补数的数据 for item in authId_lists: preSettleInfoHandler(item) count 1 print("运行了第" str(count) "个") …

数据分析---主要工作

目录 几个主要工作常用的数据分析工具具体的使用场景几个主要工作 数据清洗和预处理:对原始数据进行清洗、去重、填充缺失值、处理异常值等操作,以确保数据的准确性和完整性。探索性数据分析(EDA):通过可视化和统计方法,对数据进行探索,发现数据的分布、相关性、异常情况…

【JVM】聊聊常见的JVM排查工具

JDK工具包 jps 虚拟机进程状况工具 jps是虚拟机进程状况工具&#xff0c;列出正在运行的虚拟机进程&#xff0c;使用 Windows 的任务管理器或 UNIX 的 ps 命令也可以查询&#xff0c;但如果同时启动多个进程&#xff0c;必须依赖 jps。jps -l 显示类名 jps :列出Java程序进程…

linux vi 退出编辑状态

在 vi 编辑器中&#xff0c;要退出编辑状态并保存或者放弃更改&#xff0c;需要执行以下步骤&#xff1a; 1. 保存并退出&#xff1a; - 按下 Esc 键确保你处于正常模式&#xff08;Normal Mode&#xff09;。 - 输入 :wq&#xff0c;然后按下 Enter 键。这将保存更改并…

SVPWM

SVPWM SVPWMSVPWM原理产品比较特点来源 SVPWM SVPWM的主要思想是以三相对称正弦波电压供电时三相对称电动机定子理想磁链圆为参考标准&#xff0c;以三相逆变器不同开关模式作适当的切换&#xff0c;从而形成PWM波&#xff0c;以所形成的实际磁链矢量来追踪其准确磁链圆。传统…

3.1作业

改变图片色彩————德国国旗 #include <stdio.h> #include <string.h> #include <unistd.h> #include <stdlib.h> int main(int argc, const char *argv[]) {FILE* fpfopen("./haha.bmp","r");int h0,w0;fseek(fp,18,SEEK_SET)…

yolo训练时遇到GBK编码问题

yolo训练时遇到GBK编码问题 启动训练具体信息如下&#xff1a; comet upload E:\python\yolov9-main.cometml-runs\e0c17dd22058467f98cf447d5cc45bf5.zip COMET INFO: Using ‘D:\pycharmProject\yolov5-master-6.2\.cometml-runs’ path as offline directory. Pass ‘off…

高比例清洁能源接入下计及需求响应的配电网重构(matlab代码)

目录 1 主要内容 目标函数 重要约束条件 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序复现《高比例清洁能源接入下计及需求响应的配电网重构》&#xff0c;以考虑网损成本、弃风弃光成本和开关操作惩罚成本的综合成本最小为目标&#xff0c;针对配电网重构模型的…