Java八种基本变量作为类的成员变量的默认值操作
作者:DayFight_DayUp 发布时间:2022-06-25 04:55:58
标签:Java,变量,成员变量,默认值
Java类成员变量的默认值
基本数据类型作为类的成员变量时可以不赋予初值,在方法中输出也不会报错。
下面我们看看我们的八种数据类型的默认值是什么样的
上代码
package objectandclass;
import java.awt.SecondaryLoop;
public class VarText {
//整形变量
byte b;
short s;
int i;
long l;
//实型变量。
float f;
double d;
//布尔型
boolean bool;
//字符型
char c;
String str;
public VarText(){
System.out.println("各种整型成员变量的默认值:");
System.out.println("byte默认值:"+this.b+"short默认值:"+this.s+"int默认值:"+this.i+"long默认值:"+this.l);
System.out.println("各种实型成员变量的默认值:");
System.out.println("float默认值:"+this.f+"double默认值:"+this.d);
System.out.println("布尔型成员变量的默认值:");
System.out.println("boolean默认值:"+this.bool);
System.out.println("字符型成员变量的默认值:");
System.out.println("char默认值:"+this.c);
System.out.println("引用型成员变量的默认值");
System.out.println("String默认值:"+this.str);
}
输出的结果是这样:
各种整型成员变量的默认值:
1 byte默认值:0 short默认值:0 int默认值:0 long默认值:0
2 各种实型成员变量的默认值:
float默认值:0.0 double默认值:0.0
布尔型成员变量的默认值:
boolean默认值:false
字符型成员变量的默认值:
char默认值:
大家肯定会惊奇,为什么整形和实数型输出的结果会一样,
其实真正的结果如下:
总结
基本类型 | 默认值 |
---|---|
byte | 0 |
short | 0 |
int | 0 |
long | 0L |
float | 0.0f |
double | 0.0d |
char | ‘\u0000' |
boolean | false |
boolean型变量的默认值问题
1、首先分析Java中的三种不同变量的区别
如下表所示
概念 | 默认值 | 其他 | |
类变量 | 也叫静态变量,是类中独立于方法之外的变量 用static 修饰 | 有默认初始值,系统自动初始化。 如boolean默认为false. | 可以被public,protect,private,static等修饰符修饰 |
成员变量 | 也叫实例变量,也是独立于方法之外的变量 没有static修饰 | 没有默认值,必须进行初始化。 | 可以被public,protect,private,static等修饰符修饰 |
局部变量 | 类的方法中的变量 | 没有默认值,必须进行初始化。 | 不可以被修饰符修饰 |
例如如下代码:
public class Test {
public static String name;//类变量
private boolean flag;//成员变量
public void print(){
String message="Hello";//局部变量
}
}
2、然后判断boolean型变量的类型
如果boolean型变量是类变量,则默认值为false.否则没有默认值。
来源:https://blog.csdn.net/a907691592/article/details/51607249
0
投稿
猜你喜欢
- maven3 安装:安装 Maven 之前要求先确定你的 JDK 已经安装配置完成。Maven是 Apache 下的一个项目,目前最新版本是
- 觉得作者写得太好了,不得不收藏一下。对这个例子的理解://类型参数不能用基本类型,T和U其实是同一类型。//每次放新数据都成为新的top,把
- 简介switch的新特性可是源远流长,早在JDK 12就以预览功能被引入了,最终在JDK 14成为了正式版本的功能:JEP 361: Swi
- 前言本文的多租户是基于多数据库进行实现的,数据是通过不同数据库进行隔离。下面话不多说,来看看详细的介绍:MyCat 基本配置首先针对多租户配
- 今天就来拿贪吃蛇小游戏来练练手吧!贪吃蛇游戏规则: 1.按下空格键(游戏未结束)则游戏
- 1概述众所周知,Java支持平台无关性、安全性和网络移动性。而Java平台由Java虚拟机和Java核心类所构成,它为纯Java程序提供了统
- 前两天发现 idea 终于更新了2020.1版本,新增了好多的特性,这里不介绍,主要写一下中文插件的安装首先下载新版 安装包 https:/
- 这篇文章主要介绍了Spring boot @RequestBody数据传递过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有
- 1:Maven命令下载源码和javadocs当在IDE中使用Maven时如果想要看引用的jar包中类的源码和javadoc需要通过maven
- 工厂方法模式的定义工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂
- 基于Java语言实现Socket通信由于近日项目需求,需要在服务器中增加Socket通信的功能,接收硬件设备发送的心跳包和相关数据,因此又重
- Object 类位于 java.lang 包中,是所有 Java 类的祖先,Java 中的每个类都由它扩展而来。定义Java类时如果没有显示
- 一般文本文件我们以日志文件.log文件为例:import java.io.BufferedReader; import java.io.Fi
- 如果你是想在java目录下创建多级目录,直接新建package,如图输入然后,取消勾选Compact Empty Middle Packag
- 分页插件  MP中自带了分页插件的功能,只需要在配置类中进行简单的配置即可使用分页的相关功能。分页插件常
- @Validated和BindingResult 使用遇到的坑@Validated 与BindingResult 需要相邻,否则 变量res
- 一、消息中间件相关知识1、概述消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列
- 参考答案java.sql.Date 是 java.util.Date 的子类java.util.Date 是 JDK 中的日期类,精确到时、
- 在基于Mybatis-plus实现多租户架构中,介绍了在多租户项目中如果要开启一个子线程,那么需要手动进行RequestAttributes
- 本文实例讲述了Java基于分治法实现的快速排序算法。分享给大家供大家参考,具体如下:package cn.nwsuaf.quick;/**