java如何调用其他类方法中的变量

package newpackage;
import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.scene.chart.PieChart.Data;
import javax.swing.JFrame;

import javax.swing.JPanel;
//窗体类
public class MyFrame extends JFrame {

/**
* @param args
*/
JPanel jPanel;
char charA;
public MyFrame(){
this.setSize(500,100);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("Keylogger");
this.setVisible(true);
this.addKeyListener(new MyKeyListener());
jPanel = new JPanel();
add(jPanel);

}

public static void main(String[] args) {
// TODO Auto-generated method stub
new MyFrame();

}

}
class MyKeyListener extends KeyAdapter{

public void keyPressed(KeyEvent e){

char charA = e.getKeyChar();

String s = null;
try {
s = "You pressed "+charA+" at "+getTime();
} catch (ParseException ex) {
Logger.getLogger(MyKeyListener.class.getName()).log(Level.SEVERE, null, ex);
}
System.out.println(s);
}

private Date getTime() throws ParseException {
Date d = new Date();
String s = null;

s = DateFormat.getDateInstance().format(d);

s = DateFormat.getDateInstance(DateFormat.DEFAULT).format(d);

s = DateFormat.getDateInstance(DateFormat.FULL).format(d);

s = DateFormat.getDateInstance(DateFormat.MEDIUM).format(d);

s = DateFormat.getDateInstance(DateFormat.SHORT).format(d);

DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
s = sdf.format(d);

DateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
s = sdf2.format(d);

DateFormat sdf3 = new SimpleDateFormat("yyyyMMddHHmmss");
s = sdf3.format(d);

s = sdf.format(d);
Date today = sdf.parse(s);

Calendar c = Calendar.getInstance();

return c.getTime();
}

}

如果想新建一个类来调用
class MyKeyListener extends KeyAdapter{
public void keyPressed(KeyEvent e){
char charA = e.getKeyChar();
String s = null;
try {
s = "You pressed "+charA+" at "+getTime();
} catch (ParseException ex) {
Logger.getLogger(MyKeyListener.class.getName()).log(Level.SEVERE, null, ex);
}

System.out.println(s);
}

这里的s,但是不知道该怎么编写

方法1.
新建一个类。然后在调用类中先进行被调用类实例化,然后通过实例化的对象访问。例如:
//先定义一个类
//实例化,调用
方法2.新建一个类,将该类中需要zd被调用的方法设置为静态(static),加了static后,就可以用类名直接调用。然后在调用类中直接通过类名进行访问。调用格式为:类名.方法名(参数表)。例如:
扩展资料:
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因回此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程

Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点
。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应答用程序等

参考资料:
Java
类与类之间的调用--CSDN
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-12-08
public String  keyPressed(KeyEvent e){ 
char charA = e.getKeyChar(); 
String s = null;
try {
s = "You pressed "+charA+" at "+getTime();
} catch (ParseException ex) {
Logger.getLogger(MyKeyListener.class.getName()).log(Level.SEVERE, null, ex);
}

System.out.println(s); 
return s;
}

将方法返回类型改成String,然后返回s的值,这样调用keyPressed()方法就可以得到S的值了

本回答被网友采纳

java怎么在一个类里面调用另一个类中的变量?
1.你需要调用的另一个类的变量.必须是全局变量.\\x0d\\x0a 2.User user = new User();\\x0d\\x0a 3.定义为public.通过user.name就可以拿到user类里面的name变量\\x0d\\x0a 4.定义为private 那么就必须在user类里面添加name变量的set,get方法,通过user.getName()方法拿到user里面的name变量\\x...

在JAVA中,如何在一个方法中调用另一个方法中的变量?
一个方法中的参数是局部变量,只能在本方法内部使用。如果非要在别的方法中使用,可以将你在方法1中输入的整数作为方法1的返回值,在方法2中调用方法1,间接调用输入的整数。public int method1(){ Scanner scan = new Scanner(System.in);int n = scan.nextInt();return n;} public void meth...

java中一个类想调用另一个类的变量该怎么办?
如果是public的变量,先创建另一个类的对象,用 对象名.变量名 调用 如果是private的变量,用set、get方法操作对象 还可以利用反射机制操作变量

java之中要如何在一个class中调用另一个class里面的变量?
如果第二个类继承于第一个类,第二个类就继承了第一个类的非私有成员,那么第一个类的非私有成员变量可以调用。如果这两个类没有任何关系,第二个类想调用第一个类中的变量,可以在第二个类的新建一个对象,用类名加点的方式访问,当然该变量要是非私有的。

Java中一个类如何访问另一个类中的成员变量问题
如果成员变量是静态的,那么直接在A类中通过“B.变量名称”的形式即可。如果成员变量是动态的,需要在B类中创建变量的set和get方法,之后在A类中:B b =new B();进行B类实例化 b.setName("zhangsan");\/\/赋值 b.getName();获取到成员变量值。

java中一个类想调用另一个类的变量,必须到方法里面吗,直接在类里面能不...
java 不能在类中初始化引用,所以不能直接在类中new一个对象出来,要使用其他类的变量,必须在自己的类的方法中先创建被引用类的实例,通过实例来引用该类的变量,但是,如果被引用的类的变量是静态的,则可以通过如下指令引用:类名.变量 来直接引用这个变量。

java中如何跨类调用参数
} java中调用其他类的变量有以下几个步骤:方法1:new 一个其他类的对象出来,调用该类的公共变量(public)方法2:把其他类的变量设置为public static,即静态公共变量,直接用类名.变量名获取。但是这个方法最好只用于基础数据变量(int\/long\/boolean\/double\/byte等),否则会造成内存泄漏。方法3:用...

JAVA一个包里建立好两个类,一个类如何调用另一类的里的数据?
1、先在eclipse中创建一个Java工程文件。并在src下创建demo包,在demo包下创建类DemoClass。2、接下来在DemoClass类中添加一个静态属性和静态方法。被static修饰的属性或方法就是静态的。3、对于静态方法的调用,可以使用调用非静态方法的方式去调用,即创建一个类的对象,然后再调用静态方法。4、编辑好...

JAVA同一类中一个方法怎么调用另一个方法的成员变量
首先,你的表述有问题:只有类中的变量才称为成员变量,方法中的变量称为局部变量。其次,局部变量只在方法内部有效,方法运行结束后变量会销毁,所以在一个方法中无法调用另一个方法中的变量。如果你希望多个方法共享某个变量,可以把这个变量定义成类的成员变量。如下:class ABC { int j;public void ...

java怎样从一个包中调用另外一个包中的变量
这个很简单 把要调用的变量设为public变量,在要调用的包里面实例化那个变量所在的类,然后通过点语法调用这个变量。不明白可以追问,望采纳!

相似回答