Java#6(类和对象及封装)

news2025/3/1 22:22:07

目录

一.类和对象基本介绍

1.类:是对象共同特征的描述;

2.对象:是真实存在的具体东西

如何定义类?

对象的定义和使用?

二.封装

原则:对象代表什么,就得封装什么数据,并提供数据对应的行为

1.实例理解

三.Private(私有权限) 


一.类和对象基本介绍

1.类:是对象共同特征的描述;

2.对象:是真实存在的具体东西

必须先设计类,才能获取对象

如何定义类?

public class 类名{

        成员变量(代表属性,一般指名词)

        成员方法(代表行为,一般是动词)

}

(成员方法不用加static)

演示:

package Phone;

//定义一个phone类
public class Phone {
    //属性
    String p_name;//成员变量
    double price;//成员变量

    //行为
    //成员方法
    public void call(){
        System.out.println("使用手机打电话");
    }
    //成员方法
    public void PlayGame(){
        System.out.println("使用手机打游戏");
    }
}

对象的定义和使用?

public class 文件名 {
    public static void main(String[] args) {
        //定义类的对象
        类名 对象名 = new 类名();
    }
}

演示:

package Phone;

public class PhoneTest {
    public static void main(String[] args) {
        //定义Phone类的对象
        Phone p = new Phone();
        //给Phone对象p中的数据赋值
        p.p_name = "iqoo";
        p.price = 2999.98;
        //获取Phone对象中的值
        System.out.println(p.p_name);
        System.out.println(p.price);
        //调用Phone中的方法
        p.call();
        p.PlayGame();
    }
    
}

二.封装

原则:对象代表什么,就得封装什么数据,并提供数据对应的行为

1.实例理解

人画圆,画圆这个动作就得创建在圆当中

理解:圆这个类中有圆的半径和其他和圆相关的数据,所以画圆这个动作要在圆类中

而人这个类当中有人相关的数据和行为,而没有圆的相关数据,如何画圆?所以人画圆是调用了圆中画圆的方法.

三.Private(私有权限) 

加了private之后,权限变成私有,类外无法直接访问,但可以通过在类内设置函数来修改类内数据

 

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

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

相关文章

css :first-child 和 :first-of-type

1 :first-child p:first-child {background-color:yellow; }阅读理解&#xff1a;<p>元素的背景设为黄色 第一个子元素的背景设为黄色 父元素的第一个子元素是<p>时&#xff0c;该子元素背景设为黄色 举个栗子&#xff1a; <!DOCTYPE html> <html>…

关于java String类(源码等)分析

String 类 String声明为final &#xff0c;不可以被继承 String 实现了Serializable接口&#xff0c;表明字符串是可序列化的 String 实现了Compareble接口&#xff0c;表示String 可比较大小 String 内部定义了 final char[] value value用于存储字符串数据&#xff0c;表明…

蓝牙耳机什么牌子的好用?口碑比较好的国产蓝牙耳机推荐

对于那些经常戴耳机的人来说&#xff0c;戴上一副舒服的耳机是非常必要的。所以&#xff0c;那些口碑好&#xff0c;佩戴舒适的蓝牙耳机让大多数人都有了很好的体验感。人们之所以如此喜爱蓝牙耳机&#xff0c;一方面是因为其小巧而精致&#xff0c;另一方面则是因为其便于携带…

前端——router路由

1.路由配置 在store文件夹下&#xff0c;新建index.js文件中配置路由 /* vue3中 路由配置 */ //1.path&#xff1a;与vue2中子路由path不带“/”不同的是&#xff0c;vue3这里子路由path带了"/" //这样vue3中路由访问路径也就不是嵌套的&#xff0c;虽然路由配置这…

【深度学习】实验3答案:PyTorch实战——CIFAR图像分类

DL_class 学堂在线《深度学习》实验课代码报告&#xff08;其中实验1和实验6有配套PPT&#xff09;&#xff0c;授课老师为胡晓林老师。课程链接&#xff1a;https://www.xuetangx.com/training/DP080910033751/619488?channeli.area.manual_search。 持续更新中。 所有代码…

Python采集天气数据,做可视化分析【附源码】

知识点: 动态数据抓包requests发送请求结构化非结构化数据解析 开发环境: python 3.8 运行代码pycharm 2021.2 辅助敲代码requests 如果安装python第三方模块: win R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests)回车在pycharm中点击Term…

RocketMQ 5.0 API 与 SDK 的演进

作者&#xff1a; 艾阳坤 RocketMQ 5.0 SDK 采用了全新的 API&#xff0c;使用 gRPC 作为通信层的实现&#xff0c;并在可观测性上做了很大幅度的提升。 全新统一的 API 此处的 API 并不单单只是接口上的定义&#xff0c;同时也规定了各个接口不同的方法和行为&#xff0c;明…

【案例实战】分布式应用下登录检验解决方案(JWT)

文章目录1.需求背景以及JWT简介2.创建Maven项目&#xff0c;搭建SpringBoot项目3.容器化急速部署MySQL4.数据库表准备5.SpringBoot整合MySQLMyBatisPlus6.MyBatisPlus逆向工程自动生成7.SpringBoot整合JWT8.开发测试接口9.开发登录接口10.开发登录拦截器11.启动验证1.需求背景以…

