博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA进阶18
阅读量:7240 次
发布时间:2019-06-29

本文共 1687 字,大约阅读时间需要 5 分钟。

间歇性混吃等死,持续性踌躇满志系列-------------第18天

1、飞机游戏小项目

①创建窗口

1 package cn.xfj.game; 2  3 import javax.swing.*; 4 import java.awt.event.WindowAdapter; 5 import java.awt.event.WindowEvent; 6  7 //飞机游戏的主窗口 8 public class MyGameFrame extends JFrame { 9     //初始化窗口10     public void launchFrame() {11         this.setTitle("My first game");12         this.setVisible(true);13         this.setSize(500,500);14         this.setLocation(200,200);15 16         this.addWindowListener(new WindowAdapter(){17             public void windowCloing(WindowEvent e){18                 System.exit(0);19             }20         });21     }22 23     public static void main(String[] args) {24         MyGameFrame f = new MyGameFrame();25         f.launchFrame();26     }27 }
View Code

运行结果图

② 图形和文本绘制

super.paint(g);  // 调用父类的paint方法或调用下面的方法直接绘制组件

注:这个位置不加super调用会出现窗体显示不正常。

2、抽象方法和抽象方法

抽象方法:使用abstract修饰的方法,没有方法体,只有声明。定义的是一种“规范”,就是告诉子类必须要给抽象方法提供具体的实现。

抽象类:包含抽象方法的类就是抽象类。通过abstract方法定义规范,然后要求子类必须定义具体实现。通过抽象类,我们可以做到严格限制子类的设计,使子类之间更加通用。

1 package cn.zh.abstrac; 2  3 //抽象类 4 abstract class Animal{ 5     //抽象方法 6     abstract public void shout(); 7 } 8 class Dog extends Animal{ 9     //子类必须实现父类的抽象方法,否则编译错误10     public void shout(){11         System.out.println("www...");12     }13     public void seeDoor(){14         System.out.println("seedoor...");15     }16 }17 //测试抽象类18 public class TestAbstractClasss {19     public static void main(String[] args) {20         Dog g = new Dog();21         g.shout();22         g.seeDoor();23     }24 }
抽象类

运行结果图

抽象类的使用要点:①有抽象方法的类智能定义成抽象类②抽象类不能被实例化,即不能用new来实例化抽象类。③抽象类可以包含属性、方法、构造方法。但是只能用来被子类调用④抽象类智能用来被继承⑤抽象方法必须被子类实现。

 

转载于:https://www.cnblogs.com/Anemia-BOY/p/10672302.html

你可能感兴趣的文章
[置顶] 程序员的奋斗史(二十五)——情绪与生活
查看>>
Linux kernel中网络设备的管理
查看>>
反转字符串
查看>>
FusionCharts或其它flash的div图层总是浮在最上层? (转)
查看>>
[Android] Service和IntentService中显示Toast的区别
查看>>
How Tomcat Works(七)
查看>>
烟大 2239: 十进制与八进制的转换(栈和队列)
查看>>
hdu 4681(枚举+dp)
查看>>
Parallel Decision Tree
查看>>
iPhone较为基础的代码片段
查看>>
SED入门
查看>>
使用Unity3D引擎开发赛车游戏
查看>>
Mule消息路由
查看>>
[Asp.Net]状态管理(ViewState、Cookie)
查看>>
马哥 Linux运维基础进阶和shell入门
查看>>
RotateDisp – 一键旋转显示画面 - 小众软件
查看>>
C# Json处理日期和Table
查看>>
addEventListener、attachEvent、cancelBubble兼容性随笔
查看>>
JS编写日历控件(支持单日历 双日历 甚至多日历等)
查看>>
400操作 示例
查看>>