1.满天星星

  1. import java.awt.*;
  2.  
  3. public class xinxin {
  4. public static void main(String[] args) {
  5. Frame w = new Frame();
  6. w.setBackground(Color.BLACK);
  7. w.setSize(1024, 768);
  8.  
  9. MyPanel mp = new MyPanel();
  10. w.add(mp);
  11. w.show();
  12. }
  13. }
  14.  
  15. class MyPanel extends Panel {
  16. public void paint(Graphics g) {
  17. g.setColor(Color.WHITE);
  18. for (int i = 0; i < 300; i++) {
  19. g.drawString("*", (int) (Math.random() * 1024), (int) (Math.random() * 768));
  20. }
  21. }
  22. }

解析:

1.import java.awt.*;

java原生就是面向对象语言,在python这种同时具有函数式编程以及面向对象编程实现时,import加载的是包,里面是函数;而java加载的是封装好的类;java.awt是一个软件包,包含用于创建用户界面和绘制图形图像的所有分类。通过*号可以加载包里所有的类,但是在javac编译成字节码时不会全部编译awt的内容,只会编译使用的。

2 13:采用public class来声明class,那么文件名必须和类名完全一致(包括大小写);
4 12: public 可以修饰类 和方法,static 表示一个静态方法
5 :调用第一行加载Frame类,生成一个实例
6 7:设置实例的背景和大小,背景颜色在调用系统默认的Color类的静态属性;
15 22:新建 类继承第一行加载的一个类Panel;

2.移动小球

  1. package ball;
  2. import java.awt.*;
  3. public class ball {
  4. public static void main(String[] args) {
  5. Frame w = new Frame();
  6. w.setBackground(Color.BLACK);
  7. w.setSize(1024, 768);
  8. MyPanel mp = new MyPanel();
  9. w.add(mp);
  10. Thread t = new Thread(mp);
  11. t.start();
  12. w.show();
  13. }
  14. }
  15. class MyPanel extends Panel implements Runnable {
  16. // 我们 在 类 的 声明 后面 加上 implements Runnable, 叫做 实现 Runnable 接口。
  17. int x = 30;
  18. int y = 30;
  19. public void paint(Graphics g) {
  20. g.setColor(Color.WHITE);
  21. g.fillOval(x, y, 20, 20);
  22. }
  23. public void run() {
  24. while (true) {
  25. y++;
  26. if (y > 400) {
  27. y = 0;
  28. }
  29. try {
  30. Thread.sleep(30);
  31. } catch (Exception e) {
  32. }
  33. repaint();
  34. }
  35. // 图像? 要 知道 重画 是 系统 的 事情, 你 不能 在 程序 中 自己 调用, Java 提供 了 一个 repaint 方法, 发出
  36. // repaint() 的 调用, 这个 请求 将 发送 回 系统, 系统 见到 后 便会 调用 paint() 方法,
  37. }
  38. }

解析

待续

请使用手机"扫一扫"x

