全局变量的声明

2024-08-20 20:48
文章标签 声明 全局变量

本文主要是介绍全局变量的声明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

[b]当一个类中有几个方法中都用到了一个变量名时,把这个变量在这个类的属性部分声明为全局变量,这样在下边的函数方法中就把那个变量的类型去掉。[/b]
package mydraw1.copy;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

/*
* 自定义鼠标监听类,继承MouseAdapter(或实现了MouseListener、MouseMotionListener)
*/

public class MyMouseListener extends MouseAdapter{
private int x1,y1,x2,y2;
private Graphics g;
private ToolPanel tool_panel;
private ColorPanel color_panel;
private Color color;
private String command; //构造方法
public MyMouseListener(ToolPanel tool_panel,ColorPanel color_panel,DrawPanel draw_panel){
g=draw_panel.getGraphics();//获取画布
this.tool_panel=tool_panel;//接收对象
this.color_panel=color_panel;//接收对象

}
//按下
public void mousePressed(MouseEvent e){
x1=e.getX();
y1=e.getY();
command=tool_panel.getCommand();//获取标志
color=color_panel.getColor();//获取颜色 g.setColor(color);//设置画布的颜色

}
//释放
public void mouseReleased(MouseEvent e){
x2=e.getX();
y2=e.getY();

if("line".equals(command)){
Line line=new Line(x1,y1,x2,y2,color);
line.draw(g);

}
else if("rect".equals(command)){
Rect rect=new Rect(x1,y1,x2,y2,color);
rect.draw(g);
}
else if("oval".equals(command)){
Oval oval=new Oval(x1,y1,x2,y2,color);
oval.draw(g);
}


}
//拖拽
public void mouseDragged(MouseEvent e){
x2=e.getX();
y2=e.getY();
Line line=new Line(x1,y1,x2,y2,color);
line.draw(g);
x1=x2;
y1=y2;
}

}

这篇关于全局变量的声明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1091138

相关文章

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

在实现回显功能模块的时候,把ID设置成全局变量了

在hsapprove.jsp中: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><script type="text/javascript">function edittodayhs(hsid){//alert(hsid);//

Structured Streaming | Apache Spark中处理实时数据的声明式API

关于Spark的相关文章在这里: 《Spark面对OOM问题的解决方法及优化总结》 《Spark 动态资源分配(Dynamic Resource Allocation) 解析》 《Apache Spark在海致大数据平台中的优化实践》 《Spark/Flink广播实现作业配置动态更新》 《Spark SQL读数据库时不支持某些数据类型的问题》 《阿里云Spark Shuffle的优化》 《Spa

Java高级编程—多线程(完整详解线程的三种实现方式、以及守护线程、出让线程、插入线程、线程声明周期等,附有代码+案例)

二十八.多线程 文章目录 二十八.多线程28.1线程的三种实现方式28.1.1 第一种28.1.2 第二种28.1.3 第三种 28.2 常见的成员方法28.3 守护线程28.4 出让线程28.5 插入线程28.6 线程生命周期28.7 同步代码块28.8 同步方法 28.1线程的三种实现方式 继承Thread类的方式进行实现实现Runnable接口的方式进行实现利用Ca

adb源码和版本声明

adb 的 AOSP源码目录 /android-7.1.2_r4/system/core/adb adb version显示方法以及宏声明 adb_version方法: 宏声明: AOSP编译后的输出: xie@droid:~/source/android-7.1.2_r4$ find ./out/ -name adb./out/host/linux-x86/

支付后全局变量改变

if (router.query.recharge_back_URI) {const _url = decodeURIComponent(router.query.recharge_back_URI as string);const url = new URL(_url, location.href);if (url.origin === location.origin) {router.repl

【C++】【学习笔记】/*函数声明的四种方式*/

#include <iostream>#include <string>using namespace std;/*函数声明的四种方式*///纯净版函数声明string ( &func() )[10];// 上述声明的含义是:// func() 表示func函数无需任何实参// ( &func() ) 表示函数的返回结果是一个引用// ( &func() )[10]表示引用

【C++】类中成员函数声明后面接 const

const 表示对类中成员函数属性的声明; 表示不会修改类中的数据成员; 在编写const成员函数时,若不慎修改了数据成员,或者调用了其他非const成员函数,编译器将指出错误; 以下程序中,类stack的成员函数GetCount仅用于计数,从逻辑上讲GetCount应当为const函数。 class Stack{public:void Push(int elem);int Pop(vo

Go-变量声明与赋值

从本节开始,按照Introducing Go一书的顺序,学习并总结Go。——package部分的顺序有所调整。 要点 可以先用var声明,然后用等号赋值;也可以用:=把上面两步合并为一步。区别:=仅用于已经声明过的变量;而:=是声明加赋值。——可参考编译错误信息。 示例 hello.c: package mainimport "fmt" // implements formatted

(语法糖)ES6类class声明类的方式 -ES5类声明继承

本文将从以下几方面介绍类与继承 类的声明与实例化 如何实现继承 继承的几种方式 类的声明与实例化 类的声明一般有两种方式 // es5和es6声明类的区别,es5没有统一语法规范。es6有统一写法规范 start。// es5声明“类”的语法--伪类// function Person(name,age){// this.name = name;// this.age