捕鱼达人(一)

     关于这个小游戏,所要理解的是Java面向对象的思维,封装、继承以及多态,在这里,比较突出的是Java封装的思想,作为操作者的我们,可以把这个游戏的制作看为三部分,一个是事件的地点(海),一个是事件(游动的鱼),以及事件的操作者(玩家)。

     现在先大概了解下所要用到的主要知识,先来看看怎样运用Swing。

     

package test;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class MyFirstFrame extends JFrame{
	//程序的入口,主方法
	public static void main(String[] args){
		System.out.println("Hello");
		//内存中创建了一个默认不可见的窗体对象
		MyFirstFrame frame=new MyFirstFrame();
		//设置窗体的大小 宽600px 高450px
		frame.setSize(600, 450);
		//设置窗体的标题
		frame.setTitle("我是一个窗口喔");
		//创建一个存放组件的容器 面板
		JPanel panel=new JPanel();
		//创建两个组件  按钮
		JButton btn1=new JButton("登录");//按钮
		JButton btn2=new JButton("重置");
		JTextField textFiel=new JTextField();//文本域
		textFiel.setText("please input here!");
		//将两个按钮添加到面板容器上
		panel.add(btn1);
		panel.add(btn2);
		panel.add(textFiel);
		//将存放了两个按钮的容器面板 添加到窗体上
		frame.add(panel);
		//让该窗体在桌面上可见
		frame.setVisible(true);
	}
}



      这里用到的是最基本的swing知识,只要继承JFrame,然后根据自身需要创建相关组件就行,比较简单。


      再来了解下关于多线程,线程是独立的线程,代表的是独立的执行空间,因Thread是Java中用来表示线程的类,因此,要建立线程就得创建Thread。每个java应用程序会启动一个主线程——将main()放在它自己执行空间的最开始处,下面给出两个程序作为例子。

         ThreadDemo.java

package test;

public class ThreadDemo {
	public static void main(String[] args) {
		MyThread 张三=new MyThread("吃了吗?");
		MyThread 李四=new MyThread("吃饱了?");
		System.out.println("***************");
		张三.start();
		李四.start();
		System.out.println("%%%%%%%%%%%%%%%%");
	}
}

    MyThread.java

package test;

public class MyThread extends Thread{
	String word;
	public MyThread(String word){
		this.word=word;
	}
	public void talk(){
		System.out.println(word);
	}
	@Override
	public void run() {
		while(true){
			try {
				Thread.sleep(1000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			talk();
			
		}
	}
}

所执行的结果为:


从这个小例子中可以看出,此例中有三个线程,主线程在main里面,首先执行的是主线程,打印出*和%号。再执行的是另两个线程,且“吃饱了”和“吃了吗”在打印的时候没有什么特定的规律,是两个线程随机的抢占资源,进行执行输出的。

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值