《漫画Java编程》导读之语法篇-静态方法和实例方法的特点和区别

如题所述

本文基于孙卫琴姐姐的经典入门书籍《漫画Java编程》

类的方法包括构造方法和成员方法。成员变量分为静态变量和实例变量,同样,成员方法也分为静态方法和实例方法。

若小伙伴对静态变量与实例变量的特点和区别还不清晰,建议先行阅读:《漫画Java编程》导读之语法篇-静态变量和实例变量的区别

静态方法特性:无需创建类的实例,即可通过类名访问。例如,JDK类库中的java.lang.Math类,提供了用于数学运算的静态方法。

直接通过Math类名访问静态方法,如Math.sqrt()。在Math类的main()方法中,不能访问所属类的实例变量和实例方法,此方法内不可使用this关键字。

以Employee类为例,假设其包含实例变量name和静态变量baseSalary。Employee类的main()方法为静态方法,尝试访问实例变量name会导致编译错误。若要在main()方法中访问name实例变量,需通过引用变量。

Employee类内还可能包含实例方法selfIntro()。在静态的main()方法中,访问selfIntro()实例方法同样需要通过引用变量。

实例方法特性:能直接访问当前类的静态变量和实例变量。例如,实例方法可以获取并使用所属类的实例变量。

Java虚拟机在执行实例方法时,明确知道访问的是哪个对象的实例变量。例如,当执行Employee类内的selfIntro()方法时,Java虚拟机已知访问的是变量m所引用的Employee对象的name实例变量。
温馨提示:内容为网友见解,仅供参考
无其他回答

《漫画Java编程》导读之语法篇-静态方法和实例方法的特点和区别
实例方法特性:能直接访问当前类的静态变量和实例变量。例如,实例方法可以获取并使用所属类的实例变量。Java虚拟机在执行实例方法时,明确知道访问的是哪个对象的实例变量。例如,当执行Employee类内的selfIntro()方法时,Java虚拟机已知访问的是变量m所引用的Employee对象的name实例变量。

《漫画Java编程》导读之语法篇-Java基本类型的种类和用法
接着是float和double类型,它们分别为单精度和双精度浮点类型。double类型的精度更高,适用于更精确的计算。若将double类型数据赋值给float类型变量,需进行强制类型转换,否则会引发编译错误。

《漫画Java编程》导读之语法篇-switch语句的详细用法
一般而言,每个case后建议包含break,以确保程序在执行完特定操作后能及时退出switch。然而,如果所有case分支对应相同的操作,可以省略break,例如:switch语句中允许存在一个可选的default子句,当expression表达式的值与所有case都不匹配时,程序将执行default部分,直到遇到break。如:如果变量x的值不匹配任何c...

《漫画Java编程》导读之语法篇-接口的继承
在《漫画Java编程》的语法篇中,我们探讨了接口的继承概念。现实生活中的例子,如一款充电线,能适配多种手机,这与Java中的接口继承有异曲同工之妙。Java允许一个接口(如接口Z)同时继承多个父接口(如接口X和Y),如这样定义:接口Z通过继承,获得了接口X的methodX()方法,以及接口Y的methodY()方...

Python 从入门到精通推荐看哪些书籍呢?
✍✍【入门扫盲篇の一】《看漫画学Python:有趣、有料、好玩、好用》可以不夸张地讲,只要会电脑开关机的小伙伴就能看懂,适合培养学python的兴趣,主要通过三个漫画人物的简单对话,把复杂python问题通俗易懂地解释,内容包括python基础知识和库的使用方法,也有专门章节提供应用实例和同步练习...

相似回答
大家正在搜