我被这个问题质疑,为什么我不能声明所有方法都是静态的?你能在这里给我一个解释吗?谢谢.
我相信当你创建一个静态方法时,它无法访问非静态成员?
我想知道,是finish();呼叫效应static变量.不static变量是受GC.
static int displayChart = 0;
Run Code Online (Sandbox Code Playgroud)
声明代码.
我正在android中创建一个小型的musicplayer应用程序,其中我的主要活动是使用许多这样的静态变量: -
public class Fragmentactivity extends FragmentActivity {
static ArrayList<String> s3=new ArrayList<String>();
static ArrayList<String> s5=new ArrayList<String>();
static ArrayList<String> songpaths=new ArrayList<String>();
static ArrayList<String> alldirectorypaths=new ArrayList<String>();
static ArrayList<String> internalpaths=new ArrayList<String>();
static ArrayList<String> tempsongnames=new ArrayList<String>();
static ArrayList<Bitmap> thumbnails=new ArrayList<Bitmap>();
static int internal=0;
static ArrayList<String> folderpaths=new ArrayList<String>();
//my addtional code after it
}
Run Code Online (Sandbox Code Playgroud)
我正在其他类中访问它,如: -
public class A{
Fragmentactivity.songpaths.get(index);
//and in many other classes also i used it
Run Code Online (Sandbox Code Playgroud)
在我的大多数课程中,我已经制作了许多静态变量但是现在我了解到这不是开发的好习惯.
我应该继续使用静态还是应该使用getter/setter?
或者,如果有任何其他方式重用变量...请建议我.
任何帮助,将不胜感激 :)
提前致谢 :)
我正在尝试创建一个用于定义配置类的抽象类.我希望随时从JSON导出和导入这些类.我正在尝试使用Gson实现这一目标.
写入JSON时我收到错误:
无法序列化java.lang.Class - 忘记注册类型适配器?
我的主要课程:https://hastebin.com/pogohodovi.scala
摘要配置类:https://hastebin.com/adeyawubuy.cs
子类的示例:
public class DyescapeCOREConfiguration extends DyescapeConfiguration {
private static transient DyescapeCOREConfiguration i = new DyescapeCOREConfiguration();
public static DyescapeCOREConfiguration get() { return i; }
@Expose public static String ServerID = UUID.randomUUID().toString();
}
Run Code Online (Sandbox Code Playgroud)
请注意:我需要将子配置类中的变量保持为静态.我试图创建一些适配器/序列化器,但它们似乎不起作用.
为什么使用全局变量是个坏主意?
我想为所有要使用的类创建一个可用的变量数组.它将存储关键状态,因此不能将其设置为const(final).
你能告诉我一些其他(正确的)如何做到这一点的方法吗?
我开发了一个“Java测验应用程序”,它具有许多功能,例如测验进行、即时报告功能、学生可以发布他们的疑问等等。
我想维护请求测验的学生人数、提交回复的学生人数、活跃学生总数和其他一些详细信息的日志。
我正在使用一个全局类,它具有静态变量来保存这些详细信息。这是维护它的正确方法还是我应该使用单例设计模式?
请告诉我两者的优缺点以及使用哪一种以及何时使用?
我正在创建一个有五个活动的应用程序.我有一个类,其中包含在所有五个活动中使用的函数和变量.我在每个活动中创建了一个局部变量,像这样初始化类;
localclass = new globalclass(getResouces());
Run Code Online (Sandbox Code Playgroud)
我是android/java开发的新手,当我尝试了一些东西时,我对内存足迹感到疑惑.在第一个开始的活动中,localclass被设置为如上所述.然后,我尝试从其他活动中访问此变量,并在活动第二,第三等中成功完成此操作;
localclass = com.firstactivity.localclass;
Run Code Online (Sandbox Code Playgroud)
我使用的变量之一是对应用程序资源的引用.在第二次的活动中我不会得到这样的资源;
res = getResources();
Run Code Online (Sandbox Code Playgroud)
但是像这样;
res = com.firstactivity.localclass.res;
Run Code Online (Sandbox Code Playgroud)
只要变量是静态的,这就可以工作.我也以相同的方式访问globalclass中的函数.
这是不好的实践吗?
我读到一个类就像一个对象的蓝图.那么声称一个类被认为是不好的做法但是然后在程序中,从来没有实际创建类的实例(但只是在类中有静态方法)?
为我的项目引入排序非常容易JTable:
//Existing code
dftTableModel = new DefaultTableModel(0 , 4);
tblOutput = new JTable(dftTableModel);
//Added code
RowSorter<TableModel> sorter = new TableRowSorter<TableModel>(dftTableModel);
tblOutput.setRowSorter(sorter);
Run Code Online (Sandbox Code Playgroud)
但由于我将Size列格式化为带逗号的文本,因此它没有排序:
我从未使用过,Comparator但找到了一个我修改过的示例。
public class RowSorterWithComparator
{
static Comparator compareNumericStringsWithCommas;
static TableRowSorter sorter;
static JTable tblOutput;
static JScrollPane pane;
static JFrame frame;
static DefaultTableModel dftTableModel;
// static TableColumnAdjuster tca ;
static DefaultTableCellRenderer rightRenderer;
static JButton btnOpen;
static String[] columnNames = { "Date", "Size" };
static Object rows[][] =
{
{"7/27/2015","96","mavenVersion.xml","C:\\Users\\Dov\\.AndroidStudio1.2\\config\\options\\"},
{"7/27/2015","120","keymap.xml","C:\\Users\\Dov\\.AndroidStudio1.2\\config\\options\\"},
{"7/27/2015","108","Default.xml","C:\\Users\\Dov\\.AndroidStudio1.2\\config\\inspection\\"},
{"4/27/2015","392","key pay.txt","C:\\Users\\Dov\\A\\"}, …Run Code Online (Sandbox Code Playgroud) 我想限制一个类的实例数,我不想使用静态计数,因为使用静态变量的一些缺点,如线程安全和后面提到的其他一些:为什么静态变量被认为是邪恶的?.
他们有什么方法可以做到这一点?
我的Java有问题 据我所知,Java中绘制几何图形不是来的,代码和下面的你能帮我吗?
这是代码:
public class Gioco {
public static void main (String args [])
{
PaintRect();
}
public static void PaintRect() {
g.drawRect(100,100,300,300);
g.drawLine(100,100,100,100);
g.setBackground(Color.BLACK);
System.out.println("Trasut");
credits.setText("Kitebbiv");
credits.setBackground(null);
credits.setEditable(false);
credits.setFocusable(false);
credits.setBounds(0,0,100,100);
credits.setForeground(Color.BLACK);
panel.add(credits);
g.getPaint();
}
Run Code Online (Sandbox Code Playgroud)
如何创建JFrame三角形、正方形和矩形?更正我的代码谢谢