java 类 属性数量_跟我学java编程—Java类的属性与成员变量

在定义类时,经常需要抽象出它的属性,并定义在类的主体中。下面就来介绍与属性相关的内容。

常量属性

在类中定义的属性有常量属性和成员属性之分。常量属性用final关键字修饰,常量只能赋值一次,在程序中不能修改它的值。一般来说,在类中定义的常量属性用大写字母命名。

例如:

6ba15e7a1fe42d8cad9faf29d18dce31.png

成员属性

成员属性是抽象出来的类属性,成员属性不能直接被外部访问或修改,需要通过get和set方法来访问或修改属性值,成员属性一般用private关键字修改,表明为私有成员,禁止外部直接访问。

成员属性的作用范围为整个类文件,作用范围就是成员属性的有效工作范围,在整个类文件中,成员属性都可以被访问和使用。

例如:

15b8313b541398f7ea08a22097be7ae6.png

Fruits类有三个成员属性,分别是water(汁液含量)、sugar(糖分含量)、fragrance(芳香度),这三个属性被修饰为private,禁止外部访问和修改。外部如果要访问和修改类属性,需要调用类提供的get和set方法,如getWater()方法可以获取water属性的值,setWater(String water)方法可以设置water属性的值,另外两个属性,依次类推。

对于成员属性,Java提供了三种初始化方式。

(1)使用默认值初始化

Java为声明的成员属性或变量提供了默认初始化机制,当声明成员属性或变量时即使没有显式赋值,Java也会为以下类型的成员属性或变量提供默认值:

c04d7b1545af5cbcdf0bd3018924c847.png

(2)使用显式值初始化

声明成员属性的同时,进行赋值。

例如:

394461987a528b744136640e0dff7c2e.png

(3)使用类构造方法初始化

通过类构造方法来初始化属性(类构造方法后面介绍),可参考本节的Fruits类构造方法。

成员变量

变量前面已经介绍过了,变量的主要作用是存储程序运行过程中的临时数据,程序退出后,变量存储的内容不再存在。在类体中声明的变量称为成员变量。

成员变量的作用范围为整个类文件,在整个类文件中,成员变量都可以被访问和使用。

例如:

adae645bec79bb6b58c11a826a080ef0.png

与成员属性不同的是,成员变量无需提供get和set方法。成员变量一般用于类内部存储临时数据使用。

局部变量

在类方法体中声明的变量为局部变量。

局部变量的作用范围为方法体,在方法体中,局部变量可以被访问和使用,局部变量在方法体外无效,不能被访问和使用。

例如:

bc5d76698f63cb322b9f0a4a5ac67a7b.png

其中,在showArea()方法中声明的r为局部变量,局部变量必须要声明并赋值后才能使用。

■ 知识点拨

Java类的成员属性和成员变量有所区别,成员属性是类所表述事物的共同特征,成员属性不能被外部直接访问和修改,必须通过类提供的get和set方法访问和修改成员属性。成员变量一般用于类内部存储临时数据使用,不需要提供get和set方法。

■ 思考与练习

请说明类成员属性、成员变量、局部变量的区别。

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

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

相关文章

java获取界面输入数字_通过JAVA设计 GUI 界面的计算器程序,用户可以通过鼠标依次输入参加计算的数值,进行加、减、乘、...

通过JAVA设计 GUI 界面的计算器程序,用户可以通过鼠标依次输入参加计算的数值,进行加、减、乘、2016-08-22 0 0 0 4.0分其他1积分下载如何获取积分?通过JAVA设计 GUI 界面的计算器程序,用户可以通过鼠标依次输入参加计算的数值&am…

java自定义错误码类_如何编写和应用Java的自定义异常类

