4.类的定义,变量类型,方法类型

article/2025/3/19 22:24:09

文章目录

  • 1.类的概念
    • 1.1 如何创建一个类
    • 1.2 如何定义一个类
      • 1.2.1变量
      • 1.2.2 方法
  • 2.对象
  • 3.类定义使用实例
  • 4.理解类和对象的关系
    • 4.1.一个java程序和类之间的关系
  • 5.细节知识分析
    • 5.1.类与类的关系
    • 5.2.变量和变量区别
    • 5.3.方法的区别
    • 5.4.类方法和类变量的特点

1.类的概念

类java是基本要素,非常重要,怎么理解类的概念呢?
如果将Java程序当作一个工厂的话,那么类就是工厂里的电子设备的设计图纸,每个电子设备有其对应的属性和操作方法,而对象就是具体的电子设备,操作设备的工人知道电子设备的属性和操作方法后才能利用电子设备进行工作。
换句话说,类是创建对象的蓝图,而对象就是类的具体描述。

1.1 如何创建一个类

创建一个类需要的是用class关键字声明它,然后编写类体进行类的具体定义。

class 类名{类体的内容
}                 

class是声明类的关键字,当我们声明一个类后,我们需要用一对花括号去定义一个类,在花括号里编写java代码去定义一个类。例如:

class Person{}

1.2 如何定义一个类

在Java中,一个类的类体包括如下内容:变量,方法

1.2.1变量

变量,就是存储数据的标识符,我们可以用基本的数据类型(或复杂的引用类型)去声明一个变量,使其作为类定义的一部分。
其中变量可分为:
成员变量(实例变量:对象级别的变量 ,类变量:类级别的变量,用static修饰)

class Person{int age;//实例变量static String type = "中国人";//类变量
}

局部变量:方法级别的变量,局部变量的作用域只是方法

class Person{int age;//实例变量static String type = "中国人";//类变量public void method(){int num;//局部变量            }
}

1.2.2 方法

方法可分为:构造方法,实例方法,类方法(用static修饰的方法)
构造方法,用于构造对象的方法,在Java中默认提供无参构造方法,我们也可以自己编写构造方法。
实例方法就是普通的方法,只有创建了类的实例对象,通过对象进行调用。
类方法是直接可以通过类名进行调用的方法。

class Person{int age;//实例变量static String type = "中国人";//类变量//构造方法,注意它的写法//构造方法是一个类的必要属性之一public Person(){            }//实例方法public void method(){int num;//局部变量            }//类方法public static void method2(){}
}

2.对象

通过类的学习,我们知道了类是构建对象的蓝图,下面我们学习如何使用类来构建对象并进行使用。

类名  对象名;
对象名  = new 类名();
//上面的是对象的创建,下面是对象的使用
对象名.变量名
对象名.方法()

问:除了new的方式,还有那些方式可以得到一个实例对象?
1)clone方式(克隆)(原型模式,了解即可)
2)newInstance方式(反射机制,了解即可)
3)反序列化方式(序列化机制,了解即可)
4)对于final类可以直接赋值得到,例如String直接就可以String s=“dfadf”
5)通过对象工厂获取(工厂模式,了解即可)
这样我们就生成了一个对象实例。

3.类定义使用实例

下面我们写了一个名为Computer的类,然后在类ObjectStudy中用它生成了实例并使用实例对象达到我们的目的。

/*** 此类展示对象操作。*/
public class ObjectStudy {public static void main(String args[]){Computer com = new Computer();int m = 100;int n = 200;int result = com.add(m,n);result = com.add(120+m,n*10+8);System.out.println(result);}
}class Computer{int add(int x,int y) {return x+y;}
}

运行结果:
在这里插入图片描述

4.理解类和对象的关系

4.1.一个java程序和类之间的关系

在这里插入图片描述

我自己的理解来看:如果把java程序看做一个工厂的话,类就是工厂里的电子设备的设计图纸,电子设备有其对应的属性和操作方法,而对象就是电子设备的实体,控制设备的工人知道电子设备的属性和操作方法后才能利用电子设备可以生产出产品。

5.细节知识分析

5.1.类与类的关系

我个人认为类分为主类和子附属类(相当于一个公司的boss和员工,而这个关系是逐级递分的,就是说子附属类的下级可以有子子附属类),主类是最终要运行的那个类,它一般是决策类。主类和其子类的组成的工程的类层次结构。

5.2.变量和变量区别

