关于马士兵java通讯代码的信息

看了马士兵老师的坦克大战java程序,想按照自己的思路动手编一下,结果界面背景设置不了,

java 作图 不一定要继承JFrame或者Frame,但是所有的组件必须放到顶层容器,Java Swing 有三种顶层容器

创新互联建站成都企业网站建设服务,提供网站制作、网站建设网站开发,网站定制,建网站,网站搭建,网站设计,自适应网站建设,网页设计师打造企业风格网站,提供周到的售前咨询和贴心的售后服务。欢迎咨询做网站需要多少钱:18980820575

JFrame:用来设计类似于Windows系统中的窗口形式的应用程序。

·JDialog:和JFrame类似,只不过JDialog是用来设计对话框。

·JApplet:用来设计可以在嵌入在网页中的Java小程序。

而且你的代码 Kosese001既然继承了JFrame 那么他的构造就是个JFrame ,你下面又new JFrame("坦克大战");这样何必继承,直接在构造里面实现操作就可以把Kosese001中,

你的背景色没有显示出来,是由于JFrame 是顶层容器,它默认的布局会设置它的背景色,除非你在前面 加上 jfrmMain.setLayout(null);使得布局变成空布局,下面的jfrmMain.getContentPane().setBackground(Color.green); 才会生效,或者你可以通过设置JFrame上组件的背景色来完成同样的效果 比如 mypaint = new MyPaint();

mypaint.setBackground(Color.green); 还有啥不懂的 可以问我。

JAVA马士兵版贪吃蛇问题

首先new Yard() 是新建一个Yard的实例

你在Snake里new一个 在Start里又new一个

可是这条蛇是属于哪个一个Yard呢

如果按原先作法Snake s = new Snake(this)可以在new Yard的时候把自身传给对应的那条蛇

就是马老师讲的--持有对方引用 用起来很方便

********************************

如果你非得在Snake中直接new 可以按下面的改试试看吧

1. 在Snake.java里添加一个空的构造方法:

Yard y;

snake(){

.......... .........

.......... .........

this.y = new Yard();

}

2. 在Yard.java里把Snake s = new Snake(this)改成 static Snake s = new Snake();

3. 在Start.java把第一句Yard y = new Yard();换成 Yard y = Yard.s.y;

这样用的话显然很不好使

java马士兵老师里面的点

晕了..这..很基础...不过从你提的问题来看,我个人觉得很难和你讲透彻!

你的代码里面p有两个位置

double getDistance(Point p) :

这个p是一个函数参数类型的变量他指的的是Point 对象,

也就是说,你可以直接理解成一个方法里面被传入的对象p

Point p = new Point(1.0, 2.0, 3.0);//这里也有一个p,

这个p是指向一个Point实例对象

实在不好解释...你还的看看基础吧....不然我可能觉得你看不懂我在说什么!

p.x 就是p这个对象里面的x属性!

(x - p.x) 意思当前对象x-传入进来对象的x

(p.x- x ) 传入对象的x-当前对象 x

至于你说结果一样,完全取决你传什么数!


新闻标题:关于马士兵java通讯代码的信息
转载源于:http://ybzwz.com/article/dopdsgs.html