- 浏览: 313039 次
- 性别:
- 来自: 北京
最新评论
-
sunshine_bean:
多谢,帮了大忙
shell批处理中利用vi设置文件的fileformat -
2047699523:
Java压缩图片util,可等比例宽高不失真压缩,也可直接指定 ...
java 图片压缩 -
单证员:
这是几种压缩方案的一种,不存在哪个是对的哪个是错的。
java 图片压缩 -
ahcr1026212:
...
Flex DataGrid 可编辑 -
o0虫子0o:
我想问问你的注册做好没?denger写的cas的文章我都看了, ...
关于CAS实现单点登录的思考
学java 时基础知识没有学好,学到的现在也忘得差不多了,补补。
(下)不大好就不转了。
转自:http://513500795.qzone.qq.com/blog/1215508623?ptlang=2052
(下)不大好就不转了。
转自:http://513500795.qzone.qq.com/blog/1215508623?ptlang=2052
1.文件加密器 import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import java.io.*; public class FileLock extends JFrame implements ActionListener { private JMenuBar menuBar; private JMenu file; private JLabel fileName; private JButton replace,newfile; public FileLock() { super("杨明文件加密器"); menuBar=new JMenuBar(); fileName=new JLabel("请选择需要加密的文件"); file=new JMenu("File"); replace=new JButton("覆盖原文件"); newfile=new JButton("创建新文件"); init(); showFrame(); } public void init() { JMenuItem item=null; file.add(item=new JMenuItem("打开..."));item.addActionListener(this); file.add(item=new JMenuItem("退出"));item.addActionListener(this); replace.addActionListener(this); newfile.addActionListener(this); menuBar.add(file); this.setLayout(new FlowLayout(FlowLayout.CENTER)); this.add(replace); this.setJMenuBar(menuBar); this.add(newfile); this.add(fileName); } public void showFrame() { this.setSize(300,120); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); this.setResizable(false); } public void actionPerformed(ActionEvent e) { String command=e.getActionCommand(); if(command.equals("打开...")) { JFileChooser jfc=new JFileChooser(); jfc.showOpenDialog(this); try { if(!(jfc.getName(jfc.getSelectedFile())).equals("")) { fileName.setText(jfc.getSelectedFile().getPath()); } } catch(Exception ex) { } } if(command.equals("覆盖原文件")) { RandomAccessFile rafs=null; if(fileName.getText().equals("请选择需要加密的文件")) { JOptionPane.showMessageDialog(this,"请选择需要加密的文件"); } else { try { rafs=new RandomAccessFile(fileName.getText(),"rw"); int number=-1,input=0; while((number=rafs.read())!=-1) { fileName.setText("正在加密..."); input=number^10; rafs.seek(rafs.getFilePointer()-1); rafs.write(input); } JOptionPane.showMessageDialog(this,"文件加密成功!"); fileName.setText("请选择需要加密的文件"); } catch(Exception ea) { } finally { if(rafs!=null) { try { rafs.close(); } catch(IOException eb) {} } } } } if(command.equals("创建新文件")) { OutputStream os=null; RandomAccessFile rafs=null; if(fileName.getText().equals("请选择需要加密的文件")) { JOptionPane.showMessageDialog(this,"请选择需要加密的文件"); } else { try { rafs=new RandomAccessFile(fileName.getText(),"rw"); os=new FileOutputStream(fileName.getText()+".ym"); int number=-1,input=0; while((number=rafs.read())!=-1) { fileName.setText("正在加密..."); input=number^10; os.write(input); } os.flush(); JOptionPane.showMessageDialog(this,"文件加密成功!"); fileName.setText("请选择需要加密的文件"); } catch(Exception ea) { } finally { if(rafs!=null&&os!=null) { try { rafs.close(); os.close(); } catch(IOException eb) { } } } } } } public static void main(String[] args) { new FileLock(); } } 2.倒计时牌 import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; import java.util.*; public class OlympicTime extends JFrame implements Runnable { JLabel[] labels=new JLabel[9]; JPanel jp1,jp2; public OlympicTime() { super("奥运会倒计时"); labels[0]=new JLabel("距离2008年奥运会(这儿可以换别的,下面的时间对应改就OK)还有:"); labels[1]=new JLabel("00"); labels[2]=new JLabel("天"); labels[3]=new JLabel("00"); labels[4]=new JLabel("时"); labels[5]=new JLabel("00"); labels[6]=new JLabel("分"); labels[7]=new JLabel("00"); labels[8]=new JLabel("秒"); init(); showMe(); } public void init() { jp1=new JPanel(); jp2=new JPanel(); jp2.add(labels[0]); for(int i=1;i<labels.length;i++) { jp1.add(labels); if(i%2!=0) { labels.setForeground(Color.red); } } this.add(jp2,BorderLayout.NORTH); this.add(jp1,BorderLayout.CENTER); } public void showMe() { this.setSize(300,100); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setResizable(false); this.setVisible(true); } public void run() { GregorianCalendar olympic=new GregorianCalendar(2008,7,8,20,8,0); long olympictime=olympic.getTimeInMillis(); while(true){ Calendar now=Calendar.getInstance(); long nowtime=now.getTimeInMillis(); try{ Thread.sleep(1000); }catch(Exception e){ } long day=(olympictime-nowtime)/3600/24/1000; long hour=((olympictime-nowtime)/3600000)%24; long minute=((olympictime-nowtime)/60000)%60; long second=((olympictime-nowtime)/1000)%60; labels[1].setText(day+""); labels[3].setText(hour+""); labels[5].setText(minute+""); labels[7].setText(second+""); } } public static void main(String[] args) { Runnable runnable=new OlympicTime(); Thread time=new Thread(runnable); time.start(); } } 3.模拟栈 import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; public class StackFrame extends JFrame implements ActionListener { private JButton newProducer,newConsumer,stopButton; private JProgressBar progressBar; private JTextArea progressText; private JPanel jpsouth; private JScrollPane jpcenter; public final int MAX_SIZE; int count; int[] a; boolean STOP=false; public StackFrame() { MAX_SIZE=100; } public StackFrame(int size) { super("添加删除进程演示"); newProducer=new JButton("New Producer"); newConsumer=new JButton("New Consumer"); stopButton=new JButton("Stop"); progressBar=new JProgressBar(1,size); progressText=new JTextArea(); jpcenter=new JScrollPane(progressText); jpsouth=new JPanel(); count=0; MAX_SIZE=size; a=new int[size]; init(); showFrame(); } public void init() { progressBar.setStringPainted(true); progressText.append("This is the progress:\n"); jpsouth.setLayout(new FlowLayout(FlowLayout.LEFT)); jpsouth.add(newProducer); jpsouth.add(newConsumer); jpsouth.add(progressBar); jpsouth.add(stopButton); newProducer.addActionListener(this); newConsumer.addActionListener(this); stopButton.addActionListener(this); this.add(jpcenter,BorderLayout.CENTER); this.add(jpsouth,BorderLayout.SOUTH); } public void actionPerformed(ActionEvent e) { String command=e.getActionCommand(); if(command.equals("New Producer")) { STOP=false; Runnable push1=this.new Producer(); Thread stackPush1=new Thread(push1); stackPush1.start(); } if(command.equals("New Consumer")) { STOP=false; Runnable pop=this.new Consumer(); Thread stackPop=new Thread(pop); stackPop.start(); } if(command.equals("Stop")||command.equals("Start")) { STOP=true; } } public void showFrame() { this.setSize(600,500); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); this.setResizable(false); } public synchronized void push() { this.progressText.append("Push a data COUNT+"+count+"!\n"); while(count==MAX_SIZE) { this.progressText.append("The stack is full!!!("+count+" elements)"); try { this.wait(); } catch(InterruptedException e) { e.printStackTrace(); } } a[count++]=count; this.progressBar.setValue(count); this.notifyAll(); } public synchronized int pop() { this.progressText.append("Pop a data COUNT+"+count+"!\n"); while(count==0) { this.progressText.append("The stack is empty!!!("+count+" elements)"); this.progressBar.setValue(count); try{ this.wait(); }catch(InterruptedException e){ e.printStackTrace(); } } this.progressBar.setValue(count); this.notifyAll(); return a[--count]; } class Producer implements Runnable { public void run() { while(true) { if(STOP) { break; } try{ Thread.sleep(300); }catch(Exception e){ e.printStackTrace(); } StackFrame.this.push(); } } } class Consumer implements Runnable { public void run() { while(true) { if(STOP) { break; } try{ Thread.sleep(400); }catch(Exception e){ e.printStackTrace(); } StackFrame.this.pop(); } } } public static void main(String[] args) { StackFrame stackFrame=new StackFrame(100); } }
发表评论
-
获取网页所用编码
2012-02-10 18:53 0给一个url,怎么获取其网页编码? 1、根据<h ... -
基础知识一大堆之Thread:join
2012-02-03 15:14 3638相信大家看api文档是不会搞清楚join()这个方法真正意义的 ... -
(MaxProcessMemory – JVMMemory – ReservedOsMemory) / (ThreadStackSize) = Number o
2012-01-18 16:46 2944(MaxProcessMemory – JVMMemory – ... -
利用cpdetector判断文本文档的编码
2012-01-13 18:45 4214文本文档不包含文档的编码信息,然而有些时候,我们必须要获得某个 ... -
Class加载
2012-01-12 15:05 1051http://nonopo.iteye.com/blog/20 ... -
eclipse 启动不起来(不能创建VM)
2012-01-10 14:20 3584eclipse 3.7.0 在这篇文章中,有以下描述: ... -
java各种情况下读取文件时的路径问题
2012-01-09 17:14 1286jar包中: BufferedReader br = new ... -
java.io.IOException: java.io.IOException: error=24, Too many open files
2012-01-07 20:42 4953写了一个程序,用java调用本地命令,大概要调用5W+次。执行 ... -
SpringJdbc queryForList 不加查询条件
2011-11-28 15:44 9020springjdbc是个非常好用的jdbc框架,但是在编程时遇 ... -
程序中的File及其子类是以工程根目录为起点的
2010-10-15 21:28 1197如题。 好长时间没写代码了······ -
改变图片的宽和高
2010-04-18 23:34 1564自己想要实现的图片无损压缩实现不了(500W像素的图片,不知道 ... -
切割图片
2010-04-18 23:13 1454public static void main(String[ ... -
java 图片压缩
2010-03-30 19:40 35347jdk1.5之前的不支持PNG格式的图片,之后支持,下面先来一 ... -
正确理解UNICODE UTF-8等编码方式
2009-08-22 15:12 1536转载出处:http://blog.csdn.n ... -
java时间格式大全
2009-08-22 15:07 1124转载出处:http://blog.csdn.net/boy_w ...
相关推荐
以下是对20道Java初学者习题的详细解析: 1. Java源文件中最多只能有一个`public`类,这个类的类名必须与文件名保持一致。这是因为Java的类加载机制要求的。 2. 面向对象程序设计的三大特征是封装性、继承性和多态...
这个"零基础配套练习题51道完整版"涵盖了这些基础概念,通过实际的编程练习,可以帮助初学者巩固理论知识,提高实际编程能力。每一道题目都可能涉及不同的算法思想和技巧,例如: 1. **排序算法**:练习可能会要求...
这份“java试题1000道”集合涵盖了丰富的Java学习资源,包括面试题、学习笔记、习题库以及详细的答案,适合Java初学者及进阶者进行自我检测和提升。 在这些文档中,你可以找到以下关键知识点: 1. **Java基础**:...
最后,对于Java初学者,理解面向对象编程的基本原则和设计模式也是必不可少的。练习中可能会涉及到单例模式、工厂模式等常见设计模式的实现,这些模式可以提升代码的可维护性和复用性。 总之,"Java基础练习代码...
【标题】"java初学者必看。北大青鸟入门教材" 涵盖了Java编程的基础知识,是针对初学者量身定制的学习资料,尤其适合那些希望通过北大青鸟的ACCP6.0课程体系来入门Java编程的学员。北大青鸟作为知名的IT教育机构,其...
Java教程是学习编程语言的重要资源,特别是对于初学者而言,它提供了一个系统化的学习路径。本教程专注于Java的基础知识,帮助新手逐步理解并掌握这门强大的面向对象编程语言。 首先,我们要了解Java的核心概念。...
Java语言概述.pdf、Java实战习题集锦.pdf、Java考试重点汇总.docx 这是一份针对初学者的Java编程教材,旨在帮助零基础的学习者快速掌握Java编程基础,并且为应对相关考试做好准备。这份资源包含多个部分,覆盖了从...
《Java初学必看教程》是一本为Java初学者量身打造的全面指南,它深入浅出地介绍了Java编程语言的各个方面,旨在帮助新手快速掌握这门强大的编程工具。本书从Java的历史背景出发,详细讲解了Java语言的核心概念、语法...
Java编程语言是全球范围内广泛应用的面向对象的编程...书中的实例和练习题会帮助读者巩固所学知识,提升实践能力。对于"JAVA入门必看"的标签,意味着这本书是初学者不容错过的资源,能够引导他们快速进入Java的世界。
在学习Java时,练习题是必不可少的环节。通过做题,你可以加深对语法、数据结构、面向对象编程、异常处理、多线程等核心概念的理解。同时,解决实际问题的能力也会得到提升。配合书籍的习题解答,可以检查自己的理解...
Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。对于初学者而言,掌握Java基础知识至关重要。这份“Java基础模拟题”恰好为学过一年的初学者提供了绝佳的复习和检验自己技能的资源。下面...
Java编程语言的基础练习题涉及到多个核心概念,这些概念在初学者阶段是非常重要的。下面是对每个程序的详细解析: 1. **菲波拉契数列**(程序1) 菲波拉契数列是一个经典的数学问题,表示的是兔子繁殖的情况。在...
综上所述,"Java程序设计与数据结构第四章习题答案"提供的内容将涵盖上述多个知识点,通过解答这些习题,初学者能够加深对Java语言和数据结构的理解,提高编程能力,并为后续更复杂的编程挑战奠定坚实的基础。
本资源“java语言程序设计基础篇课后习题答案”针对的是第八版的《Java语言程序设计基础篇》教材,这是一本旨在帮助初学者掌握Java编程基础知识的教科书。该压缩包中的“kehou”文件可能包含了该教材各章节的课后...
这个压缩包中的资料很可能是对这些主题的详细讲解,包括实例代码、解释和练习题,帮助初学者逐步建立对Java编程的深入理解。通过系统学习和实践,你可以从一个Java新手成长为一个能够熟练解决问题的开发者。无论你是...
本资源“Java编程习题与解答”是专为Java初学者和进阶者设计的学习材料,旨在通过一系列实践性的编程习题,帮助用户巩固和提升Java编程技能。 在学习Java时,理论知识与实践操作相结合至关重要。这个资源包含的习题...
"java课件 初学者的好东东"这个标题明确指出这是一份专为Java初学者设计的学习资源,意味着它会涵盖基础概念、语法和编程实践,旨在帮助初学者扎实掌握Java基础知识。 描述中的"Java上课课件"表明这是一系列教学...
总的来说,理解和熟练运用`if`和`else`是Java初学者的必备技能,它们是构建复杂逻辑和解决实际问题的基础。通过"Java学习,if--else练习"这个资源,学习者可以加深对这一关键概念的理解,为日后的编程实践打下坚实...
在"JAVA程序设计教程》电子教案"这个文件名中,我们可以推测这是一份详细的教学材料,可能包含了实例代码、练习题和解决方案,旨在帮助学习者通过实践加深对Java的理解。教案中的每部分都可能与PPT中的章节相对应,...
在偶数号习题中,读者可能会遇到设计简单类和对象的问题,比如创建一个表示学生或动物的类,或者实现一个具有特定功能的对象。 再者,异常处理是Java编程中不可或缺的一部分。Liang可能讲解了try-catch-finally语句...