2022.9.17 Java第二次课总结
2024-10-20 15:52:48
以下是本节课后的问题
首先是关于静态变量
在类中,使用 static 修饰符修饰的属性(成员变量)称为静态变量,也可以称为类变量,常量称为静态常量,方法称为静态方法或类方法,它们统称为静态成员,归整个类所有。
简单来说 就是java或者C++中所写的 static int A;
本次的重点在于static方法的研究上
首先
与成员变量类似,成员方法也可以分为以下两种:
- 静态方法(或称为类方法),指被 static 修饰的成员方法。
- 实例方法,指没有被 static 修饰的成员方法。
静态方法与实例方法的区别如下:
- 静态方法不需要通过它所属的类的任何实例就可以被调用,因此在静态方法中不能使用 this 关键字,也不能直接访问所属类的实例变量和实例方法,但是可以直接访问所属类的静态变量和静态方法。另外,和 this 关键字一样,super 关键字也与类的特定实例相关,所以在静态方法中也不能使用 super 关键字。
- 在实例方法中可以直接访问所属类的静态变量、静态方法、实例变量和实例方法。
举例来说
public class StaticMethod {
public static int count = 1; // 定义静态变量count
public int method1() {
// 实例方法method1
count++; // 访问静态变量count并赋值
System.out.println("在静态方法 method1()中的 count="+count); // 打印count
return count;
}
public static int method2() {
// 静态方法method2
count += count; // 访问静态变量count并赋值
System.out.println("在静态方法 method2()中的 count="+count); // 打印count
return count;
}
public static void PrintCount() {
// 静态方法PrintCount
count += 2;
System.out.println("在静态方法 PrintCount()中的 count="+count); // 打印count
}
public static void main(String[] args) {
StaticMethod sft = new StaticMethod();
// 通过实例对象调用实例方法
System.out.println("method1() 方法返回值 intro1="+sft.method1());
// 直接调用静态方法
System.out.println("method2() 方法返回值 intro1="+method2());
// 通过类名调用静态方法,打印 count
StaticMethod.PrintCount();
}
}
代码来自于网络
运行结果如下
对于同一个变量,在不同的函数(方法中)调用会得到不一样的结果
在java中,Static用于修饰类成员的变量和方法,我们一般写代码的时候开头
package A{}是包
下边通常是
public class A{}
这表明我们的方法和变量都是在类中写的,因为非静态方法不能直接使用类名去调用,所以去掉static关键字后使用类名调用方法就会报错
最新文章
- 【原】小玩node+express爬虫-1
- kibana 使用
- web测试方法总结
- CSS代码记录
- Java并发编程核心方法与框架-phaser的使用
- (十二) 一起学 Unix 环境高级编程 (APUE) 之 进程间通信(IPC)
- 转:最简单的基于 DirectShow 的视频播放器
- JavaScript基础16——js的BOM对象
- android 客户端 RSA加密 要注意的问题
- springboot 详细配置2
- 转:通过API获取和创建 Oracle GL Account Code Combination ID’s (CCID’s)的几种方法汇总
- 深入解析spring中用到的九种设计模式
- bellman_ford寻找平均权值最小的回路
- 做一个常规的banner图——负边距的使用、banner图的拼法
- Qt 动态加载DLL 常见错误有哪些?
- Office开发必备知识----为什么要释放非托管Com资源
- 股票配资源码系统APP股票配资系统PC版配资系统
- ImageView setImageURI图片不改变\NetWorkImageView 不显示的问题
- JComboBox实现当前所选项功能和JFrame窗口释放资源的dispose()方法
- [转]TFS常用的命令行详解