cookie介绍:cookie实现增删改查功能

1、cookie介绍 只能存储文本&#xff0c;只能实现在本地的存储&#xff1b;单条存储有大小限制4kB左右&#xff0c;数量限制&#xff08;一般浏览器&#xff0c;限制大概在50条左右&#xff09;&#xff1b;读取有域名限制&#xff1a;不可跨域读取&#xff0c;只能由来自写入…

集成学习与随机森林

1、集成学习概念 集成学习(ensemble learning)是一类机器学习框架&#xff0c;通过构建并结合多个学习器来完成学习任务。一般结构是&#xff1a;先产生一组“个体学习器”&#xff0c;再用某种策略将它们结合起来。结合策略主要有平均法、投票法和学习法等 集成学习包含三个…

仿大众点评——秒杀系统部分01

秒杀系统 全局ID生成器 全局唯一ID生成策略&#xff1a; UUIDRedis自增snowflake算法数据库自增 这里使用Redis自增的数值&#xff0c;并拼接一些其它信息 Redis自增ID策略&#xff1a; 每天一个key&#xff0c;方便统计订单量ID构造是 时间戳 计数器 ID的组成部分&#…

Unity接入日志插件Log4Net

前言 log4net是一个日志插件&#xff0c;可以帮助我们把控制台输出的日志写入到本地。这个功能说简单就简单&#xff0c;说复杂其实还挺复杂。 为什么这么说呢&#xff0c;首先文件写入本地确实简单&#xff0c;但是如果你要实现一下功能就没那么简单了。 1.把每行日志按照指…

2022年“新一代”设备管理系统——支持低代码平台

在现代化企业的信息化管理体系建设中&#xff0c;设备管理系统被看作是重中之重。因为设备是工厂的主要生产要素&#xff0c;而且随着生产设备的日益增多&#xff0c;设备的重要性日益凸显。如何妥善管理这些设备也成了企业管理者经常考虑的问题。单纯依靠人工管理逐渐不能满足…

uniapp实现下拉刷新及上拉(分页)加载更多(app,H5,小程序均可使用)

开门见山地说&#xff0c;在移动端开发中&#xff0c;80%的项目都会涉及到列表展示&#xff0c;而有了列表不可避免的需求就是列表的下拉刷新和上拉加载更多。本篇文章主要介绍在使用uniapp开发移动端的过程中&#xff0c;比较好用的一个下拉及上拉组件&#xff0c;节约大家选择…

5.2启动内存分页机制,畅游虚拟空间

5.2启动内存分页机制&#xff0c;畅游虚拟空间 即使机器上只有512MB的内存&#xff0c;每个进程自己的内存空间也是4GB&#xff0c;这4GB便是指的虚拟内存空间。下面就是讲解虚拟内存空间是怎么来的。 5.2.1内存为什么要分页 问题场景&#xff1a;由于多进程的发展&#xff…

软考 - 计算机组成与结构

数据计算 数据的进制转化 十六进制符号 0X 或 H&#xff0c;可表示为0x18F 或 18FH m进制转n进制&#xff1a;先将m进制转化为十进制数&#xff0c;再将十进制数转化为n进制数&#xff08;2进制可直接转8进制&#xff08;3位&#xff09;和16进制&#xff08;4位&#xff09…

Python如何自动操作电脑桌面应用程序

前言 本文是该专栏的第2篇,后面会持续分享python的各种黑科技知识,值得关注。 熟悉python的朋友,都知道python可以做自动化,比如说selenium,pyppeteer,airtest等等。 但你是否听说过python可以来自动操作电脑桌面的应用程序呢,趟若临时接到某个需求,让你用python脚本…

基于zynq7100的OV5640摄像头照相机实验,提供工程源码和技术支持

目录1.设计架构2.工程简介3.zynq配置4.sd卡文件系统FATFS配置5.sd卡文件系统FATFS读写测试6.OV5640摄像头显示测试7.OV5640摄像头循环拍照测试8.OV5640摄像头按键拍照测试9.上板调试10.福利领取1.设计架构 设计框图如下&#xff1a; 采用Xilinx官方推荐的VDMA架构实现图像缓存…

TiDB丨一次TiDB GC阻塞引发的“惨案”......

前不久&#xff0c;从项目一线同学得到某集群的告警信息&#xff0c;某个时间段 TiDB duration 突然异常升高&#xff0c;持续时间6小时左右&#xff0c;需要定位到具体原因。 于是乎&#xff0c;我们就来一场关于TiDB GC阻塞的排查...... 分析过程 第一招 初步判断 既然…

Docker+nginx在CVM的机器远程发布hellogin

有两种方式&#xff0c;一种通过docker容器安装&#xff0c;一种是直接安装, 这里我们通过docker服务安装 常用操作 images是查询当前机器上所有的镜像有哪些 docker images删除镜像 docker rmi [MAGE ID ]可以查当前运行中的容器 docker ps -a开始/停止/删除容器 docker…