java 编程-关于java对象调用的一个菜鸟级问题

问题描述

关于java对象调用的一个菜鸟级问题
本人新手,币也不够,帮帮忙吧大家。学java不久,遇到这么一个问题:怎么在一个类中调用另一个类的对象获取该对象数据呢?(两个类不在同一个包里)如
包a中有class A{} 和两个对象A a1=new A();
A a2=new A();
包b中有class B{}。我要在b包中访问a1和a2应该怎么访问呀?要求b包不再生成新的A类对象,且A类不能是单例。

解决方案

a中添加
class Global
{
static public A a1;
static public A a2;
}
无论在a还是在b
都用Global.a1 Global.a2访问这两个对象

解决方案二:
定义:public static A a1=new A();
在classB中这样调用: A.a1 就OK了

解决方案三:
可以先在b包中import a包,然后 在b包中定义: A a1=new A (); 再调用 A.a1 ,A.a2就行了

解决方案四:
A类中的数据定义有权限,通常是定义为parivate的,如果要提供给外界访问,就可以提供getter和setter方法的。

解决方案五:
(我是菜鸟)请教大家一个愚蠢的问题。。。。。。

解决方案六:
想了想还是定义为静态公共变量吧。“眉宇下的小格调 ”的答案。

解决方案七:
要求b包不再生成新的A类对象。这个就只能是静态变量了,用static关键字

时间: 2024-12-15 04:27:30

java 编程-关于java对象调用的一个菜鸟级问题的相关文章

浅析Java编程中类和对象的定义_java

1,什么是类? 答:类是客观存在的,抽象的,概念的东西. 2,什么事对象? 答:对象是具体的,实际的,代表一个事物.例如:车是一个类,汽车,自行车就是他的对象. 关于类与对象的描述:类是对象的模版,对象是类的一个个体. 3,Java中定义类的方法? class 类名 用Java语法定义人类: public class Person { } 4,对象的定义方法? 1,对象声明:类名 对象名: 2,对象创建 对象名 =  new 类名(): new作用:分配内存空间. 也可以合写为:类名 对象名 =

java编程,在屏幕上显示一个带标题的窗口,并添加一个按钮

问题描述 java编程,在屏幕上显示一个带标题的窗口,并添加一个按钮 编写程序,在屏幕上显示一个带标题的窗口,并添加一个按钮,当用户单击按钮时,弹出对话框,显示用户单击了按钮. 解决方案 找点Java 的 Swing学习资料,这种界面估计用netbean或idea都可以自动生成. 解决方案二: import java.awt.Frame; import java.awt.Graphics; import java.awt.GridLayout; import java.awt.event.Act

Fireball真相:一个菜鸟级流氓软件竟让老外如临大敌

本文讲的是Fireball真相:一个菜鸟级流氓软件竟让老外如临大敌,近日,知名安全公司Check Point发布的一篇报告在业内引发了不小的震动.报告中称,一个来自中国的名为Fireball(火球)的恶意软件(原文给出的定性:malware)传播量达到2.5亿,恐会"引发全球灾难". 360第一时间找到了相关程序样本,并进行了分析.现在,我们不妨换个视角来谈谈这个Fireball到底是怎么回事儿.  "复杂的"恶意软件 "复杂的"恶意软件这个评价

【Java编程】Java在dos窗口编译与执行的批处理

       最近在Java编程过程中,常用到dos窗口对程序进行编译与运行.但是不方便之处在于每次都要输入命令进入将要编译的程序的目录(其实也有简单的方法,在文章末尾给出).于是编写了一个配置文件,可以一次修改,经常使用.(只需要在下面程序中将路径修改为你所经常存放程序的目录).前提当然是你已正确配置环境变量.具体方法为:将下面的程序放在新建的文本文件中,并将后缀名改为.bat.然后双击该文件,按提示操作即可!程序源码如下:(红色字体是需要根据你的存放路径修改的) echo off cls t

java编程思想-java编程四线第二十一章 线程SynchronizationComparisons.java有错误

问题描述 java编程四线第二十一章 线程SynchronizationComparisons.java有错误 //BaseLine 和AtomicTest 是线程不安全的 ,求解答 //: concurrency/SynchronizationComparisons.java// Comparing the performance of explicit Locks// and Atomics versus the synchronized keyword.import java.util.c

Java编程思想里的泛型实现一个堆栈类 分享

觉得作者写得太好了,不得不收藏一下. 对这个例子的理解: //类型参数不能用基本类型,T和U其实是同一类型. //每次放新数据都成为新的top,把原来的top往下压一级,通过指针建立链接. //末端哨兵既是默认构造器创建出的符合end()返回true的节点. 复制代码 代码如下: //: generics/LinkedStack.java // A stack implemented with an internal linked structure. package generics; pub

Java编程思想里的泛型实现一个堆栈类 分享_java

觉得作者写得太好了,不得不收藏一下. 对这个例子的理解: //类型参数不能用基本类型,T和U其实是同一类型. //每次放新数据都成为新的top,把原来的top往下压一级,通过指针建立链接. //末端哨兵既是默认构造器创建出的符合end()返回true的节点. 复制代码 代码如下: //: generics/LinkedStack.java// A stack implemented with an internal linked structure.package generics; publi

【Java编程】Java学习笔记<二>

1.    Java中类的域共有4种访问权限,而类的访问控制级别只有public和缺省的,当为public时,可以被任何包的其他类访问,当为缺省时,只能被同一包的其他类访问.如果类自身对另一个类是不可见的,即使类的成员声明为public,也没有一个成员是可见的. 2.    Final变量一旦被显式的赋值(不能默认初始化),就不能再赋值了. 3.    用final修辞的应用变量,不能重新引用另一个变量,但是可以所引用对象的数据. 4.    一个类中,静态方法只能处理静态变量:静态方法只能调用

【Java编程】Java中的大整数计算

在上一篇文章中,我们实现了c语言中的大整数的运算,并且用Miller-Rabin算法实现了对大素数的测试.本来我准备用Java代码实现大整数的运算,查了一下资料发现Java中java.math的BigInteger可以实现大整数的表示和计算.BigInteger 还提供以下运算:模算术.GCD 计算.质数测试.素数生成.位操作以及一些其他操作. 下面通过程序来看看具体用法: import java.math.BigInteger; public class BigInt { public sta