java

阅读 / 问答 / 标签

请问java中继承的英文应该是什么?

extends

java中 extends与impletements 区别

extends是继承impletements是接口java一个类最多只能继承一个,但是可以有多个接口,接口里的所有方法都要重写

Java开发实战中,在什么情况下最适合用extends 去继承一个非抽象的类?

“都说随便用extends 是个大忌”,这句话本身就不成立。任何优秀框架的源码,extends的使用都是非常之多,而且类继承、实现的关系,非常之深。如果一定要定义最适合用,那就是:功能 or 业务,归属于同一大类。

java语言extends用法

哈哈~1l小白来了,问题就解决了,就像他说的那样,下面只需要给a类增加一个无参数构造方法就行了。classa{protectedstringname;protectedintage;protectedstringgender="woman";publica(){}publica(inta){age=a;}publica(stringn){name=n;}publica(inta,stringn){age=a;name=n;}publicvoidshow(){system.out.println("name="+name);system.out.println("gender="+gender);system.out.println("age="+age);}}

JAVA中为什么会有“extends”和“implents”两个关键字?

从概念上来说,extends表示的是类与类或接口与接口的继承,implements表示的是类对接口的实现。也就是说,一个是扩展,另一个是实现。从设计思路来回答,就要讲明白为什么会有类和接口这两个不同的概念。事实上,仅仅通过类的单继承就可以解决绝大部分问题,而C++的多重继承可以解决任何面向对象问题。之所以要设计接口这个概念,主要还是为了使面向对象设计中的多态得到优美的解决。接口是一个特殊的抽象类。Java的设计者认为,多重继承增加了系统设计和实现时的复杂性,并且容易出错和产生歧义(例如A同时继承了B和C,而A定义了一个方法,在B和C中都存在这个方法的同名方法,此时A重写了B还是C的方法?),因此Java只允许单重继承,这完全是Java的设计者强加的限制。为了解决单重继承无法解决的问题(或者说不容易解决的问题),Java设计者设计了接口的概念,实际上,Java设计者鼓励使用接口而不是继承,因为接口的抽象性更加纯粹。总结:单继承+接口和多继承都是为了解决面向对象问题,只是方式不同。在Java设计者看来,单继承+接口的好处 > 多继承

java里extends代表什么

继承嘛,http://baike.baidu.com/view/745501.htm

数据结构 java开发中常用的排序算法有哪些

冒择入希快归堆:冒泡、选择、插入、希尔、快速、归并、堆排序

怎么我的JAVA文件导入不了MYECLIPSE?

应该是缺少什么配置文件吧,可以新建一个一样名字的项目,把你原来项目文件拷进去就行啦!不一定非要导入!

JavaScript 控制Marquee无缝滚动的原理是什么呀

哪不是你想的那么简单,无缝滚动是要一个JAVASCRIPT 方法来实现的具体的要看你的需求 如果是在一个MARQUEE里面实现不间断的出现图片或文字(也就是不出现白屏)的效果的话,就要写方法了具体方法怎么写我也忘了 ,等我找找 下午给你补上

怎么用marquee怎样实现文字的连续滚动?中间没有间隔是 ,如果不能实现用JAVA怎么实现????!

如果需要我这向上滚、向下滚、向左向右的都有加我给你代码

java怎么添加factor方法

Java FactorGraph.addFactor方法代码示例本文整理汇总了Java中cc.mallet.grmm.types.FactorGraph.addFactor方法的典型用法代码示例。如果您正苦于以下问题:Java FactorGraph.addFactor方法的具体用法?Java FactorGraph.addFactor怎么用?Java FactorGraph.addFactor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cc.mallet.grmm.types.FactorGraph的用法示例。在下文中一共展示了FactorGraph.addFactor方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。示例1: FactorizedRegion▲ 点赞 2 ▼import cc.mallet.grmm.types.FactorGraph; //导入方法依赖的package包/类public FactorizedRegion (List factors){ super (varsForFactors (factors), factors); subMdl = new FactorGraph ((Variable[]) vars.toArray (new Variable[0])); for (Iterator it = factors.iterator (); it.hasNext ();) { Factor factor = (Factor) it.next (); subMdl.addFactor (factor); }}开发者ID:mimno,项目名称:GRMM,代码行数:10,代码来源:FactorizedRegion.java注:本文中的cc.mallet.grmm.types.FactorGraph.addFactor方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。

java中factor是什么意思

.里边的factor++是怎么回事factor++,是在else里面,只有当factor不能被n(13)整除时,才会执行factor++,这样就可以让while(factor <= n && !found)叠加的往下执行,否则的话无限循环了。2.为什么不是++factor呢?可以int a=++factor,int a=factor++两者区别只是先执行factor=factor+1再a=factor还是先执行a=factor,factor=factor+1;单是对factor本身没有什么区别3.为什么factor--之后会变成1而不是13理解第一个问题,factor--每循环一次,factor就会减1,当factor=1时,13%1==0found=true了,while(factor <= n && !found)这个循环判断就永远为false了,就会执行下面的System.out.println("The smallest factor other than 1 for "+ n + " is " + factor);了

JAVA中创建一个Factory类,它具有produce()方法。

publicclassFactory{publicvoidproduce(){System.out.println("我是无参的produce方法");}publicvoidproduce(inti){System.out.println("我是有1个int型的参数produce方法:"+i);}publicvoidproduce(Stringname){System.out.println("我是有一个String参数的produce方法:"+name);}publicvoidproduce(Stringname,inti){System.out.println("我是有一个int型参数和一个String参数的produce方法:"+name+","+i);}publicstaticvoidmain(Stringargs[]){Factoryf=newFactory();f.produce();f.produce(2);f.produce("张三");f.produce("王五",3);}}

java 求助String string : strs

for循环的另一种形式 没有为什么 只是为了简便而已

java中的正则表达式怎么取值啊