java实例1的更多相关文章

  1. Thrift入门及Java实例演示<转载备用>

    Thrift入门及Java实例演示 作者: Michael 日期: 年 月 日 •概述 •下载配置 •基本概念 .数据类型 .服务端编码基本步骤 .客户端编码基本步骤 .数据传输协议 •实例演示(ja ...

  2. Protocol Buffer技术详解(Java实例)

    Protocol Buffer技术详解(Java实例) 该篇Blog和上一篇(C++实例)基本相同,只是面向于我们团队中的Java工程师,毕竟我们项目的前端部分是基于Android开发的,而且我们研发 ...

  3. JAVA实例

     JAVA实例1  1 package Demo3; import java.io.File; import java.io.FileReader; import java.io.IOExceptio ...

  4. Java 实例 - 如何执行指定class文件目录(classpath) Java 实例 J

    Java 实例 - 如何执行指定class文件目录(classpath)  Java 实例 如果我们 Java 编译后的class文件不在当前目录,我们可以使用 -classpath 来指定class ...

  5. Java-Runoob-高级教程-实例-方法:15. Java 实例 – 重载(overloading)方法中使用 Varargs

    ylbtech-Java-Runoob-高级教程-实例-方法:15. Java 实例 – 重载(overloading)方法中使用 Varargs 1.返回顶部 1. Java 实例 - 重载(ove ...

  6. Java-Runoob-高级教程-实例-方法:14. Java 实例 – Varargs 可变参数使用

    ylbtech-Java-Runoob-高级教程-实例-方法:14. Java 实例 – Varargs 可变参数使用 1.返回顶部 1. Java 实例 - Varargs 可变参数使用  Java ...

  7. Java-Runoob-高级教程-实例-方法:13. Java 实例 – for 和 foreach循环使用

    ylbtech-Java-Runoob-高级教程-实例-方法:13. Java 实例 – for 和 foreach循环使用 1.返回顶部 1. Java 实例 - for 和 foreach循环使用 ...

  8. Java-Runoob-高级教程-实例-方法:12. Java 实例 – Enum(枚举)构造函数及方法的使用-um

    ylbtech-Java-Runoob-高级教程-实例-方法:12. Java 实例 – Enum(枚举)构造函数及方法的使用 1.返回顶部 1. Java 实例 - Enum(枚举)构造函数及方法的 ...

  9. Java-Runoob-高级教程-实例-方法:11. Java 实例 – enum 和 switch 语句使用

    ylbtech-Java-Runoob-高级教程-实例-方法:11. Java 实例 – enum 和 switch 语句使用 1.返回顶部 1. Java 实例 - enum 和 switch 语句 ...

  10. Java-Runoob-高级教程-实例-方法:10. Java 实例 – 标签(Label)

    ylbtech-Java-Runoob-高级教程-实例-方法:10. Java 实例 – 标签(Label) 1.返回顶部 1. Java 实例 - 标签(Label)  Java 实例 Java 中 ...

随机推荐

  1. [codevs 1961]躲避大龙(dfs)

    题目:http://dev.codevs.cn/problem/1961/ 分析: 被“SPFA”的标签骗了…… 看了hzwer的博客才知道可以用f[i][0..60]表示每个点每个秒是否可以到.至于 ...

  2. [bzoj1072][SCOI2007]排列(状态压缩DP)

    题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1072 分析:看了题解才知道,状态的设计很巧妙,用余数表示,即f[i][j]表示二进制状 ...

  3. [转] python 获取本机ip地址的两种实现方法

    #!/usr/bin/python import socket import fcntl import struct def get_ip_address(ifname): s = socket.so ...

  4. 数据结构——算法之(027)( 在O(1)时间内删除链表结点)

    [申明:本文仅限于自我归纳总结和相互交流,有纰漏还望各位指出. 联系邮箱:Mr_chenping@163.com] 题目:在O(1)时间内删除链表结点.且不知道链表头 题目分析: 1.把要删除节点的下 ...

  5. 黑马程序猿——JAVA基础——IO流

    ----------android培训.java培训.java学习型技术博客.期待与您交流!------------  一. 一.IO流的三种分类方式 1.按流的方向分为:输入流和输出流 2.按流的数 ...

  6. JQuery之操作array

    1:split 函数将字符串按某个字符分割,将分割后的结果存入字符串数组中 function SplitUsersInformation(users) { var usersArray = users ...

  7. 第十四周(OOP版电子词典)

    /* *copyright(c) 2015,烟台大学计算机学院 *All rights reserved. *文件名:第十四周(OOP版电子词典) *作者:王忠 *完毕日期:2015.6.10 *版本 ...

  8. 《Head First 设计模式》学习笔记——代理模式

    设计模式 代理模式:为还有一个对象提供一个替身或占位符以控制对这个对象的訪问. 使用代理模式创建代表对象,让代表对象控制某对象的訪问,被代理的对象能够使远程的对象(远程代理).创建开销大的对象(虚拟代 ...

  9. 微软将支持.net开源并跨平台,新特性会体现于VS2015

    http://news.microsoft.com/2014/11/12/microsoft-takes-net-open-source-and-cross-platform-adds-new-dev ...

  10. SmartSchool CC校友录V8(毕业入世版)

    SmartSchool CC校友录V8(毕业入世版) 使用说明 CC校友录V8(毕业入世版) 主要面向毕业后在某城市工作的校友,给大家构建一个充分交流的平台,“人脉”积累是本软件的功能特色,为此淡化了 ...