菜鸟的JavaSE学习之旅5

news2024/12/29 10:49:39

这是一个目录

  • 面向对象
  • 类和对象
    • 对象
    • 类的定义
    • 一个对象的内存
    • 成员变量和局部变量
      • 定义位置不同
      • 作用范围不同
      • 默认值不同
      • 内存位置不同
      • 生命周期不同
    • 关键字
      • this关键字
    • 构造方法
    • 标准的类

面向对象

当需要实现一个功能的时候,不关心具体的步骤,而是找一个具有该功能的人帮忙做事,强调对象;
面向过程则强调过程

System.out.printnln(Arrays.toString(array));

三大特性:封装、继承和多态

类和对象

一组关于属性和行为的集合,可以看出一类事物的模板,使用事物的属性特征和行为特征来描述该类市区
属性:事物的状态信息
行为:该事物能做什么

对象

类是对一类事物的描述,是抽象的;
对象是一类事物的实例,是具体的;
类是对象的模板,对象是类的实体

类的定义

成员变量
成员方法

public class Student{
	//成员变量
	String name;//姓名
	int age;//年龄
	//成员方法没有static
	public void eat(){//吃饭
		System.out.println("吃饭");
	}
	public void sleep(){
		System.out.println("睡觉");
	}
	public void study(){
		System.out.println("学习");
	}
}

一个类不能直接使用,需要根据类创建一个对象,才能使用
导包、创建、使用

import Student//类的位置
//创建
//类名称 对象名 = new 类名称()
public class DemoStudent{
	//使用:对象名.成员变量名
	//对象名.成员方法名(参数)
	public static void main(String[] args){
		//创建对象(根据Student类)
		Student stu = new Student();
		System.out.println(stu.name);
		System.out.println(stu.age);
		//成员变量不赋值,有默认值,规则和数组一样
		stu.name = "赵";
		stu.age = 23;
		System.out.println(stu.name);
		System.out.println(stu.age);
		//使用成员方法
		stu.eat();
		stu.sleep();
		stu.study();
	}
}

一个对象的内存

在这里插入图片描述

成员变量和局部变量

定义位置不同

成员变量:在方法外部,直接写在类中
局部变量:在方法内部

作用范围不同

成员变量:整个类通用
局部变量:只有方法中才可以使用

默认值不同

成员变量:没有赋值的话会有默认值,规则和数组一样
局部变量:没有默认值,使用需先进行赋值

内存位置不同

成员变量:位于堆内存
局部变量:位于栈内存

生命周期不同

成员变量:随对象创建而生,随对象被垃圾回收而消失
局部变量:随方法进栈而诞生,方法出栈消失

关键字

private修饰,超出本类不能直接访问,提高代码的安全性
基本数据类型的布尔型,Getter方法要写成isXXX,set方法不变

this关键字

通过谁调用的方法,谁就是this

构造方法

构造方法是专门用来创建对象的方法,当通过关键字new来创建时,就是调用构造方法。
格式:public 类名称(参数类型 参数名称)
注意事项
1、构造方法的名称必须和所在类名称完全一样,就连大小写也要一样
2、构造方法不要写返回值,void都不写
3、不能return一个具体的返回值
4、如果没有编写构造方法,编译器会默认一个构造方法,没有参数、方法
5、构造方法也可以重载

标准的类

Java Bean四个组成部分
1、所有成员变量都要使用private关键字修饰
2、为每个成员变量编写一对Getter/Setter方法
3、编写一个无参数的构造方法
4、编写一个全参数的构造方法

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

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

相关文章

前端canvas实现图片涂鸦(Vue2、Vue3都支持)

先看一下效果图吧 代码组成&#xff1a;画笔大小、颜色、工具按钮都是组件&#xff0c;通俗易懂&#xff0c;可以按照自己的需求调整。 主要代码App.vue <template><div class"page"><div class"main"><div id"canvas_panel&qu…

RedHat9 | DNS剖析-DNS服务器综合部署

一、配置需求及网络拓扑 1、配置拓扑 2、配置需求 使用【主DNS服务器】管理meaauf.cn域和gz.meaauf.cn域&#xff1b;并将bj.meaauf.cn域委派给【子域DNS服务器】进行管理。在【主DNS服务器】上添加相应的A记录、别名记录、MX记录和PTR记录&#xff1a;【辅助DNS服务器】作为…

乡村振兴的实践与探索:以生态优先、绿色发展为导向,推动农村人居环境整治,建设美丽宜居乡村

一、引言 随着我国经济社会的快速发展&#xff0c;乡村振兴成为了新时代的重要战略。在这一背景下&#xff0c;以生态优先、绿色发展为导向的乡村振兴模式成为了重要的实践方向。本文旨在探讨如何通过生态优先、绿色发展的理念&#xff0c;推动农村人居环境整治&#xff0c;建…

FL Studio v21.2.3.4004中文破解版百度网盘下载

FL Studio v21.2.3.4004中文破解版是一款完整的软件音乐制作环境或数字音频工作站 (DAW)。代表了超过 18 年的创新发展&#xff0c;它在一个软件包中提供了您创作、编曲、录制、编辑、混音和掌握专业品质音乐所需的一切。FL Studio v21.2.3.4004中文破解版现在是世界上最受欢迎…

基于香橙派搭建家庭网盘

一、概述 家庭网盘是一种用于家庭用户的在线存储和文件共享服务。它允许家庭成员在云端存储、同步和分享照片、视频、文档等文件&#xff0c;方便快捷地访问和管理个人和家庭数据。家庭网盘通常提供安全可靠的数据存储和备份功能&#xff0c;保障用户数据的安全性。此外&#x…

