環(huán)境變量配置沒(méi)問(wèn)題,主要是你的java路徑不對(duì),你還在默認(rèn)路徑下呢,得切換到j(luò)ava類路徑下才可以呢。
金秀ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書(shū)銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書(shū)合作)期待與您的合作!
如:jdk安裝在“D:\Program Files\java\jdk1.6.0_10”
第一步:新建“java_home”值,輸入“D:\Program Files\java\jdk1.6.0_10”;
第二步:新建“classpath”值,輸入“.;%java_home%\lib”;
第三步:在path中增加“%java_home%\bin”;
備注:配置環(huán)境變量在“計(jì)算機(jī)”右擊“屬性”,之后選擇“高級(jí)環(huán)境變量”,在選擇“環(huán)境變量”即可。
首先你要在你的電腦上安裝jdk。你可以在后面鏈接地址下載適合你自己的版本(),如果這個(gè)鏈接過(guò)期了,請(qǐng)?jiān)谶@個(gè)首先找一找。
在你的電腦上配置java環(huán)境變量,主要是配置path和classpath。你可以百度java環(huán)境變量配置,可以找到很多java環(huán)境變量配置方法。配置完畢,可以在cmd窗口下用java -version來(lái)查看是否配置成功。如果顯示出java版本相關(guān)的信息表示配置成功,可以進(jìn)行下一步了。
編譯你的源代碼,cmd窗口下把路徑改變(cd)到你源代碼文件所在的路徑,然后用javac 源文件名編譯,例如javac Hello.java(需要注意的是源文件名需要是你文件public類的類名,如果你的文件有public類的話)。當(dāng)然你也可以不改變(cd)到源文件所在的路徑,你的文件就需要加上絕對(duì)路徑就可以了。例如:javac e:\src\Hello.java.
運(yùn)行你編譯好的文件,java Hello(需要注意運(yùn)行的時(shí)候沒(méi)有后綴.java或者.class),同樣你可以不改變路徑用絕對(duì)路徑運(yùn)行,例如:java e:\src\Hello.如果你的代碼中有窗口這樣的類似的圖形化界面,你就需要用javaw來(lái)運(yùn)行。
另外,你可以使用eclipse,NetBeans這樣的集成開(kāi)發(fā)環(huán)境(IDE)來(lái)寫(xiě)代碼,這樣方便很多。
import?java.util.Scanner;
import?java.awt.*;
import?java.awt.event.*;
public?class?Test?extends?WindowAdapter?{
Panel?p1?=?new?Panel();
Panel?p2?=?new?Panel();
Panel?p3?=?new?Panel();
TextField?txt;
private?Button[]?b?=?new?Button[17];
private?String?ss[]?=?{?"7",?"8",?"9",?"+",?"4",?"5",?"6",?"-",?"1",?"2",
"3",?"*",?"clear",?"0",?"=",?"/",?"close"?};
static?double?a;
static?String?s,?str;//?定義變量?創(chuàng)建對(duì)像
public?static?void?main(String?args[])?{
(new?Test()).frame();
}
public?void?frame()?{
Frame?fm?=?new?Frame("簡(jiǎn)單計(jì)算器");
for?(int?i?=?0;?i?=?16;?i++)?{
b[i]?=?new?Button(ss[i]);
}
for?(int?i?=?0;?i?=?15;?i++)?{
p2.add(b[i]);
}?//?創(chuàng)建按鈕?并添加到P2
b[16].setBackground(Color.yellow);
txt?=?new?TextField(15);
txt.setEditable(false);
for?(int?i?=?0;?i?=?16;?i++)?{
b[i].addActionListener(new?buttonlistener());//?添加監(jiān)聽(tīng)器
}
b[16].addActionListener(new?close());
fm.addWindowListener(this);
fm.setBackground(Color.red);
p1.setLayout(new?BorderLayout());
p1.add(txt,?"North");
p2.setLayout(new?GridLayout(4,?4));
p3.setLayout(new?BorderLayout());
p3.add(b[16]);
fm.add(p1,?"North");
fm.add(p2,?"Center");
fm.add(p3,?"South");
fm.pack();
fm.setVisible(true);//?都是些窗中設(shè)置?添加相關(guān)組件和監(jiān)聽(tīng)器
}
public?void?windowClosing(WindowEvent?e)?{
System.exit(0);//?退出系統(tǒng)
}
class?buttonlistener?implements?ActionListener?{//?編寫(xiě)監(jiān)聽(tīng)器事件?通過(guò)按鍵得出給果
public?void?actionPerformed(ActionEvent?e)?{
Button?btn?=?(Button)?e.getSource();
if?(btn.getLabel()?==?"=")?{
jisuan();
str?=?String.valueOf(a);
txt.setText(str);
s?=?"";
}?else?if?(btn.getLabel()?==?"+")?{
jisuan();
txt.setText("");
s?=?"+";
}?else?if?(btn.getLabel()?==?"-")?{
jisuan();
txt.setText("");
s?=?"-";
}?else?if?(btn.getLabel()?==?"/")?{
jisuan();
txt.setText("");
s?=?"/";
}?else?if?(btn.getLabel()?==?"*")?{
jisuan();
txt.setText("");
s?=?"*";
}?else?{
txt.setText(txt.getText()?+?btn.getLabel());
if?(btn.getLabel()?==?"clear")
txt.setText("");
}
}
public?void?jisuan()?{//?編寫(xiě)具體計(jì)算方法
if?(s?==?"+")
a?+=?Double.parseDouble(txt.getText());
else?if?(s?==?"-")
a?-=?Double.parseDouble(txt.getText());
else?if?(s?==?"*")
a?*=?Double.parseDouble(txt.getText());
else?if?(s?==?"/")
a?/=?Double.parseDouble(txt.getText());
else
a?=?Double.parseDouble(txt.getText());
}
}
}
class?close?implements?ActionListener?{//?退出
public?void?actionPerformed(ActionEvent?e)?{
System.exit(0);
}
}
試試這個(gè)
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.applet.*;
public class SZJSQ extends JApplet implements ActionListener
{
boolean i=true;
private JButton num0=new JButton("0");
private JButton num1=new JButton("1");
private JButton num2=new JButton("2");
private JButton num3=new JButton("3");
private JButton num4=new JButton("4");
private JButton num5=new JButton("5");
private JButton num6=new JButton("6");
private JButton num7=new JButton("7");
private JButton num8=new JButton("8");
private JButton num9=new JButton("9");
private JButton zuok=new JButton("(");
private JButton youk=new JButton(")");
private JButton dian=new JButton(".");
private JButton NULL=new JButton("N");
private JButton plu=new JButton("+");
private JButton min=new JButton("-");
private JButton mul=new JButton("x");
private JButton div=new JButton("/");
private JButton equ=new JButton("=");
private JButton cle=new JButton("C");//清除
private JTextField space=new JTextField(30);
public void init()
{
JPanel text=new JPanel();
text.setLayout(new FlowLayout());
text.add(space);
JPanel buttons=new JPanel();
buttons.setLayout(new GridLayout(5,4));
buttons.add(num9);
buttons.add(num8);
buttons.add(num7);
buttons.add(plu);
buttons.add(num6);
buttons.add(num5);
buttons.add(num4);
buttons.add(min);
buttons.add(num3);
buttons.add(num2);
buttons.add(num1);
buttons.add(mul);
buttons.add(num0);
buttons.add(cle);
buttons.add(equ);
buttons.add(div);
buttons.add(zuok);
buttons.add(youk);
buttons.add(dian);
buttons.add(NULL);
(num9).addActionListener(this);
(num8).addActionListener(this);
(num7).addActionListener(this);
(num6).addActionListener(this);
(num5).addActionListener(this);
(num4).addActionListener(this);
(num3).addActionListener(this);
(num2).addActionListener(this);
(num1).addActionListener(this);
(num0).addActionListener(this);
(plu).addActionListener(this);
(min).addActionListener(this);
(mul).addActionListener(this);
(div).addActionListener(this);
(equ).addActionListener(this);
(cle).addActionListener(this);
(zuok).addActionListener(this);
(youk).addActionListener(this);
(dian).addActionListener(this);
setLayout(new BorderLayout());
add("North",text);
add("South",buttons);
space.setText("0");
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==num9)
{
if(i==true)
{
space.setText("9");
i=false;
}
else space.setText(space.getText()+'9');
}
if(e.getSource()==num8)
{
if(i==true)
{
space.setText("8");
i=false;
}
else space.setText(space.getText()+'8');
}
if(e.getSource()==num7)
{
if(i==true)
{
space.setText("7");
i=false;
}
else space.setText(space.getText()+'7');
}
if(e.getSource()==num6)
{
if(i==true)
{
space.setText("6");
i=false;
}
else space.setText(space.getText()+'6');
}
if(e.getSource()==num5)
{
if(i==true)
{
space.setText("5");
i=false;
}
else space.setText(space.getText()+'5');
}
if(e.getSource()==num4)
{
if(i==true)
{
space.setText("4");
i=false;
}
else space.setText(space.getText()+'4');
}
if(e.getSource()==num3)
{
if(i==true)
{
space.setText("3");
i=false;
}
else space.setText(space.getText()+'3');
}
if(e.getSource()==num2)
{
if(i==true)
{
space.setText("2");
i=false;
}
else space.setText(space.getText()+'2');
}
if(e.getSource()==num1)
{
if(i==true)
{
space.setText("1");
i=false;
}
else space.setText(space.getText()+'1');
}
if(e.getSource()==num0)
{
if(i==true)
{
space.setText("0");
i=false;
}
else space.setText(space.getText()+'0');
}
if(e.getSource()==zuok)
{
if(i==true)
{
space.setText("(");
i=false;
}
else space.setText(space.getText()+'(');
} if(e.getSource()==youk)
{
if(i==false)
space.setText(space.getText()+')');
}
if(e.getSource()==dian)
{
if(i==false)
space.setText(space.getText()+'.');
}
if(e.getSource()==plu)
{
space.setText(space.getText()+'+');
i=false;
}
if(e.getSource()==min)
{
space.setText(space.getText()+'-');
i=false;
}
if(e.getSource()==mul)
{
space.setText(space.getText()+'*');
i=false;
}
if(e.getSource()==div)
{
space.setText(space.getText()+'/');
i=false;
}
if(e.getSource()==equ)
{
space.setText(String.valueOf(Calculator(space.getText())));
i=true;
}
if(e.getSource()==cle)
{
space.setText("0");
i=true;
}
}
public double Calculator(String f)//科學(xué)計(jì)算
{
int i=0,j=0,k;
char c;
StringBuffer s=new StringBuffer();
s.append(f);
s.append('=');
String formula=s.toString();
char[] anArray;
anArray=new char[50];
StackCharacter mystack=new StackCharacter();
while(formula.charAt(i)!='=')
{
c=formula.charAt(i);
switch(c)
{
case '(': mystack.push(new Character(c));
i++;
break;
case ')':
while(mystack.peek().charValue()!='(')
{
anArray[j++]=mystack.pop().charValue();
}
mystack.pop();
i++;
break;
case '+':
case '-':
while(!mystack.empty()mystack.peek().charValue()!='(')
{
anArray[j++]=mystack.pop().charValue();
}
mystack.push(new Character(c));
i++;
break;
case '*':
case '/':
while(!mystack.empty()(mystack.peek().charValue()=='*'||mystack.peek().charValue()=='/'))
{
anArray[j++]=mystack.pop().charValue();
}
mystack.push(new Character(c));
i++;
break;
case' ': i++;
break;
default: while((c='0'c='9')||c=='.')
{
anArray[j++]=c;
i++;
c=formula.charAt(i);
}
anArray[j++]='#';
break;
}
}
while(!(mystack.empty()))
anArray[j++]=mystack.pop().charValue();
i=0;
int count;
double a,b,d;
StackDouble mystack1 =new StackDouble();
while(ij)
{
c=anArray[i];
switch(c)
{
case '+':
a=mystack1.pop().doubleValue();
b=mystack1.pop().doubleValue();
d=b+a;
mystack1.push(new Double(d));
i++;
break;
case '-':
a=mystack1.pop().doubleValue();
b=mystack1.pop().doubleValue();
d=b-a;
mystack1.push(new Double(d));
i++;
break;
case '*':
a=mystack1.pop().doubleValue();
b=mystack1.pop().doubleValue();
d=b*a;
mystack1.push(new Double(d));
i++;
break;
case '/':
a=mystack1.pop().doubleValue();
b=mystack1.pop().doubleValue();
if(a!=0)
{
d=b/a;
mystack1.push(new Double(d));
i++;
}
else
{
System.out.println("Error!");
}
break;
default:
d=0;count=0;
while((c='0'c='9'))
{
d=10*d+c-'0';
i++;
c=anArray[i];
}
if(c=='.')
{
i++;
c=anArray[i];
while((c='0'c='9'))
{
count++;
d=d+(c-'0')/Math.pow(10,count);
i++;
c=anArray[i];
}
}
if(c=='#')
mystack1.push(new Double(d));
i++;
break;
}
}
return(mystack1.peek().doubleValue());
}
}
分別設(shè)置過(guò)期時(shí)間的時(shí)候,應(yīng)該要用單獨(dú)的key
你可以設(shè)置String pre="vid_" 這個(gè)前綴,
用直接用key去存, 并且用expire 分別設(shè)置時(shí)間,這樣多張圖片之間就不會(huì)沖突,并且有這個(gè)前綴,也不會(huì)和別的業(yè)務(wù)沖突,
ps: 我們公司都用 前綴 + 業(yè)務(wù)自身名字 + 后綴 這種模式的
public abstract class Computer{
private String x;
private String y;
private int z; ?
public abstract double computePay();
public String result(){
return "abstract class"
}
}
1. 抽象類不能被實(shí)例化(初學(xué)者很容易犯的錯(cuò)),如果被實(shí)例化,就會(huì)報(bào)錯(cuò),編譯無(wú)法通過(guò)。只有抽象類的非抽象子類可以創(chuàng)建對(duì)象。
2. 抽象類中不一定包含抽象方法,但是有抽象方法的類必定是抽象類。
3. 抽象類中的抽象方法只是聲明,不包含方法體,就是不給出方法的具體實(shí)現(xiàn)也就是方法的具體功能。
4. 構(gòu)造方法,類方法(用 static 修飾的方法)不能聲明為抽象方法。
5. 抽象類的子類必須給出抽象類中的抽象方法的具體實(shí)現(xiàn),除非該子類也是抽象類。