实例变量:简单来说就是方法外,类里声明的变量,它作用于对象级别
局部变量:简单来说就是方法内声明的变量,它作用于方法级别
类变量:用static修饰的方法外,类里声明的变量,它作用于类级别
在方法体里的局部变量优先级高于成员变量(如果出现局部变量和实例变量同名的情况)

5.3.方法的区别

方法分为构造方法,实例方法,类方法:
**构造方法:**是类中的一种特殊的方法,当程序用类创建对象是需要使用它的构造方法。构造方法没有类型,它的名字和其类名完全相同。如果没有写,编译器会自动给一个空的构造方法。

**实例方法:**实例方法具有入参,出参,方法名等结构,它代表一个实例的能力,通常用来定义业务处理逻辑。

**类方法:**类方法就是用static修饰的实例方法,它代表一个类的能力,通常用来定义算法类的方法。

5.4.类方法和类变量的特点

类方法和类变量拥有各自独自的内存空间,且只有一个。

代码地址:
https://gitee.com/yan-jiadou/study/tree/master/Java%E5%9F%BA%E7%A1%80%E5%AD%A6%E4%B9%A0/src/main/java/exa04

关于方法的具体分析在下一篇博客会详细说明。


http://chatgpt.dhexx.cn/article/ZQn1Xgay.shtml

相关文章

关于类的定义

