news 2026/6/15 15:33:55

理解Java核心概念:类型转换、instanceof检查与静态成员

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
理解Java核心概念:类型转换、instanceof检查与静态成员

类型转换

Java中有普通数据类型和引用数据类型:

普通数据类型,有byte、short、char、int、long、float、double、boolean。普通数据类型,是指内存中的"框"存储的二进制是数据本身。

引用数据类型,有数组、对象。引用数据类型,是指内存中的“框”存储的是内存地址,即“引用”。真正的数据,存储在引用的在“堆”里的内存地址的“框”里。

普通数据类型,可以“从低到高”进行隐式的自动转换,或者“从高到低”进行显示的类型转换。因为“从低到高”,不会存在数据丢失问题,而“从高到低”存在数据丢失和精度降低风险。

从低--------------------------------------到高
byte -> short / char -> int -> long -> float -> double

bytea=127;intb=a;// 从低到高,可以隐式转换shortc=(short)b;// 从高到低,必须显示转换

引用数据类型也可以进行数据转换,比如子类、父类进行类型转换。引用类型“从低到高”时,可以进行隐式的类型转换,即父类引用一个子类对象。比如:

Fathera=newSon();

而“从高到低”,需要进行显性的类型转换,因为可能存在一定的安全风险,比如:

SonzhangLiu=(Son)wangWu;

转型只能在继承关系的类之间进行,否则编译报错。

instanceof

instanceof是一个关键字,用于检查一个对象是否是一个类或者其子类的对象,用法为:

objectinstanceofType

这个语句返回值是一个布尔值,其中object为一个待检查的对象,Type为一个类。

publicclassApp{publicstaticvoidmain(String[]args){FatherzhangSan=newFather("张三");SonzhangSi=newSon("张四");if(zhangSiinstanceofSon){System.out.println("张三 instanceof Son");}else{System.out.println("张三 not instanceof Son");}if(zhangSaninstanceofFather){System.out.println("张三 instanceof Father");}else{System.out.println("张三 not instanceof Father");}if(zhangSaninstanceofObject){System.out.println("张三 instanceof Object");}else{System.out.println("张三 not instanceof Object");}}}
张三 instanceof Son 张三 instanceof Father 张三 instanceof Object 进程已结束,退出代码为0

static

static关键字用来修饰变量或方法,标记这个变量和方法是静态变量和静态方法。

什么是静态变量?静态变量又称为类变量,在类加载时就保存在内存中,可以用“类.变量”或“实例.变量”进行访问。

什么是静态方法?静态方法又称为类方法,在类加载时就保存在内存中,可以用“类.方法”或“实例.方法”进行调用。

publicclassApp{// 定义演示用的子类privatestaticclassDemoClass{staticvoidsayHello(){System.out.println("hello");}staticintnum=10;}publicstaticvoidmain(String[]args){DemoClassd=newDemoClass();System.out.println(DemoClass.num);// 10 通过类名, 访问静态变量System.out.println(d.num);// 10 通过实例名, 访问静态变量DemoClass.sayHello();// hello 通过类名, 访问静态方法d.sayHello();// hello 通过实例名, 访问静态方法}}

静态变量和静态方法虽然可以通过实例访问,但是强烈建议通过类进行访问,这样更清晰的说明这个是类的变量或方法。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/12 11:57:59

终极指南:5分钟实现Vue项目Office文件在线预览

终极指南:5分钟实现Vue项目Office文件在线预览 【免费下载链接】vue-office 项目地址: https://gitcode.com/gh_mirrors/vu/vue-office 想在Vue项目中快速集成Word、Excel和PDF文件的在线预览功能吗?无需复杂配置和后端支持,Vue-Offi…

作者头像 李华
网站建设 2026/6/15 19:11:49

Transformers模型详解:Qwen3-VL-8B的位置编码机制研究

Qwen3-VL-8B 多模态位置编码深度解析:从设计到落地 在当前多模态AI迅猛发展的背景下,如何让模型真正“看懂”图像并“理解”文本之间的空间与语义关系,成为视觉-语言任务的核心挑战。以图文检索、视觉问答(VQA)和图像描…

作者头像 李华
网站建设 2026/6/12 12:46:39

9款AI写论文哪个好?我为你拨开迷雾,找到那个兼顾“真实感”与“专业度”的学术副驾驶宏智树AI

深夜的图书馆里,键盘声敲碎了寂静,也敲打着一位研究生紧绷的神经。屏幕上,22%的AIGC检测率像一道刺眼的红灯,他刚刚用某款热门AI生成的“完美”初稿,此刻却成了学术诚信的潜在陷阱。 这只是当下AI论文工具浪潮中的一个…

作者头像 李华
网站建设 2026/6/15 17:06:00

解析图漾相机录制的bag视频文件

文章目录前言1.PercipioViewer软件操作步骤1.1 加载录制的bag文件1.2 设置视频播放速度2.C代码解析bag文件2.1 运行编译后的Demo3.常见问题FAQ3.1 编译过程中报错前言 Percipio Viewer 软件支持录制相机采集图像时的视频。录制视频过程中,支持调整部分参数&#xff…

作者头像 李华
网站建设 2026/6/14 19:30:42

transformer架构优化案例:gpt-oss-20b的轻量化实践

Transformer架构优化案例:GPT-OSS-20B的轻量化实践 在消费级笔记本上运行一个参数量超过200亿的语言模型,听起来像是天方夜谭。然而,随着稀疏激活、结构化训练和高效推理技术的融合突破,这一设想正逐步成为现实。GPT-OSS-20B 就是…

作者头像 李华