vscode常用操作

1 vscode跳转node_modules下文件&#xff0c;没有切换定位到左侧菜单目录的问题 2&#xff0c;搜索node-modules 3&#xff0c;设置选中字体颜色 {"workbench.colorTheme": "Default Light Modern","editor.mouseWheelZoom": true,"termin…

斯坦福报告解读3:图解有趣的评估基准(上)

《人工智能指数报告》由斯坦福大学、AI指数指导委员会及业内众多大佬Raymond Perrault、Erik Brynjolfsson 、James Manyika等人员和组织合著&#xff0c;旨在追踪、整理、提炼并可视化与人工智能&#xff08;AI&#xff09;相关各类数据&#xff0c;该报告已被大多数媒体及机构…

基于朴素贝叶斯算法的微博舆情监控系统,flask后端,可视化丰富

背景&#xff1a; 微博作为中国最大的社交媒体平台之一&#xff0c;汇聚了海量用户生成的文本数据&#xff0c;承载着丰富的社会信息和舆论动向。随着互联网的快速发展&#xff0c;人们对于利用这些数据进行舆情分析和预测的需求日益增加。在这种情况下&#xff0c;以Python为…

为什么使用数据库类型器件库

项目地址&#xff1a;https://github.com/boringhex-top/OpenECADLib Altium 数据库类型器件库&#xff08;DbLib&#xff09;具有显著的优势&#xff0c;特别是对于复杂设计和高效元件管理来说。这里详细介绍数据库类型器件库的优势以及相关背景知识&#xff0c;以帮助你更好…

内网穿透入门使用(frp和natapp)

内网穿透入门使用 简单介绍穿透工具推荐FrpFrp下载安装服务端配置启动服务端配置客户端启动客户端效果查看 NATAppNATApp下载安装NATApp配置启动NATApp 使用途径 我的博客&#xff1a;Lichg&#xff0c;欢迎大家访问留言。 简单介绍 什么是内网穿透&#xff1a; 首先我们对内网…

【Oracle】PL SQL 怎么重新编译无效的对象

1.打开PL SQL &#xff0c;点击图中有红色的 2.点击齿轮按钮即可 from&#xff1a;【Oracle】PL SQL 怎么重新编译无效的对象_plsql编译无效对象的按钮在哪里-CSDN博客

python双色球选号程序的实现与解析

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、引言&#xff1a;双色球选号游戏的魅力 二、程序设计与实现 1. 生成红色球号码 2. 生…

JavaScript原型链污染原理及相关CVE漏洞剖析

0x00 背景 2019年初&#xff0c;Snyk的安全研究人员披露了流行的JavaScript库Lodash中一个严重漏洞的详细信息&#xff0c;该漏洞使黑客能够攻击多个Web应用程序&#xff0c;这个安全漏洞就是一个“原型污染漏洞”&#xff08;JavaScript Prototype Pollution&#xff09;&…

Linux:top命令的每一列的具体含义

Linux&#xff1a;top命令的每一列的具体含义 文章目录 Linux&#xff1a;top命令的每一列的具体含义图片显示top命令的概念语法显示字段的含义顶部字段第二行第三行第四行第五行每列字段的含义 图片显示 top命令的概念 top命令上一个常用的Linux命令行工具&#xff0c;用于实…

django中,无法跳转到请求的html页面?

出现错误&#xff1a; You’re seeing this error because you have DEBUG True in your Django settings file. Change that to False, and Django will display a standard 404 page. 在urls中&#xff0c;注释了系统的默认配置&#xff0c;这时就需要在setting配置文件中&…

K8S集群监控方案之Prometheus+kube-state-metrics+Grafana

序言 | Prometheus 中文文档 方案简单架构图 一、部署kube-state-metrics 1、部署文件下载 地址 kube-state-metrics/examples/standard at main kubernetes/kube-state-metrics GitHub 2、修改下载的文件 2.1、修改镜像 原镜像可能下载不了&#xff0c;这里修改deploy…

万界星空科技定制化MES系统帮助实现数字化生产

由于不同企业的生产流程、需求和目标各异&#xff0c;MES管理系统的个性化和定制化需求也不同。有些企业需要将MES管理系统与ERP等其他管理系统进行集成&#xff0c;以实现全面的信息共享和协同工作。有些企业需要将MES管理系统与SCADA等控制系统进行集成&#xff0c;以实现实时…

C++笔试强训day35

目录 1.奇数位丢弃 2.求和 3.计算字符串的编辑距离 1.奇数位丢弃 链接https://www.nowcoder.com/practice/196141ecd6eb401da3111748d30e9141?tpId128&tqId33775&ru/exam/oj 数据量不大&#xff0c;可以直接进行模拟&#xff1a; #include <iostream> #incl…

瑞芯微RV1126——人脸识别框架分析

项目核心是在Linux平台上利用摄像头采集人脸&#xff0c;并进行人脸识别。这个项目使用的是FFMPEGOPENCV虹软框架完成。 FFMPEG的主要工作是负责采集摄像头的数据并把摄像头数据发送给opencv。 Opencv的主要工作则是把摄像头数据转换成矩阵数据。 虹软的主要功能则是利用Open…

AGI |一文快速上手LangChain的新利器:LangGraph!

目录 前言 Part1 LLM Agent &#xff08;一&#xff09;Agent概述 &#xff08;二&#xff09;Agent框架 Part2 LangGraph &#xff08;一&#xff09;LangGraph介绍 &#xff08;二&#xff09;LangGraph组成 &#xff08;三&#xff09;LangGraph使用 &#xff08;四…