11.7.1编写自定义异常类的模式编写自定义异常类实际上是继承一个API标准异常类,用新定义的异常处理信息覆盖原有信息的过程。常用的编写自定义异常类的模式如下:public class CustomException extends Exception {//或者继承任何标准异常类public Custom…

java对mysql查询_如何利用java对mysql数据库进行增删改查

代码如下:增:Test//数据插入public void demo1() {Connection connnull;Statement stmtnull;try {//注册驱动Class.forName("com.mysql.jdbc.Driver");//创建连接connDriverManager.getConnection("jdbc:mysql://localhost:3306/name&quo…

util.java_TelnetUtil.java

package com.ailk.ess.webapp2.servermng.net;import java.io.InputStream;import java.io.OutputStream;import java.util.ArrayList;import java.util.List;import org.apache.commons.net.telnet.TelnetClient;public class TelnetUtil {//telnet客户端对象VT220/VT52Telnet…

生活中java继承例子_简单继承例子:java

通用类,来继承出圆和矩形。package circle;public class Geometric {private String color"white";private boolean filled;private java.util.Date dateCreated;public Geometric(){dateCreatednew java.util.Date();}public Geometric(String color,boo…

java技术简介英文_Java技术常见的英文缩写

1、 URL,Uniform Resource Location,统一资源定位符。2、 JDBC,Java DataBase Connectivity,Java数据库连接。3、 JSP,Java Server Pages,Java服务器页面。4、 JVM,Java Virtual Machine&#x…

Java解决空引用_Java 匠人手法 - 优雅的处理空值

原标题:Java 匠人手法 - 优雅的处理空值作者:Lrwin导语在笔者几年的开发经验中,经常看到项目中存在到处空值判断的情况,这些判断,会让人觉得摸不这头绪,它的出现很有可能和当前的业务逻辑并没有关系。但它会…

mysql 尝试读取超过流末尾的_MySql异常:尝试读取超出流末尾的内容

问题详细描述:2020-09-04 11:28:19,576 [DefaultQuartzScheduler_Worker-1] DEBUG MySql.Data.MySqlClient.MySqlException (0x80004005): Fatal error encountered during command execution. ---> MySql.Data.MySqlClient.MySqlException (0x80004005): Fatal …

mysql对称连接什么意思_对称加密与非对称加密的区别是什么

区别:1、对称加密中加密和解密使用的秘钥是同一个;非对称加密中采用两个密钥,一般使用公钥进行加密,私钥进行解密。2、对称加密解密的速度比较快,非对称加密和解密花费的时间长、速度相对较慢。3、对称加密的安全性相对…

php引号变量_下列PHP数据库insert语句中变量前后的点和双引号有什么作用?

这就要从双引号和单引号的作用讲起:双引号里面的字段会经过编译器解释然后再当作HTML代码输出,但是单引号里面的不需要解释,直接输出。例如:$abcI love u;echo $abc //结果是:I love uecho $abc //结果是:$abcecho "$abc&quo…

php excel 设置常规_php实现的操作excel类详解

本文实例讲述了php实现的操作excel类。分享给大家供大家参考,具体如下:class Excel{static $instancenull;private $excelnull;private $workbooknull;private $workbookaddnull;private $worksheetnull;private $worksheetaddnull;private $sheetnum1;p…

php析构函数使用,php析构函数__destruct()使用方法及实例讲解

通过上一篇文章《php 构造函数__construct()使用分析》的讲解,我们已经知道了什么叫构造方法。那么与构造方法对应的就是析构方法。析构方法允许在销毁一个类之前执行的一些操作或完成一些功能,比如说关闭文件、释放结果集等。析构方法是PHP5才引进的新内…

ubuntu创建php文件,ubuntu系统创建桌面快捷方式的方法

在ubuntu系统中,自己安装的程序往往没有创建桌面快捷方式,每次都通过终端然后输入绝对路去径执行命令比较繁琐,其实可以像windows那样自己在桌面程序创建程序的快捷方式,这样方便了每次的启动。这里以Navicat为例说明一下在linux(…

php设计模式及案例分析,一个案例来认识PHP经典设计模式 | 张先生博客

/*** 单例模式*/class Site{//属性public $siteName;//本类的静态实例public static $instance null;//禁用掉构造器private function __construct($siteName){$this->siteName $siteName;}//获取本类唯一实例public static function getInstance($siteNme 默认siteName值…

php如何加密图片,php实现图片加密解密,支持设置密码 (两年后版本!)

* by hello* 84587470** php 文件加密类,支持设置密码,图片,文件都可以!情侣们的福音!!!**/$from C:\Users\Administrator\Desktop\t\test.png;$to C:\Users\Administrator\Desktop\t\\;//加密…

php面向对象编程代码怎么写,php面向对象编程(一)

类与对象关系:类就像一个人类的群体 我们从类中实例化一个对象 就像是制定一个人。面向对象程序的单位就是对象,但对象又是通过类的实例化出来的,所以我们首先要做的就是如何来声明类, 做出来一个类很容易。类的格式class 类名 { …

雅马哈php mt7,雅马哈专业录音室监听耳机 HPH-MT7 正式发售!

从 NS-10M 监听音箱到 MSP 系列和 HS 系列,雅马哈始终秉持忠实的设计理念,聚焦声学精度,为音频专家提供出色的平台,构建并成就他们专属的专业之声。MT7录音室监听耳机承袭了这一基本研发理念,重现最为精细的声音,力求满…

php 支付签名验证失败,choosewxpay fail解决,微信支付签名验证错误解决

require_once("config.php"); //这个文件原来写过的博客有http://jipq1016.com/display.php?id9//统一下单$openid$_POST[openid];$arr[appid]$appid; //商户appid$arr[mch_id]$mch_id; //微信支付…

趣学java,编程趣学习app

编程趣学习在这里会有多种编程语言是可以去学习的Java或者是c,入门级的海鸥就是更加有难度的都是可以选择一个自己可以去学习的课程,跟着讲师一同开始及逆行语言基础知识的学习后面大家就是根据自己的的课后作业完成,去自己调试新的程序。编程…

cgi php脚本运行超时间,php超时 - php-cgi调用外部程序超时,但php在命令行模式下能完整运行外部程序...

运行环境为Ubuntu14.04php脚本无论用Apache还是nginx都会在R语言运行一半时终止运行(在需要等待运行3~5秒时的步骤停止)但用php在命令行模式php -f result.php却能完整运行。请问是否能通过修改php配置,解决这个问题回复内容:运行环境为Ubuntu14.04php脚…