类的定义 类的概念如何定义类修饰符 类的概念 1、类是把事物的数据与相关功能封装到一起,形成一种特殊的数据结构,用以表达真是事物的一种抽象;而对象则是实际存在的属该类事物的具体个体,因而也称为实例(instance&am…

python 爬虫爬取疫情数据,爬虫思路和技术你全都有哈(一)

python 爬虫爬取疫情数据,爬虫思路和技术你全都有哈(二、数据清洗及存储) 爬起疫情数据,有两个网址: 1、百度:链接 2、丁香园疫情:链接 在这两个中,丁香园的爬虫相对简单一点&#…

采用python爬虫爬取数据然后采用echarts数据可视化分析

前言:采用python爬虫爬取天气数据然后采用echarts数据可视化画图分析未来天气变化趋势 从获取数据到可视化的流程 (熟悉爬虫爬取数据然后数据可视化这个过程) 一、python爬取未来8-15天的天气数据 1、导入用到的一些python第三方库 imp…

python网络爬虫爬取数据,python全网爬取内容

大家好,小编来为大家解答以下问题,python网络爬虫爬取数据,利用python爬取数据,现在让我们一起来看看吧! 网络爬虫,就是按照一定规则自动访问互联网上的信息并把内容下载下来的程序或脚本。 在整个的Python…

Python爬虫爬取网页数据并存储(一)

Python爬虫爬取网页数据并存储(一) 环境搭建爬虫基本原理urllib库使用requests库使用正则表达式一个示例 环境搭建 1.需要事先安装anaconda(或Python3.7)和pycharm *anaconda可在中科大镜像下下载较快 2.安装中遇到的问题&#x…

【用Java爬取网页图片——爬虫爬取数据】

用Java爬取网页图片——爬虫爬取数据 1、在创建项目中导入jsoup 2、创建一个保存下载图片的路径 3、使用URL读取网页路径,jsoup读取网页内容 4、利用属性标签获取图片连接块 5、因为该路径没有http:头,用StringBuilder增加 5、完善下载路径…

爬虫爬取数据

打开爬取工具页面,使用爬虫工具列表: 开始节点 仅仅是爬虫的起点,所有流程图必须有该节点。 爬取节点 该节点用于请求HTTP/HTTPS页面或接口 请求方法:GET、POST、PUT、DELETE等方法 URL: 请求地址 延迟时间:单位是毫秒,意思是爬取之前延迟一段时间在执行抓取 超时时间:网…

手把手教会 爬虫爬取json数据

提示:本章爬取练习的url地址 发现曲谱 (yoopu.me) 前言 我们学爬虫,有时候想要的数据并不在html文本里面,而是通过js动态渲染出来的。 如果我们需要爬取此类数据的话,我们该怎么办呢? 请读者接着往下看&#xff1a…

六个步骤学会使用Python爬虫爬取数据(爬虫爬取微博实战)

用python的爬虫爬取数据真的很简单,只要掌握这六步就好,也不复杂。以前还以为爬虫很难,结果一上手,从初学到把东西爬下来,一个小时都不到就解决了。 Python爬虫六部曲 第一步:安装requests库和BeautifulS…

网络爬虫入门:网络爬虫的目的,企业获取数据的方式,可以用于做爬虫的程序语言,爬虫爬取数据的步骤

目录 爬取数据的目的: 1.获取大量数据,用于做数据分析 2.公司项目的测试数据,公司业务所需数据 企业获取数据的方式 1.公司自有数据 2.第三方数据平台购买(数据堂,贵阳大数据交易所) 3.爬虫爬取数据…

利用爬虫爬取数据集

相信大家在学习tensorflow的过程中,会想要自己动手来试试加载我们的数据集,而不再局限于从datasets上下载数据集。但是往往一个模型的训练就需要很庞大的数据集,因此写下这篇博客教大家如何用爬虫爬取图片,制作自己的数据集&#…

微信小程序实名认证接口_人脸核身接口整理

一、微信小程序实名认证接口_人脸核身接口整理 开场一个字: 悲观。目前实名接口,人脸识别接口开放度不高。“实名信息授权”已经回收。 二、人脸核身接口 1.使用条件 需要现申请通过才能使用。 目前开放的分类不多,并且还需要行业资质。 …

微信小程序—人脸识别

1.首先你要有一个可以就行人脸识别的服务器&#xff0c;然后就是上传到百度云&#xff0c;百度云人脸识别的API接口全面升级到V3版本&#xff0c;并进行开放测试 2.wxml代码 <camera device-position"{{sxt}}" flash"off" binderror"error" s…

微信小程序实现人脸识别注册登录

前言 这是一篇关于一个原创微信小程序开发过程的原创文章。涉及到的核心技术是微信小程序开发方法和百度云人脸识别接口。小程序的主体是一个用于个人密码存储的密码管理器&#xff0c;在登陆注册阶段&#xff0c;需要调用百度云人脸识别接口以及百度云在线人脸库的管理接口。…

C# Winform开发人脸识别小程序 (基于百度接口)

目录 一、设计思路1、背景2、简介3、用到的技术4、设计功能一&#xff1a;用户注册功能概述功能示意图时序图 功能二&#xff1a;人脸识别功能概述功能示意图时序图 二、实现1、环境准备2、百度接口配置3、技术准备4、代码实现功能一&#xff1a;用户注册功能二&#xff1a;人脸…

python人脸检测与微信小程序_微信小程序人脸识别功能

本文档以微信小程序为例&#xff0c;微信小程序开发人脸核身功能需要两个申请&#xff1a;腾讯云申请人脸识别服务和小程序申请人脸识别服务&#xff08;注意&#xff1a;只有符合以下条件的机构才能在小程序端申请&#xff09; 政务&#xff1a;政府机构或事业单位 金融&…

使用uniapp开发微信小程序的人脸采集功能/人脸识别功能

✅作者简介&#xff1a;大家好我是瓜子三百克&#xff0c;励志成为全栈工程师的一枚程序猿&#xff0c;也是喜欢在学习和开发中记录笔记的小白博主&#xff01; &#x1f4c3;个人主页&#xff1a;瓜子三百克的主页 &#x1f525;系列专栏&#xff1a;uniapp前端 &#x1f496;…

无需证书微信小程序实现人脸识别—E证通

E证通 前言收费标准接入准备小程序1、 添加服务器域名白名单2、添加业务域名白名单3、安装 SDK/小程序包4、SDK 调用步骤即实操代码4.1、初始化 SDK4.2、 调用 SDK 5、拿到回调结果6、使用uni-app开发6.1、小程序运行后&#xff0c;在小程序中丢入sdk包6.2、把sdk包转换成uni-a…

小程序实现人脸识别与小程序发布

文章目录 前言主要实现功能效果演示PC端手机端 调用百度Ai人脸检测接口小程序发布流程项目源码编程之外 前言 人脸识别其实没那么复杂&#xff0c;我国几个大厂都有他们的AI开放平台&#xff0c;调用一下他们的人脸检测接口就行了&#x1f601;&#xff08;虽然接口不是自己写的…

节假日查询接口,加班,补班,日期查询,放假,日历

一、接口介绍 通过本数据&#xff0c;可以查询节假日、加班日期&#xff0c;以及每个日期的对应的国际日和我国传统节日的简介。广泛使用于日程安排、证券投资、日历等功能的应用中展示。 二、使用案例截图 如何查看调用效果&#xff1f; 1、通过链接&#xff0c;点击【在线…