public static void test3(){ String a = "fafa[hello.exe]"; Pattern p = Pattern.compile("\[*.*\]"); Matcher m = p.matcher(a); boolean b = m.matches(); System.out.println(b); }你的上面的明显不能匹配阿。

java+js+FineReport写了个导出excel功能,查询的sql能执行,但是报错了,没有导出东西来,求大神解答

可能是你的excel模版本身有问题,可以尝试新建一个模版试试看。 或者说你的excel使用了一些POI不支持的函数。如果还是有问题的话,你可以去帆软论坛逛逛,那里有很多人为你解答的。

javascript 循环执行网页

if (i == page_list.length) { clearInterval(t); } 把上面的改成:if (i == page_list.length) { i = 0; }

请问java里的JTextField文本框怎么设置大小?

文本框.setBounds(10,10,30,170) 设置位置。文本框的宽是改不了的,只有长度才能改变,JTextField jtf = new JTextField(length);length大了,文本框就长了。想要长宽可变的文本框可用JTextArea jta = new JTextArea(长,宽);

java中fis.close();有什么作用

这是在文件传输完毕之后关闭为了文件传输而打开的通道,如果不关闭的话,在后续使用中就会报错

Java程序实现压缩某目录

  public class TestZip {   public static String SERPEROT = / ;   public static int BUFFER = ;   public static void main(String args[]){   zip( e:/hello/ e:/hello zip );   }   public static void zip(String srcFile String descFile){   ZipOutputStream zos = null;   FileOutputStream fos = null;   File file = null;   try {   fos = new FileOutputStream(descFile);   zos = new ZipOutputStream(fos);   file = new File(srcFile);   String folder = srcFile substring(srcFile lastIndexOf( / ) + srcFile length());   zip(zos file folder);   } catch (FileNotFoundException e) {   e printStackTrace();   }finally{   try{   if(zos != null){zos close();}   if(fos != null){fos close();}   }catch(Exception e){   e printStackTrace();   }   }   }   private static void zip(ZipOutputStream descFile File srcFile String srcfolder){   FileInputStream fis = null;   System out println(srcFile isDirectory());   try{   if(srcFile isDirectory()){   File[] files = srcFile listFiles();   descFile putNextEntry(new ZipEntry(srcfolder + / )); //是压缩包里面的路径   srcfolder = srcfolder length() == ? : srcfolder + / ;   System out println(srcfolder);   for(int i= ; i<files length; i++){   zip(descFile files[i] srcfolder + files[i] getName());   }   }else{   descFile putNextEntry(new ZipEntry(srcfolder));   fis = new FileInputStream(srcFile);   byte[] bytes = new byte[ ];   int n = ;   while((n = fis read(bytes)) != ){   descFile write(bytes n);   }   }   }catch(Exception e){   e printStackTrace();   }finally{   try{   if(fis != null){fis close();}   }catch(Exception e){   e printStackTrace();   }   }   } lishixinzhi/Article/program/Java/hx/201311/25760

编JAVA程序获取指定D盘下file.txt内容要求创建一个fis字节输入流对象一个buf字节组长度定义为1024整数倍

您可以使用以下代码来实现您的需求:该代码会创建一个 FileInputStream 对象,该对象将从指定的文件路径中读取数据。然后,它会创建一个长度为 1024 的字节数组,并使用 fis.read(buf) 方法将文件内容读取到该数组中。最后,它会将读取到的内容输出到控制台,并关闭输入流。Try again

java中date=fis.read())!=-1什么意思

表示读取文件成功吧

javax.mail.MessagingException: 553 authentication is required

这是javamail的验证方法中的一种改写Authenticator的getPasswordAuthentication()方法private class Authenticator extends javax.mail.Authenticator{ public PasswordAuthentication getPasswordAuthentication() { String un = user; String pw = password; return new PasswordAuthentication(un, pw); }}应用这个之前需要设置props.put( "mail.smtp.auth ", "true "); 然后Authenticator auth = new Authenticator();Session mailSession = Session.getInstance(props,auth);还有一种方法是在Transport中设置Transport transport = mailSession.getTransport( "smtp ");transport.connect( "mail.smtp.auth ", "username ", "password ");transport.sendMessage(mimeMsg,maillist);transport.close();* sorze * sorze * 等级:transport.connect( "mail.smtp.auth ", "username ", "password "); “mail.smtp.auth”应改为"smtp.163.com"或者类似的,其实写成这样就可以了transport.connect( "username ", "password "); mail.smtp.host在propperties中就设置了

java做投票系统

昨天在一个网站看到一个投票系统源码,java的,你参考下http://www.java1234.com/a/kaiyuan/javaWeb/2013/0825/648.html

javascript中的事件类型有哪些

这些。。。AnimationEventAudioProcessingEventBeforeInputEventBeforeUnloadEventBlobEventClipboardEventCloseEventCompositionEventCSSFontFaceLoadEventCustomEventDeviceLightEventDeviceMotionEventDeviceOrientationEventDeviceProximityEventDOMTransactionEventDragEventEditingBeforeInputEventErrorEventFocusEventGamepadEventHashChangeEventIDBVersionChangeEventKeyboardEventMediaStreamEventMessageEventMouseEventMutationEventOfflineAudioCompletionEventPageTransitionEventPointerEventPopStateEventProgressEventRelatedEventRTCPeerConnectionIceEventSensorEventStorageEventSVGEventSVGZoomEventTimeEventTouchEventTrackEventTransitionEventUIEventUserProximityEventWheelEvent文档:https://developer.mozilla.org/zh-CN/docs/Web/API/Event

javascript代码中,function(e,t,i)中e,t,i分别是什么?e是指event吗?

这是自定义对象中所设定的参数,具体含义要看过这个webpackJsonp对象的声明代码才知道。1111这个数字的含义也一样,除了代码的作者本人,其他人就只能靠分析代码或瞎猜了。

Javascript angular2中$event.target有时获取的是当前元素的子元素,这种问题该怎么避免呢

这就是事件冒泡,当一个元素触发事件后,会逐层上报给父元素、祖父元素……乃至document,也就是说这些元素都会同时触发事件。这种情况下,event.target就是指最初触发事件的那个子元素(就比如你题目中的img),而event.currentTarget才是被冒泡后触发事件的当前元素(比如li)。这也就意味着,当你点击li时,如果点到的是子元素img,则event.target就是img,而event.currentTarget则是li,而当你点到的是li里面除img之外的其他部分时,event.target和event.currentTarget都是li所以,现在你知道该怎么做啦?就是不要使用event.target,改用event.currentTarget

关于JavaScript函数参数e

你这样写就可以了function doSomething(e) { if (!e) var e = window.event e.cancelBubble = true; if (e.stopPropagation) e.stopPropagation();} ---------------------------------------------是你传递,创建event的方法不对下面是我修改后的代码你看看--------------------------------------------- <script type="text/javascript"> window.onload = function(e){ a(e); } function cancelBubble(e){ var e = e?e:window.event; if(window.event) e.cancleBubble = true; else e.stopPropagation(); ///////////报错点: e is undefined } function a(e){ //var e = new event(); alert(e); if(!e) var e = window.event; alert(e); cancelBubble(e); } function b(){ alert(1); }</script>

请教,javascript如何得知event对象的ID?求高手!!!

alert(this.id);

javascript中.event作为参数怎样传递

1、定义二个方法function k1(){//定义一个函数k1alert("k1");}function k2(p){//定义一个函数k2,参数为方法p();//执行参数表示的函数}2、k1作为参数,传递到k2中k2(k1);//把k1作为参数传入到k2中,这里执行后会弹出 "k1"k2(k1);//把k1作为参数传入到k2中,这里执行后会弹出 "k1"<img id="selectsearch-icon" src="https://gss0.bdstatic.com/70cFsjip0QIZ8tyhnq/img/iknow/qb/select-search.png" alt="搜索">

大虾,帮我下哦 javascript 中的 e和 window.event 分别指什么》

ie中事件是全局变量window.event可以随时拿到 ,其它浏览器必须在参数中传递才能获取事件其它浏览器中默认第一个参数传递的是事件,如果你显示的传递了别的参数,这个事件你将无法获得,所以要兼容每个浏览器,方法内首先要判断这个e参数,如果没有则是ie的判断简单的方法是 e = e||window.event

javascript event对象的问题

js挺久没接触了啊

java里trigger是干什么用的?

Trigger不是java特性也不是java内置的代码,而是其它程序的封装。在Quartz中Trigger是触发器,Quartz中的触发器用来告诉调度程序作业什么时候触发即Trigger对象是用来触发执行Job的

怎么用java编写一个按钮界面

java的ui,是swing完成的,里面都是界面绘制的类库。

想用JAVA做一个计算器,怎么让文本从右边开始显示

垃 圾。。

Java Swing打印问题

public class En implements Printable { private static final long serialVersionUID = -5124405479024666344L; private JPanel contentPane; private JTable table; private JFrame f; public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { En fr = new En(); } catch (Exception e) { e.printStackTrace(); } } }); } public En() { f = new JFrame(); f.setTitle("u6253u5370u6D4Bu8BD5u7A97u53E3"); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); contentPane.setLayout(new BorderLayout(0, 0)); f.setContentPane(contentPane); final JPanel panel = new JPanel(); contentPane.add(panel, BorderLayout.CENTER); panel.setLayout(null); JLabel label = new JLabel("New label"); label.setBounds(330, 11, 73, 15); panel.add(label); JButton button = new JButton("New button"); button.setBounds(144, 7, 138, 23); panel.add(button); JButton button_3 = new JButton("u6253u5370"); button_3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Toolkit kit = Toolkit.getDefaultToolkit(); if (kit != null) { PrinterJob printerJob = PrinterJob.getPrinterJob(); Book book = new Book(); book.append(En.this, new PageFormat()); printerJob.setPageable(book); try { printerJob.printDialog(); printerJob.print(); } catch (PrinterException ex) { Logger.getLogger(En.class.getName()).log(Level.SEVERE, null, ex); } } } }); button_3.setBounds(340, 36, 93, 39); panel.add(button_3); JButton button_2 = new JButton("New button"); button_2.setBounds(21, 2, 93, 30); panel.add(button_2); JScrollPane scrollPane = new JScrollPane(); scrollPane.setBounds(33, 61, 285, 168); panel.add(scrollPane); table = new JTable(9, 5); scrollPane.setViewportView(table);f.setVisible(true); } public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException { f.paint(graphics); return Printable.PAGE_EXISTS; }}

