小编cha*_*ura的帖子

从Java中的组合框中删除所有项目

我需要从组合框中删除所有项目

    int itemCount = combo.getItemCount();

    for(int i=0;i<itemCount;i++){
        combo.removeItemAt(0);
     }
Run Code Online (Sandbox Code Playgroud)

此代码将删除除最后一项之外的所有项目.它给出了NullPointerException.如何解决?

java swing jcombobox

5
推荐指数
1
解决办法
8万
查看次数

java中的方法重写和继承

请考虑以下代码段:

class A{ /* assume static and non static block are here */ }
class B extends A{ /* assume static and non static block are here */ }
Run Code Online (Sandbox Code Playgroud)

在主要方法中,

 new B();
Run Code Online (Sandbox Code Playgroud)

所以初始化的顺序是:

  1. A类的静态成员初始化
  2. B类的静态成员初始化
  3. A类的非静态成员初始化
  4. 然后在构造函数A中执行代码
  5. B类的非静态成员初始化
  6. 然后在构造函数B中执行代码

现在来看看这段代码,

class A{
    A(){
        this.m(); //line 1
    }

    void m(){
        System.out.println("A.m()");
    }
  }

  class B extends A{
     void m(){
        System.out.println("B.m()");
    }
  }
Run Code Online (Sandbox Code Playgroud)

在主要方法中,

 new B();
Run Code Online (Sandbox Code Playgroud)

当正在执行构造函数A的代​​码时,它只能看到类A中的方法m,因为尚未为类B初始化非静态成员(根据我提到的顺序).但结果是"Bm()".(已经执行了子类的方法)考虑到我提到的顺序,有人可以解释这里发生的事情(方法覆盖)吗?

java overriding

5
推荐指数
2
解决办法
1198
查看次数

为备用键创建自定义弹出键盘

我正在尝试为android中的替代键创建自定义弹出键盘.通过使用默认键盘,我只能为pop键盘提供自定义布局.

我也需要自定义行为(就像Gboard中的一样)例如,

(1)当长按按钮时,默认情况下应突出显示特定的按键

(2)可以通过移动手指来突出显示和选择按键(长按键并同时移动手指)

这些是我引用的链接:

构建自定义Android键盘

创建每个键具有多个/备用字符的SoftKeyboard

如何禁用SoftKeyboard键预览窗口?

这是Gboard中的弹出键盘 在此输入图像描述

任何建议/帮助将不胜感激.

谢谢.

android android-softkeyboard gboard

5
推荐指数
1
解决办法
636
查看次数

构造函数在java中重载

我收到以下代码片段的错误

错误是:在调用超类型构造函数之前无法引用x(并指出注释1中的语句)

class Con{
    int x =10;

    Con(){
        this(++x); //1
        System.out.println("x :"+x);
    }

    Con(int i){
        x=i++;
        System.out.println("x :"+x);
    }
}
Run Code Online (Sandbox Code Playgroud)

在主要方法中,我有这个说法

    Con c1=new Con();
Run Code Online (Sandbox Code Playgroud)

我不明白这个错误.有人能解释一下这里到底发生了什么吗?

java constructor constructor-overloading

4
推荐指数
1
解决办法
3377
查看次数

Android Studio中的fragment_main和activity_main布局

我对Android Studio生成的两个布局文件感到困惑.(fragment_main.xml和activity_main.xml)

我使用activity_main.xml.要使用activity_main.xml,我需要注释掉

if(savedInstanceState==null){...} //in onCreate(), Otherwise it will not display
Run Code Online (Sandbox Code Playgroud)

然后我可以使用activity_main.xml.

有人可以解释一下

  1. 何时使用Fragment_main.xml

  2. 使用两种布局的优点.

  3. 如何正确使用它们.(如果我没有在上面注释掉它将不显示activity_main.xml,而是显示fragment_main布局.这意味着我需要在fragment_main.xml中创建接口.)

谢谢.

android android-layout android-studio

4
推荐指数
1
解决办法
1万
查看次数

静态块内部声明的静态变量与java中静态块外部的差异

  1. 在静态块外部声明的静态变量与在静态块内声明的变量之间有什么区别?(考虑代码段)

代码段如下:

class A{

    static int i = 10;      //line 1

    static { int i = 20;}   //line 2

