我希望您能帮助理解这种语法的含义:
class Node<K extends Comparable<? super K>, V>
Run Code Online (Sandbox Code Playgroud)
它?代表什么?
并没有人<失踪?
我对Java很新,因为我的帖子的性质会放弃
我需要创建一个包含一组方法的类,如果需要,可以由程序员轻松扩展.我想过有两节课:Commands和Command.Commands包含一个Command对象数组,是程序员可以添加新命令的地方.该Command课程有两个字段.类的名称和方法签名.我不确定如何做到这一点.在C中,我认为你可以有一个函数结构,那么我们可以有一个类,其中类的实例是方法吗?还是我完全走错了路?
我想过尝试做这样的事情:
public class Commands
{
private ArrayList<Command> commands;
/**
* Constructor for objects of class Command
*/
public Commands()
{
createCommands();
}
/**
* This is where a programmer can add new commands
*/
public void createCommands()
{
commands.add(new Command("move", public void move()));
}
/**
* This is where the programmer can define the move command
*/
public void move()
{
....
}
}
public class Command
{ …Run Code Online (Sandbox Code Playgroud) 似乎无法编译以下主要方法:
public class MainMethod {
public static void main(String []args){
InnerizationClass outer = new InnerizationClass();
InnerizationClass.StaticInnerClass inner = outer.StaticInnerClass(); //#1
System.out.println(inner.getOuterClassVar());
System.out.println(new InnerizationClass().locInnrMeth());
}
}
Run Code Online (Sandbox Code Playgroud)
这是InnerizationClass类:
public class InnerizationClass {
String outerClassVar = "Outer Catism";
static String outerClassVarStat = "Outer Static Catism";
public static class StaticInnerClass{
String innerClassVar = "Catism";
public String getInnerClassVar(){
return this.innerClassVar;
}
public String getOuterClassVar(){
return InnerizationClass.outerClassVarStat;
}
}
public String locInnrMeth(){
class MethodLocalInnerClass{
String methodLocalInrCls = "Method Local Catism";
void printInner(){
System.out.println(InnerizationClass.this.outerClassVar);
}
}
return …Run Code Online (Sandbox Code Playgroud) 我想在类上访问静态方法,但是要在泛型中传递该类.
我做了以下事情:
class Base{
public static String getStaticName(){
return "Base";
}
}
class Child extends Base{
public static String getStaticName(){
return "Child";
}
}
class StaticAccessor{
public static <T extends Base>String getName(Class<T> clazz){
return T.getStaticName();
}
}
StaticAccessor.getName() // --> "Base"
Run Code Online (Sandbox Code Playgroud)
这将返回"基地",但我想要的是"孩子"任何人没有反思的建议吗?
我基本上是在使用一个框架工作,从两个不同的线程调用一堆函数.我希望在允许下一个线程继续之前完成一个完整的线程.但是,我无法更改代码.
例如,假设有两个线程,线程1和线程2.每个线程调用方法一到三.
所以你得到一个类似的电话订单:
T1-M1 T1-M2 T2-M1 T1-M3 T2-M2 T2-M3
但是,我想要发生的是T1-M1设置某种阻止T2的锁,所以顺序如下.
T1-M1 - get lock
T2-M1 - blocked
T1-M2
T1-M3 - release lock
T2-M1 - no longer blocked - gets lock
T2-M2
T2-M3
是否可以在Java中执行此操作而无需从框架中编辑调用方法?
我有一个程序在Eclipse中没有显示任何错误,但每当我点击运行按钮时,没有任何反应.我在下面附带的编译器控制台中获得了代码行.
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Transaction extends JFrame {
private static final long serialVersionUID = 1L;
JFrame frame = new JFrame("Bank Account - S Standridge");
JMenuBar MenuBar;
JMenu File = new JMenu("File");
JMenu Edit = new JMenu("Edit");
JMenu About = new JMenu("About");
JMenuItem Transaction = new JMenuItem("Transaction");
JMenuItem Summary = new JMenuItem("Summary");
JMenuItem Exit = new JMenuItem("Exit");
private JPanel MenuPanel;
private JPanel TransactionPanel;
private JPanel ButtonPanel;
private JButton calcButton;
private JButton exitButton;
private JMenuItem SummaryMenuItem;
private …Run Code Online (Sandbox Code Playgroud) 我明白这是基本的东西的一部分,但我被卡住了:-(有人可以帮帮我吗?
计划1:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a=1,b=2,c;
c=(a+b)++;
}
Run Code Online (Sandbox Code Playgroud)
为什么输出错误?是否需要左值?
计划2:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char *p1="name";
char *p2;
p2=(char*)malloc(20);
memset(p2,0,20);
while(*p2++=*p1++);
printf("%s\n",p2);
}
Run Code Online (Sandbox Code Playgroud)
为什么是输出,一个空字符串?如果我颠倒增量的顺序,那就是:while(++*p2=++*p1);为什么左值误差来了?
我有一个ArrayList的String[].
每个String[]包含两个值:值和日期.
如果我打印它,它看起来像这样:
value | date -------|---------- 357.0 | 2011/05/30 -234.0 | 2011/05/31 -123.0 | 2011/05/30
我想创建一个新的ArrayList,在同一日期的所有值相加.像这样:
value | date -------|---------- 234.0 | 2011/05/30 -234.0 | 2011/05/31
有人可以帮忙吗?
我正在尝试运行从Sun Java站点获取的代码(我没有复制它,查看它并编写它,因为它可以帮助我记住代码).
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class CharEx{
FileReader inputStream = null;
FileWriter outputStream = null;
public static void main(String args[]) throws IOException{
FileReader inputStream = null;
FileWriter outputStream = null;
try{
inputStream = FileReader("xanadu.txt");
outputStream = FileWriter("out.txt");
int c;
while ((c = inputStream.read()) != -1){
outputStream(c);
}
}
finally{
if(inputStream !=null){
inputStream.close();
}
if(outputStream !=null){
outputStream.close();
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是我遇到了错误.
D:\Java>javac CharEx.java
CharEx.java:14: cannot find symbol
symbol : method FileReader(java.lang.String)
location: class CharEx
inputStream = …Run Code Online (Sandbox Code Playgroud) 我创建了一个安全应用程序,就像Mcafee wave secure一样.
我的应用程序正在侦听SMS命令并在命令匹配时执行某些操作,因此我创建了一个表单,其中包含另一个用于侦听SMS的服务.
这是主要形式:
public static final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";
ArrayList<String> messageList;
ArrayAdapter< String> adapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//untuk mendisable notification area
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);
MainButtonAbout=(Button) findViewById(R.id.MainbuttonAbout);
MainButtonHelp=(Button) findViewById(R.id.MainbuttonHelp);
MainButtonWizard=(Button) findViewById(R.id.MainbuttonWizard);
MainButtonOption=(Button) findViewById(R.id.MainbuttonOption);
MainCheckBoxActive=(CheckBox)findViewById(R.id.MaincheckBoxActive);
MainButtonAbout.setOnClickListener(this);
MainButtonHelp.setOnClickListener(this);
MainButtonWizard.setOnClickListener(this);
MainButtonOption.setOnClickListener(this);
startService(new Intent(MainForm.this, ListenSMSservice.class));
MainCheckBoxActive.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
if (buttonView.isChecked())
{
Toast.makeText(MainForm.this, "Your Device is Protected Now!!", 1).show();
startService(new Intent(MainForm.this, ListenSMSservice.class));
}
else
{
Toast.makeText(MainForm.this, …Run Code Online (Sandbox Code Playgroud)