Java基础——static关键字

对象只有在new的时候才会分配空间,有时候我们希望不管是否产生了对象或无论产生了多少对象的情况下,某些特定的数据在内存空间里只有一份,就可以static修饰成员,也称静态成员或类成员。

static可修饰属性、方法、代码块、内部类。

特点:

  • 随着类的加载而加载(属于类),优先于对象存在。
  • static修饰的成员被所有对象所共享(也称类成员)。
  • 访问权限允许时,可不创建对象,直接被类调用。

静态成员引用格式:

类名.[静态成员属性/成员方法]

示例:

clasa Demo {
	private static String temp = "DEMO";
	public static void val() {
		System.out.println("Demo.val");
	}
}
class Test {
	public static void main(String[] args) {
		//直接使用类名调用
		System.out.println(Demo.temp;);
		Demo.val();
	}
}

静态属性、方法的设计思想:

  • 静态属性作为该类各个对象之间共享的变量。在设计类时,分析哪些属性不因对象的不同而改变,将这些属性设置为静态属性,相应的方法设置为静态方法。
  • 如果方法与调用者无关,则这样的方法通常被声明为类方法,由于不需要创建对象就可以调用静态方法,从而简化了方法的调用。

使用注意:

  • 类成员,直接使用类名.静态成员,不需要实例化。
  • static修饰的方法内只能调用static修饰的成员方法和成员变量,非static修饰的方法可以调用static修饰的成员(因为static修饰的成员优先对象加载)。
  • static修饰的方法不能被重写(因为static方法属于类,不属于对象)。
  • static方法内部不能有this和super(因为不需要实例就可以方法static方法,this和super都属于对象)。
  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,Java 事件处理是指通过监听用户的操作事件(如鼠标点击、键盘输入等),并在相应事件发生时执行一定的处理代码来响应用户的操作。下面是一个简单的 ATM 柜员机模拟程序,演示了 Java 事件处理的基本用法: ```java import java.awt.*; import java.awt.event.*; import javax.swing.*; public class ATM extends JFrame implements ActionListener { private JLabel label; private JButton button1, button2, button3; public ATM() { super("ATM"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(300, 200); setLayout(new FlowLayout()); label = new JLabel("请选择操作:"); button1 = new JButton("查询余额"); button2 = new JButton("取款"); button3 = new JButton("存款"); add(label); add(button1); add(button2); add(button3); button1.addActionListener(this); button2.addActionListener(this); button3.addActionListener(this); } public void actionPerformed(ActionEvent e) { if (e.getSource() == button1) { label.setText("您的账户余额为1000元。"); } else if (e.getSource() == button2) { label.setText("请输入取款金额:"); } else if (e.getSource() == button3) { label.setText("请输入存款金额:"); } } public static void main(String[] args) { ATM atm = new ATM(); atm.setVisible(true); } } ``` 这个程序实现了一个简单的 ATM 柜员机界面,包含三个按钮:查询余额、取款、存款。当用户点击这些按钮时,程序会在标签中显示相应的信息。在构造函数中,我们设置了窗口的标题、大小和布局,并创建了标签和按钮,添加到窗口中。然后,我们为每个按钮添加了一个事件监听器,使用 this 关键字表示当前对象,即 ATM 类,在 actionPerformed 方法中根据事件源判断用户点击了哪个按钮,并在标签中显示相应的信息。最后在 main 方法中创建了一个 ATM 对象并显示出来。 这个示例程序虽然简单,但演示了 Java 事件处理的基本用法。在实际开发中,我们可以根据具体需求编写更加复杂的事件处理代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值