    public static void main(String[] args) {
        System.out.println(A.i); //output is 10
    }
}
Run Code Online (Sandbox Code Playgroud)

2.如何在第2行访问变量'i'?

java static

3
推荐指数
1
解决办法
1338
查看次数

创建Thread对象时设置线程的名称?

我是Java的新手.任何人都可以解释主方法中发生了什么?

class Demo {
    public static void main(String []args) {
        //setting a name using the constructor
        Thread t=new Thread("main"){
            //what is this? a static block?? need an explanation to this.
            {setName("DemoThread");} 
        };
        //output is DemoThread. Since it set the name again.
        System.out.println(t.getName());
    }
}
Run Code Online (Sandbox Code Playgroud)

java

2
推荐指数
1
解决办法
616
查看次数

使用渲染脚本支持lib时出现多个dex错误

我在gradle文件中使用支持库中的渲染脚本.

  renderscriptTargetApi 22
  renderscriptSupportModeEnabled true
Run Code Online (Sandbox Code Playgroud)

添加这两行后,我收到此错误

at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
UNEXPECTED TOP-LEVEL EXCEPTION:com.android.dex.DexException: Multiple dex files define Landroid/support/annotation/AnimRes;
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)
at com.android.dx.command.dexer.Main.run(Main.java:277)
at com.android.dx.command.dexer.Main.main(Main.java:245)
at com.android.dx.command.Main.main(Main.java:106)
Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException:    
org.gradle.process.internal.ExecException: Process 'command 'C:\Program       
 Files\Java\jdk1.8.0_25\bin\java.exe'' finished with non-zero exit value 2
Run Code Online (Sandbox Code Playgroud)

android renderscript android-support-library

2
推荐指数
1
解决办法
819
查看次数

如何在asp.net中检查gridview中复选框列的状态

我正在尝试实现更新主题功能.当我想添加一个新主题时,它正在工作.但是当我取消选中一个复选框(如果我想从程序中删除现有主题)时,它就不起作用了.

我调试程序,它显示未选中的复选框也被选中.

在此输入图像描述

例如:如果我取消选中IT102并单击更新按钮,则所有3个主题都将保存在数据库中.

这是aspx代码

<asp:GridView ID="gridview_modules" runat="server" AutoGenerateColumns="False"          
    GridLines="None">
                        <HeaderStyle Width="30%" />
                        <RowStyle Width="30%" />
                        <FooterStyle Width="30%" />

                        <Columns>
                            <asp:TemplateField>
                            <ItemTemplate>
                                <asp:CheckBox runat="server" ID="checkbox_select" />
                            </ItemTemplate>
                            </asp:TemplateField>
                            <asp:BoundField DataField="courseNo"  HeaderStyle-Width="20%" 
                                ItemStyle-Width="10%" FooterStyle-Width="10%" >
                            <FooterStyle Width="10%" />
                            <HeaderStyle Width="20%" />
                            <ItemStyle Width="10%" />
                            </asp:BoundField>
                            <asp:BoundField DataField="title"/>
                        </Columns>
                    </asp:GridView>
Run Code Online (Sandbox Code Playgroud)

这是更新按钮中的代码(Inside foreach循环)

  System.Web.UI.WebControls.CheckBox chk =        (System.Web.UI.WebControls.CheckBox)rowItem.Cells[0].FindControl("checkbox_select");
        if (chk.Checked)
        {
            all++; //no of checked subjects when the button is clicked
            if (con.saveCourseForProgram(SiteVariables.ProgramName, rowItem.Cells[1].Text.ToString(), year, sem, SiteVariables.Specialization))
            {
                success++;//try to insert in the db
            } …
Run Code Online (Sandbox Code Playgroud)

asp.net checkbox gridview

1
推荐指数
1
解决办法
1万
查看次数

Android Studio代码格式问题

我正在使用Android Studio并在格式化代码时遇到问题.如果有一个语句分成多行,我需要将其格式化为单行语句,我不能使用(Ctrl + Alt + L).代码未使用该快捷方式格式化为单行.

我尝试将右边距(设置 - >编辑器 - >代码样式)的值更改为更高的数字,但这也不起作用.

如何将代码格式化为单行?

谢谢.

android code-formatting android-studio

1
推荐指数
1
解决办法
2510
查看次数