我们java老师让我们把下面这道例题改一下,使两个按钮放在同一个位置东南西北中任意一个按钮空出一个位置

白痴

java中怎样画出3行3列的、可以填充字符的表格?

import javax.swing.*;public class DrawTable extends JFrame{ JTable jt=null; public DrawTable(){ jt=new JTable(3,3); this.add(jt); this.setVisible(true); this.pack(); this.setDefaultCloseOperation(this.EXIT_ON_CLOSE); } public static void main(String[] args) { DrawTable dt=new DrawTable(); }}

Java swing 界面设计 打酱油的别来~~~

求源码要跑起来看。。你的图看不明白。 可以短消息加QQ。

请帮我看下这个JAVA的程序(简易红绿灯)

自动换颜色:import java.awt.BorderLayout;import java.awt.Graphics;import java.awt.Color;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.*;import javax.swing.JPanel;import javax.swing.JFrame;import javax.swing.ButtonGroup;import javax.swing.JRadioButton; public class lightP1 extends JFrame { int flag=0; myPanel panel_1 = new myPanel(); public lightP1(){ super(); setTitle("TrafficLight"); getContentPane().setLayout(new BorderLayout()); final JPanel panel = new JPanel(); getContentPane().add(panel, BorderLayout.NORTH); final ButtonGroup buttonGroup = new ButtonGroup(); final JRadioButton jrbRed = new JRadioButton(); jrbRed.setText("Red"); panel.add(jrbRed); final JRadioButton jrbYellow = new JRadioButton(); jrbYellow.setText("Yellow"); panel.add(jrbYellow); final JRadioButton jrbGreen = new JRadioButton(); jrbGreen.setText("Green"); buttonGroup.add(jrbRed); buttonGroup.add(jrbYellow); buttonGroup.add(jrbGreen); panel.add(jrbGreen); jrbRed.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // g.setColor(Color.red); flag=1; panel_1.setColor(flag); panel_1.repaint(); } }); jrbYellow.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { flag=2; panel_1.setColor(flag); panel_1.repaint(); } }); jrbGreen.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { flag=3; panel_1.setColor(flag); panel_1.repaint(); } }); getContentPane().add(panel_1, BorderLayout.CENTER); Timer timer=new Timer(); timer.schedule(new MyTimerTask(),1000,1000); } class MyTimerTask extends TimerTask { public void run(){ for (int i=1;i<=3;i++){ try{ Thread.sleep(1000); }catch(Exception e){ } flag=i; // Thread.sleep(3000); panel_1.setColor(flag); panel_1.repaint(); //System.out.println("flag="+flag); } } } /** Main method */ public static void main(String[] args) { lightP1 frame = new lightP1(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400, 450); frame.setVisible(true); } } class myPanel extends JPanel { int color=0; //protected void paintComponent(final Graphics g) { public void paint(Graphics g) { super.paint(g); g.drawRect(130, 25, 40, 120); if (color==1){ g.setColor(Color.red); g.fillOval(135, 30, 30, 30); g.setColor(Color.black); g.fillOval(135, 70, 30, 30); g.setColor(Color.black); g.fillOval(135, 110,30, 30); }else if (color==2){ g.setColor(Color.black); g.fillOval(135, 30, 30, 30); g.setColor(Color.yellow); g.fillOval(135, 70, 30, 30); g.setColor(Color.black); g.fillOval(135, 110,30, 30); }else if (color==3){ g.setColor(Color.black); g.fillOval(135, 30, 30, 30); g.setColor(Color.black); g.fillOval(135, 70, 30, 30); g.setColor(Color.green); g.fillOval(135, 110,30, 30); }else{ g.setColor(Color.black); g.fillOval(135, 30, 30, 30); g.setColor(Color.black); g.fillOval(135, 70, 30, 30); g.setColor(Color.black); g.fillOval(135, 110,30, 30); } } public void setColor(int color){ this.color=color; } }

用java设计界面,怎么把一个界面分成独立的三块,求高手解答,谢谢

BorderLayout 左中右,或者上中下

运行java是,找不到或无法加载主类怎么办,请帮忙解决一下(之前运行“helloworld!”)没问题。

先确定编译通过了。

java 小游戏

SOFJ

在Java中怎样声明公共类呢??下面的程序、、

很正确写的非常好。

JAVA问题,创建局部内部类对象可以(外部类对象.new内部局部类)这么写吗?

是得

Java应用中的一个问题

使用Swing中的JTabbedPane组件来做就可以了。不明白为什么现在还用awt来做。使用JTabbedPane的话,就简单多了,建立几个标签然后添加Jpanel就行了。可以使用Netbeans中的GUI构建工具直接拖曳出组件

寻求高手帮菜鸟解决JAVA问题

……文件比数据库麻烦多了……

java 毫秒倒计时器 想编写一个方法,其中就有一个参数 倒计时多长时间

import java.awt.BorderLayout;import java.awt.Font;import java.awt.Graphics;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.SwingConstants;public class NanoTimeframe extends JPanel{ private static final long serialVersionUID = -6135068834705503622L; private JLabel lblTime; private long start = 0L; // 从0毫秒开始 private static long MAXTIME = 5000L; // 5秒后结束 private boolean begin = false; private JTextField setTime; public NanoTimeframe() { this.lblTime = new JLabel("单击开始"); this.setTime = new JTextField(); System.out.println("1"); this.lblTime.setFont(new Font("Monospaced", Font.BOLD, 60)); this.lblTime.setHorizontalAlignment(SwingConstants.CENTER); this.lblTime.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { MAXTIME = Long.parseLong(setTime.getText()); begin = true; lblTime.setText(timeStr(start)); } }); setLayout(new BorderLayout()); add(lblTime, BorderLayout.CENTER); add(setTime, BorderLayout.NORTH); } private String timeStr(long time) { StringBuffer timeBuffer = new StringBuffer(); long miu = time / (60 * 1000); time -= miu * 60 * 1000; long se = time / 1000; time -= se * 1000; long mi = time % 1000; timeBuffer.append(miu < 10 ? ("0" + miu) : miu); timeBuffer.append("."); timeBuffer.append(se < 10 ? ("0" + se) : se); timeBuffer.append("."); timeBuffer.append(mi < 10 ? ("00" + mi) : (mi < 100 ? ("0" + mi) : mi)); return timeBuffer.toString(); } @Override public void paintComponent(Graphics page) { if (!begin) return; super.paintComponent(page); if (start >= MAXTIME) { lblTime.setText("Bomb!!!"); return; } start += 1; lblTime.setText(timeStr(start)); } public static void main(String [] args){ JFrame jf = new JFrame(); jf.setResizable(false); jf.setBounds(0, 0, 460, 330); jf.setLocationRelativeTo(null); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jf.add(new NanoTimeframe()); jf.setVisible(true); }}请给分 改得辛苦上面输入毫秒后计时

有一段JAVA小程序 在线求详细解释

这是一个可以做 加减乘除的计算器。这个程都已经有了一些简单的注释了,public CalculatorA(){ jf=new JFrame("我的计算器v1.0"); jtf=new JTextField(20); //文本框 clear=new JButton("clear"); //按钮 jbs=new JButton[16]; //16个 String str="123+456-789*0./="; // 按钮上显示的数字 符号 for(int i=0; i<str.length(); i++){ jbs[i]=new JButton(str.charAt(i)+""); } init(); addEventHandler();// setFont();// setColor(); showMe();/** * 布局图形界面 * */ public void init(){// jf.setLayout(manager) JPanel jp1=new JPanel(); jp1.add(jtf); // 显示文本框,在面板容器上。 JPanel jp2=new JPanel(); //new一个面板容器 jp2.setLayout(new GridLayout(4,4)); //网格式布局 for(int i=0; i<16; i++){ jp2.add(jbs[i]); } //把 按钮放到JPanel里 JPanel jp3=new JPanel(); jp3.add(clear); jf.add(jp1,BorderLayout.NORTH); jf.add(jp2,BorderLayout.CENTER); jf.add(jp3,BorderLayout.SOUTH); } //把以上 JPanel 放到JFrame里 public void setFont(){ } public void setColor(){ } }/*上面的这些代码都是为了布局。 * 下面的代码,是事件的处理, */public void (){ // ActionListener lis=new ActionListener(){ public void actionPerformed(ActionEvent e){ // TODO Auto-generated method stub JButton jb=(JButton)e.getSource();// String key=(String)e.getActionCommand(); String str =jb.getText().trim();//把字符串的首尾空格去掉!// String str2=e.getActionCommand().trim();//返回事件源的文本内容 if("0123456789.".indexOf(str)!=-1){//如果是数字或点号 jtf.setText(jtf.getText()+str); return; } if("+-*/".indexOf(str)!=-1){ num1=Double.parseDouble(jtf.getText()); jtf.setText(""); c=str.charAt(0); jtf.setText(""); return ; } if(str.equals("=")){ num2=Double.parseDouble(jtf.getText());// jtf.setText(""); switch(c){ case "+": jieguo=num1+num2;break; case "-": jieguo=num1-num2;break; case "*": jieguo=num1*num2; break; case "/": jieguo=num1/num2;break; } jtf.setText(Double.toString(jieguo)); return; } if(e.getActionCommand().equals("clear")){ jtf.setText(""); return; } } }; for(int i=0; i<jbs.length; i++){ jbs[i].addActionListener(lis); } clear.addActionListener(lis); } public void showMe(){ jf.pack(); jf.setVisible(true); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args){ new CalculatorA(); }} 这些代码应该很好理解,就是取一个按钮的值,进行一下运算。

java 求高手帮助 在界面上给出两个或者多个点(坐标) 点击按钮 在每两个点之间出现一个点 求源代码 谢谢

这是我写的一个简单的效果,效果如图,点击update按钮会随机生成两点之间的坐标按钮,楼下的还不错,可采纳:

扫雷java源代码

import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Frame extends JFrame { JTextField text; JLabel nowBomb, setBomb; int BombNum, BlockNum; // 当前雷数,当前方块数 int rightBomb, restBomb, restBlock; // 找到的地雷数,剩余雷数,剩余方块数 JButton start = new JButton(" 开始 "); JPanel MenuPamel = new JPanel(); JPanel bombPanel = new JPanel(); Bomb[][] bombButton; JPanel c; BorderLayout borderLayout1 = new BorderLayout(); GridLayout gridLayout1 = new GridLayout(); public Frame() { try { setDefaultCloseOperation(EXIT_ON_CLOSE); jbInit(); } catch (Exception exception) { exception.printStackTrace(); } }private void jbInit() throws Exception { c = (JPanel) getContentPane(); setTitle("扫雷"); c.setBackground(Color.WHITE); MenuPamel.setBackground(Color.GRAY); c.setLayout(borderLayout1); setSize(new Dimension(600, 600)); setResizable(false); BlockNum = 144; BombNum = 10; text = new JTextField("10 ", 3); nowBomb = new JLabel("当前雷数" + ":" + BombNum); setBomb = new JLabel("设置地雷数"); start.addActionListener(new Frame1_start_actionAdapter(this)); MenuPamel.add(setBomb); MenuPamel.add(text); MenuPamel.add(start); MenuPamel.add(nowBomb); c.add(MenuPamel, java.awt.BorderLayout.SOUTH); bombPanel.setLayout(gridLayout1); gridLayout1.setColumns( (int) Math.sqrt(BlockNum)); gridLayout1.setRows( (int) Math.sqrt(BlockNum)); bombButton = new Bomb[ (int) Math.sqrt(BlockNum)][ (int) Math.sqrt(BlockNum)]; for (int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { bombButton[i][j] = new Bomb(i, j); //bombButton[i][j].setSize(10, 10); bombButton[i][j].setFont(new Font("", Font.PLAIN, 14));//设置字体大小 bombButton[i][j].setForeground(Color.white); bombButton[i][j].addMouseListener(new Bomb_mouseAdapter(this)); bombButton[i][j].addActionListener(new Bomb_actionAdapter(this)); bombPanel.add(bombButton[i][j]); } } c.add(bombPanel, java.awt.BorderLayout.CENTER); startBomb(); } /* 开始按钮 */ public void start_actionPerformed(ActionEvent e) { int num=Integer.parseInt(text.getText().trim()); if (num >= 5 && num < 50) { BombNum = num; startBomb(); } else if (num < 5) { JOptionPane.showMessageDialog(null, "您设置的地雷数太少了,请重设!", "错误", JOptionPane.ERROR_MESSAGE); num=10; BombNum = num; } else { JOptionPane.showMessageDialog(null, "您设置的地雷数太多了,请重设!", "错误", JOptionPane.ERROR_MESSAGE); num=10; BombNum = num; } } /* 开始,布雷 */ public void startBomb() { nowBomb.setText("当前雷数" + ":" + BombNum); for (int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { bombButton[i][j].isBomb = false; bombButton[i][j].isClicked = false; bombButton[i][j].isRight = false; bombButton[i][j].BombFlag = 0; bombButton[i][j].BombRoundCount = 9; bombButton[i][j].setEnabled(true); bombButton[i][j].setText(""); bombButton[i][j].setFont(new Font("", Font.PLAIN, 14));//设置字体大小 bombButton[i][j].setForeground(Color.BLUE); rightBomb = 0; restBomb = BombNum; restBlock = BlockNum - BombNum; } } for (int i = 0; i < BombNum; ) { int x = (int) (Math.random() * (int) (Math.sqrt(BlockNum) - 1)); int y = (int) (Math.random() * (int) (Math.sqrt(BlockNum) - 1)); if (bombButton[x][y].isBomb != true) { bombButton[x][y].isBomb = true; i++; } } CountRoundBomb(); } /* 计算方块周围雷数 */ public void CountRoundBomb() { for (int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { int count = 0; // 当需要检测的单元格本身无地雷的情况下,统计周围的地雷个数 if (bombButton[i][j].isBomb != true) { for (int x = i - 1; x < i + 2; x++) { for (int y = j - 1; y < j + 2; y++) { if ( (x >= 0) && (y >= 0) && (x < ( (int) Math.sqrt(BlockNum))) && (y < ( (int) Math.sqrt(BlockNum)))) { if (bombButton[x][y].isBomb == true) { count++; } } } } bombButton[i][j].BombRoundCount = count; } } } } /* 是否挖完了所有的雷 */ public void isWin() { restBlock = BlockNum - BombNum; for (int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { if (bombButton[i][j].isClicked == true) { restBlock--; } } } if (rightBomb == BombNum || restBlock == 0) { JOptionPane.showMessageDialog(this, "您挖完了所有的雷,您胜利了!", "胜利", JOptionPane.INFORMATION_MESSAGE); startBomb(); } } /** 当选中的位置为空,则翻开周围的地图* */ public void isNull(Bomb ClickedButton) { int i, j; i = ClickedButton.num_x; j = ClickedButton.num_y; for (int x = i - 1; x < i + 2; x++) { for (int y = j - 1; y < j + 2; y++) { if ( ( (x != i) || (y != j)) && (x >= 0) && (y >= 0) && (x < ( (int) Math.sqrt(BlockNum))) && (y < ( (int) Math.sqrt(BlockNum)))) { if (bombButton[x][y].isBomb == false && bombButton[x][y].isClicked == false && bombButton[x][y].isRight == false) { turn(bombButton[x][y]); } } } } } /* 翻开 */ public void turn(Bomb ClickedButton) { ClickedButton.setEnabled(false); ClickedButton.isClicked = true; if (ClickedButton.BombRoundCount > 0) { ClickedButton.setText(ClickedButton.BombRoundCount + ""); } else { isNull(ClickedButton); } } /* 左键点击 */ public void actionPerformed(ActionEvent e) { if ( ( (Bomb) e.getSource()).isClicked == false && ( (Bomb) e.getSource()).isRight == false) { if ( ( (Bomb) e.getSource()).isBomb == false) { turn( ( (Bomb) e.getSource())); isWin(); } else { for (int i = 0; i < (int) Math.sqrt(BlockNum); i++) { for (int j = 0; j < (int) Math.sqrt(BlockNum); j++) { if (bombButton[i][j].isBomb == true) { bombButton[i][j].setText("b"); } } } ( (Bomb) e.getSource()).setForeground(Color.RED); ( (Bomb) e.getSource()).setFont(new Font("", Font.BOLD, 20)); ( (Bomb) e.getSource()).setText("X"); JOptionPane.showMessageDialog(this, "你踩到地雷了,按确定重来", "踩到地雷", 2); startBomb(); } } } /* 右键点击 */ public void mouseClicked(MouseEvent e) { Bomb bombSource = (Bomb) e.getSource(); boolean right = SwingUtilities.isRightMouseButton(e); if ( (right == true) && (bombSource.isClicked == false)) { bombSource.BombFlag = (bombSource.BombFlag + 1) % 3; if (bombSource.BombFlag == 1) { if (restBomb > 0) { bombSource.setForeground(Color.RED); bombSource.setText("F"); bombSource.isRight = true; restBomb--; } else { bombSource.BombFlag = 0; } } else if (bombSource.BombFlag == 2) { restBomb++; bombSource.setText("Q"); bombSource.isRight = false; } else { bombSource.setText(""); } if (bombSource.isBomb == true) { if (bombSource.BombFlag == 1) { rightBomb++; } else if (bombSource.BombFlag == 2) { rightBomb--; } } nowBomb.setText("当前雷数" + ":" + restBomb); isWin(); } } public static void main(String[] args) { Frame frame = new Frame(); frame.setVisible(true); }}class Frame1_start_actionAdapter implements ActionListener { private Frame adaptee; Frame1_start_actionAdapter(Frame adaptee) { this.adaptee = adaptee; } public void actionPerformed(ActionEvent e) { adaptee.start_actionPerformed(e); }}////////////////////////////class Bomb extends JButton { int num_x, num_y; // 第几号方块 int BombRoundCount; // 周围雷数 boolean isBomb; // 是否为雷 boolean isClicked; // 是否被点击 int BombFlag; // 探雷标记 boolean isRight; // 是否点击右键 public Bomb(int x, int y) { num_x = x; num_y = y; BombFlag = 0; BombRoundCount = 9; isBomb = false; isClicked = false; isRight = false; }}class Bomb_actionAdapter implements ActionListener { private Frame adaptee; Bomb_actionAdapter(Frame adaptee) { this.adaptee = adaptee; } public void actionPerformed(ActionEvent e) { adaptee.actionPerformed(e); }}class Bomb_mouseAdapter extends MouseAdapter { private Frame adaptee; Bomb_mouseAdapter(Frame adaptee) { this.adaptee = adaptee; } public void mouseClicked(MouseEvent e) { adaptee.mouseClicked(e); }}

急求java CardLayout的使用方法,实现图片第一张,上一张,下一张的代码?

package chapter24;import java.awt.BorderLayout;import java.awt.CardLayout;import java.awt.Color;import java.awt.Font;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Random;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.SwingConstants;public class Eg_02 extends JFrame{ private CardLayout cardLayout = new CardLayout();; JPanel panel = new JPanel(cardLayout); public Eg_02() { this.setTitle("使用卡片布局管理器"); this.setBounds(100, 100, 650, 200);// System.out.println(this.getContentPane()==this.getRootPane().getContentPane());//print:true// this.add(panel, BorderLayout.CENTER); this.getContentPane().add(panel, BorderLayout.CENTER); String[]labelNames = {"卡片A", "卡片B", "卡片C", "卡片D"}; for (int i = 0; i < labelNames.length; i++) { final JLabel label = new JLabel(labelNames[i]); label.setHorizontalAlignment(SwingConstants.CENTER); label.setFont(new Font("", Font.BOLD, 18)); label.setForeground(new Color(new Random().nextInt(255), new Random().nextInt(255), new Random().nextInt(255))); panel.add(label, labelNames[i]); } final JPanel btnPanel = new JPanel(); this.getContentPane().add(btnPanel, BorderLayout.SOUTH); String[]btnNames = {"第一个", "前一个", "卡片A", "卡片B", "卡片C", "卡片D", "后一个", "最后一个"}; for (int i = 0; i < btnNames.length; i++) { JButton btn = new JButton(btnNames[i]); btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { String btnText = btn.getText(); switch (btnText) { case "第一个": cardLayout.first(panel); break; case "前一个": cardLayout.previous(panel); break; case "卡片A": cardLayout.show(panel, "卡片A"); break; case "卡片B": cardLayout.show(panel, "卡片B"); break; case "卡片C": cardLayout.show(panel, "卡片C"); break; case "卡片D": cardLayout.show(panel, "卡片D"); break; case "后一个": cardLayout.next(panel); break; default: cardLayout.last(panel); break; } } }); btnPanel.add(btn); } this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } public static void main(String[] args) { new Eg_02(); }}

在Java中如何设置文本框在面板上的位置

使用BorderLayout、FlowLayout、GridLayout布局模式 BorderLayout 按东南西北位置布局FlowLayout按左中右位置布局 GridLayout按顶点位置布局

关于JAVA窗口调用方法

可以直接用是因为BorderLayoutPosition类继承了JFrame类,这样一来BorderLayoutPosition也是一个窗口所以JFrame类所有的方法BorderLayoutPosition类也会有所以可以直接使用setSize(350, 200);setVisible(true); setDefaultCloseOperation 等方法。

java中,JFrame. add(JLabel),默认使用什么布局?

JFrame默认布局是BorderLayout,也就是上下左右中的那个布局,默认会把组件放到BorderLayout.CENTER位置

JAVA 购物车示例代码

网上不是一大堆么

java关于panel和Button的

import java.awt.*; public class aa { public static void main (String args[]) { Frame f=new Frame("包含面板的Frame"); Panel pan=new Panel(); Button b=new Button("请点击我"); b.setVisible(true); b.setLocation(100,200); f.setSize(800,800); f.setBackground(Color.green); f.setLayout(null); pan.setSize(200,200); pan.setBackground(Color.black); pan.add(b); //差这一句。。 f.add(pan); pan.setLocation(300,300); f.setVisible(true); } }满意请采纳。

java怎样放两个按钮在窗体的正中间

不如清空布局,自己计算坐标,想放哪就放哪

JAVA 这个东西怎么做?

1楼,好像他要的是GUI

java布局管理器有哪几种各自的特点

java中提供了5种布局管理器,1.Borderlayout 这是一个布置容器的边框布局,它可以对容器组件进行安排,并调整其大小,使其符合下列五个区域:北、南、东、西、中。每个区域最多只能包含一个组件

Java编程,为什么唯一一个按钮布满整个窗体?

只需加上cont.setBorderLayout(null),然后再设定jb.setBounds(10,10,100,21)即可

java怎样实现点击一个带图片按钮的,然后把按钮的图片显示在指定label上?没财富值了,谢谢

label.setIcon(button.getIcon())

Java问题

import java.awt.BorderLayout;import java.awt.Color;import java.awt.FlowLayout;import java.awt.Graphics;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JTextField;public class Test{public static void main(String[] args) throws Exception {JFrame frame = new JFrame();final RectanglePanel panel = new RectanglePanel();frame.add(panel, BorderLayout.CENTER);JPanel paramPanel = new JPanel();paramPanel.setLayout(new FlowLayout(FlowLayout.CENTER));final JTextField widthField = new JTextField(5);final JTextField heightField = new JTextField(5);paramPanel.add(widthField);paramPanel.add(heightField);JButton button = new JButton("Draw");button.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {try {int width = Integer.parseInt(widthField.getText());int height = Integer.parseInt(heightField.getText());panel.setRectangleSize(width, height);panel.repaint();} catch (Exception ex) {}}});paramPanel.add(button);frame.add(paramPanel, BorderLayout.SOUTH);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setExtendedState(JFrame.MAXIMIZED_BOTH);frame.setVisible(true);}}class RectanglePanel extends JPanel {int width = 0, height = 0;void setRectangleSize(int width, int height) {this.width = width;this.height = height;}public void paint(Graphics g) {super.paint(g);g.setColor(Color.BLACK);g.drawRect(1, 1, width, height);}}

java 怎样 改变 数组元素的值??

对于基本类型,在方法体内对方法参数进行重新赋值,并不会改变原有变量的值。由于JAVA中,并没有指针这个语法,如果你硬是要这样做,可以用数组进行传递

请问这是什么控件(java中)

这个是TAB控件

急急急java GUI问题(2)

BorderLayout是一个用着很不方便的布局管理器 它只有那几个简单的位置 你说不改变JTextField大小 ? 好象JTextField的垂直大小是固定的吧 而水平长短是根据初始条件确定的 对于其他的组件 都有setSize()方法 这个方法是Compenont中就有定义的 只要是继承它的子类 都有这个方法

java里面GUI编程红色框里面的new是什么意思什么用法什么操作类做参数吗?

创建一个窗口对像…

一个JAVA界面的实现【200分】

人家要的是AWT做的,你们做的都是swing都不看题啊!!

JAVA中,Frame和Panel默认的布局管理器分别是什么类型?

Frame默认的是BorderLayout布局管理器Panel默认的是FlowLayout布局管理器

拜求java小程序每行解释及功能实现(急)

import java.awt.BorderLayout; import java.awt.Container; import java.awt.GridLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextField; public class JiSuan extends JFrame { /** * */ private static final long serialVersionUID = 1L; private final String[] NUMBER = { "9", "8", "7", "6", "5", "4", "3", "2", "1", "0", "+/-", "." }; /*把这些数放到NUMBER里*/private final String[] KEYS = { "/", "sqrt", "*", "%", "-", "1/x", "+", "=" }; /*把这些放到KEYS里*/private final String[] COMMAND = { "Backspace", "CE", "C" }; /*把这些放到COMMAND里*/private final String[] M = { " ", "MC", "MR", "MS", "M+" }; /*把这些放到M里*/private JButton number[] = new JButton[NUMBER.length]; /*建立一个命令控件*/private JButton keys[] = new JButton[KEYS.length]; /*建立一个命令控件*/private JButton command[] = new JButton[COMMAND.length]; /*建立一个命令控件*/private JButton m[] = new JButton[M.length]; /*建立一个命令控件*/private JTextField jt = new JTextField("0"); /*建立一个文本框*/public JiSuan() { Container container = getContentPane(); /*初始化一个容器,用来在容器上添加一些控件*/container.setLayout(new BorderLayout());/* 自定义布局*/JPanel p1 = new JPanel(); p1.setLayout(new GridLayout(4, 3)); /*新建设置布局管理器,*/ for (int i = 0; i < NUMBER.length; i++) { number[i] = new JButton(NUMBER[i]);/*循环到NUMBER数组里个数的次数*/ p1.add(number[i]); //在容器上添加控件.. } JPanel p2 = new JPanel(new BorderLayout()); p2.setLayout(new GridLayout(4, 2)); for (int i = 0; i < KEYS.length; i++) { /*循环到KEYS数组里个数的次数*/ keys[i] = new JButton(KEYS[i]); p2.add(keys[i]); //在容器上添加控件.. } JPanel p3 = new JPanel(new BorderLayout()); p3.setLayout(new GridLayout(4, 1)); for (int i = 0; i < M.length; i++) { /*循环到M数组里个数的次数*/ m[i] = new JButton(M[i]); p3.add(m[i]); //在容器上添加控件.. } JPanel p4 = new JPanel(new BorderLayout()); p4.add(p3, BorderLayout.WEST); /*宽度*/p4.add(p1, BorderLayout.CENTER); p4.add(p2, BorderLayout.EAST); JPanel p5 = new JPanel(new BorderLayout()); p5.setLayout(new GridLayout(1, 3)); for (int i = 0; i < COMMAND.length; i++) { /*循环到COMMAND数组里个数的次数*/ command[i] = new JButton(COMMAND[i]); p5.add(command[i]); //在容器上添加控件.. } JPanel p6 = new JPanel(new BorderLayout()); p6.add(jt, BorderLayout.NORTH); p6.add(p5, BorderLayout.CENTER); p6.add(p4, BorderLayout.SOUTH); container.add(p6, BorderLayout.EAST); container.add(new JButton("开发中..."), BorderLayout.CENTER); } public static void main(String[] args) { JiSuan ji = new JiSuan(); /*窗体的一些基本的设置*/ji.setTitle("窗口布局"); ji.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); ji.setSize(400, 200); ji.setVisible(true); } }

JAVA-拜托高手帮帮忙.

你运行下不就知道了

JAVA GUI编程运行后出现空白。没悬赏,太穷了。。。

你建立了 p1、p2、p3、p4、p5、p6 这些 JPanel,但是你并没有加入到 JFrame 里面啊。

Java中为何引进布局管理器,它有什么作用?请简述Java中BorderLayout布局的基本特性。

excel和word 为什么内置布局呢?一样的道理,为了用户使用方便。仅是提供了一个使用方便的解决方案。

为什么java中添加两个按钮到JFrame中只显示后一个?

应该是你没有给框架进行布局导致的Jpanel自带为流水布局

JAVA如何把界面分成上中下四个等分

您是想询问“JAVA如何把界面分成上下左右四个等分”吗?可以通过套用编程语言BorderLayout将其实现。因为BorderLayout设计出来时就说为了将上下或者左右分割,先用BorderLayout分割上下,再在其上套用BorderLayout分割左右。

用JAVA写一个计算器 要求有图形界面。简单的加减乘除,不要小数点运算。

java.swing 框架,百度一下不难虽然是个比较烂的图形框架

请问我这个Java错在哪里了

说的很清楚了 你看不懂?

java中的setLayout怎么用?

你应该清楚下布局管理器这个概念,它将GUI组件显示在容器上...主要有FlowLayout BorderLayout GridLayout,具体区别你自己查一下..他们也就是你所说的setLayout里面所涉及到的种类,你应该做的是个JApplet,它所默认的是BorderLayout,组件分为五个,南北东西中...

setLayout(new BorderLayout());这个在java中什么意思?

设置布局为边框布局,边框布局分东南西北中5个方位来添加控件。若没有指定方位,将添加到中间,上下左右都可以扩展。

java swing中frame.add(this, BorderLayout.CENTER);是什么意思?

JFrame默认是BorderLayout布局,这句是将当前类的对象实例加到frame的中间位置。你如果使用GridBagLayout,就需要GridBagContraints 限定组件的位置。
 首页 上一页  22 23 24 25 26 27 28 29 30 31 32  下一页  尾页