无论是身处学校还是步入社会,大家都尝试过写作吧,借助写作也可以提高我们的语言组织能力。范文怎么写才能发挥它最大的作用呢?以下是小编为大家收集的优秀范文,欢迎大家分享阅读。
java基础知识点篇1
作为就业培训,项目的好坏对培训质量的影响十分大,常常是决定性的作用。这篇文章是关于在学习java软件开发时练习项目的总结,简单总结为以下几点:
作为就业培训,项目的好坏对培训质量的影响十分大,常常是决定性的作用。这篇文章是关于在学习java软件开发时练习项目的总结,简单总结为以下几点:
1、项目一定要全新的项目,不能是以前做过的
2、项目一定要企业真实项目,不能是精简以后的,不能脱离实际应用系统
3、在开发时要和企业的开发保持一致
4、在做项目的时候不应该有参考代码
长话短说就是以上几点,如果你想要更多的了解,可以继续往后看。
一:项目的地位
因为参加就业培训的学员很多都是有一定的计算机基础,大部分都具备一定的编程基础,尤其是在校或者是刚毕业的学生,多少都有一些基础。
他们欠缺的主要是两点:
(1)不能全面系统的、深入的掌握某种技术,也就是会的挺多,但都是皮毛,不能满足就业的需要。
(2)没有任何实际的开发经验,完全是想象中学习,考试还行,一到实际开发和应用就歇菜了。
解决的方法就是通过项目练习,对所学知识进行深化,然后通过项目来获取实际开发的经验,从而弥补这些不足,尽快达到企业的实际要求。
二:如何选择项目
项目既然那么重要,肯定不能随随便便找项目,那么究竟如何来选择呢?根据java的研究和实践经验总结,选择项目的时候要注意以下方面:
1:项目不能太大,也不能太小
这个要根据项目练习的阶段,练习的时间,练习的目标来判断。不能太大,太大了做不完,也不能太小,太小了没有意义,达不到练习的目的。
2:项目不能脱离实际应用系统
项目应该是实际的系统,或者是实际系统的简化和抽象,不能够是没有实战意义的教学性或者是纯练习性的项目。因为培训的时间有限,必须让学员尽快地融入到实际项目的开发当中去。任何人接受和掌握一个东西都需要时间去适应,需要重复几次才能够真正掌握,所以每个项目都必须跟实际应用挂钩。
3:项目应能覆盖所学的主要知识点
学以致用,学完的知识点需要到应用中使用,才能够真正理解和掌握,再说了,软件开发是一个动手能力要求很高的行业,什么算会了,那就是能够做出来,写出代码来,把问题解决了,你就算会了。
4:最后综合项目一定要是实际应用系统
学员经过这个项目的练习,就要走上实际的工作岗位了,如果这个系统还达不到实际应用系统的标准,学员练习过后也还是达不到企业实际的需要,那么这个培训应该说质量就不高了。理想的状况是这个项目就是实际项目,到时候学员就业到另外一个公司,不过是换个地方干活而已,完全没有技能上的问题。
三:java怎么选择项目
这个不是靠想象,而是根据实际的情况一步一步分析出来的(呵呵要卖弄一下:这也算是逻辑思维),当然这里只是讨论方法,不涉及具体的项目案例。
我们可以采用倒推的方式来分析:
(1)最终的项目一定是真实的项目,也就是要把学员训练到能够独立开发实际应用,通常我们还不能选最简单的项目,因为学员的吸收还要有一个折扣,所以最终的项目应该选实际项目中中等难度的项目
(2)最终项目定下来过后,开始分解这个项目,看看为了达到完成这个项目需要哪些技术和知识点,以及每部分知识点的深度,然后定出每个分阶段的任务
(3)然后开始选择分阶段的项目,分阶段的项目应该比刚才分析出来的分阶段任务稍稍复杂点,这样才能达到训练的目标。定下分阶段项目后,同样去分解,定出为了完成他所需要的各部分知识点和深度。
(4)然后是选择上课期间的演示项目,演示的项目是为了做分阶段项目服务的,可以认为是分阶段项目的分阶段项目。
(5)最终把要求掌握的知识点和要求掌握的深度,分散到日常教学和练习中。
java基础知识点篇2
1.首先有玩家类,窗口类,主函数类和图片文件(.jpg)
2.然后是先行知识,创建窗口(jframe),设置窗口属性;窗口上不能直接添加组件(键盘监听等),所以先在窗口上添加容器(jpanel),将组件(keyadapter)添加到容器;
3.画出玩家:重写窗口类中的paintcomponent方法,创建graphics对象,调用drawimage方法可画图,调用drawstring方法可标注其名字
4.移动:在窗口类中创建键盘监听抽象类keyadapter(实现了接口的部分方法但无具体操作),需要重写该类的keypressed方法和keyrleased方法,赋给按键变量真值,随后将该对象添加到窗口
5.随机生成初始坐标:在开始游戏后随机给定玩家的x、y坐标,创建random对象,调用random.nextint(n)方法,n代表从[0,n)区间的随机值。
6.最后通过一个timer.schedule(匿名内部类对象,指定延迟后开始,周期)方法来实现移动效果。匿名内部类【timertask的子类,重写了run方法,包括repaint方法(实则调用paintcomponent)和yidong方法】来重画、监听键盘的指令()并作出相应动作
下面是源代码(有注释):
容器类
package a;
import javax.swing._;
import java.awt._;
import java.awt.event.keyadapter;
import java.awt.event.keyevent;
import java.util.random;
import java.util.timer;
import java.util.timertask;
import static a.newgame.frame;
//新建面板
public class war extends jpanel {
private timer timer;
private boolean sup, sdown, sright, sleft;//右飞机按键变量
private boolean sw, sd, ss, sa;//左飞机按键变量
private player1 player1 = new player1();
private player2 player2 = new player2();
private imageicon img11 = player1.img1;
private imageicon img22 = player2.img2;
@override
protected void paintcomponent(graphics g) {
super.paintcomponent(g);//此句调用父类方法进行界面重绘,恢复到某个界面,下面的步骤再画玩家;如果注释掉会有重影
//在面板上画出玩家
g.drawimage(img11.getimage(), player1.x, player1.y, 100, 100, this);
g.drawstring("p1", player1.x, player1.y);
g.drawimage(img22.getimage(), player2.x, player2.y, 100, 100, this);
g.drawstring("p2", player2.x, player2.y);
}
public void startgame() {
timer = new timer();
timer.schedule(new timertask() {//匿名内部类(timertask的子类)
@override
public void run() {//重写run()函数
repaint();//调用重写的paintcomponent来画两飞机
yidong();//并每次判断按下哪个键,然后移动
}
}, 0, 50);//安排指定的任务从指定的延迟后开始进行重复的固定延迟执行。50毫秒执行一次
}
public void yidong() {
//因为每打印一次可能用户按下一个飞机的几个键或者两个飞机的几个键,这些是都要检测到的,改成elseif后只能检测到一个键,无法实现两架飞机同时多方向移动
if (sw && player1.y > 0) {
player1.y -= player1.speed;
}
if (sa && player1.x > 0) {
player1.x -= player1.speed;
}
if (ss && player1.y
player1.y += player1.speed;
}
if (sd && player1.x
player1.x += player1.speed;
}
if (sup && player2.y > 0) {
player2.y -= player2.speed;
}
if (sdown && player2.y
player2.y += player2.speed;
}
if (sleft && player2.x > 0) {
player2.x -= player2.speed;
}
if (sright && player2.x
player2.x += player2.speed;
}
}
public void act() {
//随机生成两飞机的初始坐标
random rd = new random();
player1.x = rd.nextint(900);
player1.y = rd.nextint(700);
player2.x = rd.nextint(900);
player2.y = rd.nextint(700);
//开始游戏后获得计时器开始监听并重画
startgame();
//keyadapter是keylistener的实现类,重写了所有方法但没有具体操作
keyadapter keyadapter = new keyadapter() {
@override
public void keypressed(keyevent e) {
super.keypressed(e);
int key = e.getkeycode();
switch (key) {
case keyevent.vk_w:
sw = true;
break;
case keyevent.vk_a:
sa = true;
break;
case keyevent.vk_d:
sd = true;
break;
case keyevent.vk_s:
ss = true;
break;
case keyevent.vk_right:
sright = true;
break;
case keyevent.vk_left:
sleft = true;
break;
case keyevent.vk_down:
sdown = true;
break;
case keyevent.vk_up:
sup = true;
break;
}
}
@override
public void keyreleased(keyevent e) {
int key = e.getkeycode();
switch (key) {
case keyevent.vk_w:
sw = false;
break;
case keyevent.vk_a:
sa = false;
break;
case keyevent.vk_d:
sd = false;
break;
case keyevent.vk_s:
ss = false;
break;
case keyevent.vk_right:
sright = false;
break;
case keyevent.vk_left:
sleft = false;
break;
case keyevent.vk_down:
sdown = false;
break;
case keyevent.vk_up:
sup = false;
break;
}
}
};
frame.addkeylistener(keyadapter);
}
}
主函数类:
package a;
import javax.swing._;
public class newgame {
public static jframe frame;
public static void main(string[] args) {
frame = new jframe("逃出生天");
frame.setsize(1000,800);
//绝对布局组件位置和形状不会随窗体改变,不设置布局管理器就可以使用setbounds()来控制位置
frame.setlayout(null);
//设置窗体关闭程序自动关闭
frame.setdefaultcloseoperation(windowconstants.exit_on_close);
//窗体居中显示
frame.setlocationrelativeto(null);
//添加主面板
war war = new war();
frame.add(war);
//设置面板大小
war.setbounds(0,0,1000,800);
//设置主面板可见
frame.add(war);
frame.setvisible(true);
war.act();
}
}
1234567891011121314151617181920212223242526
玩家类:
玩家1
package a;
import javax.swing._;
public class player1 {
public int x;
public int y;
public int speed = 50;
public imageicon img1 = newimageicon("d:\\program_files\\jetbrains\\workspace_idea\\src\\a\\plane.jpg");
}
12345678910
玩家2
package a;
import javax.swing._;
public class player2 {
public int x;
public int y;
public int speed = 50;
public imageicon img2 = newimageicon("d:\\program_files\\jetbrains\\workspace_idea\\src\\a\\plane2.jpg");
}
做成一个桌面小游戏:
点“+”号
选好主函数类后点ok
然后点build中的build artificts
选择jar包点build即可
然后jar包就在你的workspace生成了,找到它发送桌面快捷方式,更改图标名字即可
图片转换成图标的网站附上
java基础知识点篇3
java学起来很有趣,通过学习java可以提高自己的逻辑思维能力。在学习java期间我们做了一些程序,我们班的同学也都积极准备,完成的还不错!在做程序时,我遇到了一些难题,有时也会出现错误,耐心的调试解决问题,我知道只有坚持下去才会成功。
因为java是一种面向对象的编程语言,刚接触java的人可能会感觉比较抽象,不过没关系不用着急,上课的时候认真听老师讲解,一些概念知识慢慢去理解,课后多做练习,熟能生巧,哪怕是你的记性再好,课后不去强化练习也没用,只有多练了,当你在做项目时你才能很熟练的写出你想要代码。平日在练习时若遇到不会的题目或是在项目中遇到解决不了的问题,首先不要急着去问老师,或是急着上百度搜答案,那样即使你得到了正确答案,以后在其它地方遇到同样的问题,你还是不知道怎么解决!
我觉得把java学会的关键一点就是坚持练习。学习java时每天必须保证一定量的练习,我们老师也说学习编程语言没有捷径可走。真的,只有每天反复操作了,经常写代码了,我们在遇到问题时才有一定的思路。欲速则不达,学习编程语言需要一个比较漫长的阶段,不能一步登天,这需要一个过程,在这个过程中慢慢积累经验,扎实基础。不要以为写出了一个简单的小程序,就认为自己已经学的很好了,这只不过是在你学习编程过程中一个小小的实践。不要满足于现状,要不断完善自己的知识体系,善于总结实践经验。要端正自己的学习态度,是主动去学,而不是被动!提高自学能力。学习编程的秘诀是:编程、编程、再编程。不仅要多实践,而且要快实践。另外好多软件需要到英文网站下载,你要能够找到它们,这些是最基本的要求。英语好对你学习有很大的帮助。
学习java这段时间,有时候会觉得有点苦,但是我觉得正是有了你奋斗时的苦,才能换来学成后的甜。当你经过认真写代码做完一个项目时,你会有一种成就感。心里有一种说不出的喜悦之情。
学习java靠得是韧劲,靠得是拼劲,靠得是坚持不懈。如果做好了这几点,我想java对你来说不会太难。还有,你自己要有信心,相信自己能学会。
java基础知识点篇4
终于搞定了这份实训报告,受益匪浅啊!一开始想做计算器那个课题,原因很简单,就是因为我感觉那个课题很简单,在百度里一搜就搜到了一模一样的源程序。只是感觉没什么意思,那个界面也不是很好看,又不好玩。所以就做了现在这个猜数游戏。一直想编个游戏程序,于是就到网上去搜代码,一下子就搜到了,而且代码很少,简单易懂。程序是弄好了,那么简短的程序写起报告就犯难了!不得不把程序再添加些模块,充实充实。
这也让我感觉实训远比想像的难度大,不是网上随便搜一下就可以交差的!不仅需要自己看懂代码,还需要根据自己的需要添加模块,充实代码。
从网上搜的代码都是字符界面的,老师说既然字符界面的没挑战性,那就做图形界面的好了。做图形界面就有点犯难了,首先没有什么程序可以参照了,必须自己充分理解字符界面的源代码,然后逐步修改完善。
我依据课本上的gui章节设计了此次的java简单程序,基本实现了课题的要求,还添加了图片以增加视觉效果,以及确定按钮方便用户确定输入数字。
通过这次实训我的体会归纳为以下4点:
1、态度第一。摆正自己的心态,不要以为什么东西上网搜搜就可以了,一定要有自己的东西。只有自己付出过,当程序运行成功时的那种喜悦才会令自己有一种莫名的自豪感。态度决定一切!
2、兴趣是关键。我的学习完全是兴趣导向的,所以压力并不大。因为有兴趣,所以我会很想充分理解一切细节。又因为理解,所以许多原本片片断断的知识都可以渐渐互相融会贯通,累积技术能量,理论和实务之间的藩篱被打破了,学习效率倍增。学习并快乐着!
3、敢于挑战。不安于现成的程序,要敢于用多种方法实现一个目的。现在的网络科技很发达,想要一个源程序的确很简单,所以很多人都是在自己都不明白题目要求时,就可以在网上搜到一模一样的代码,根本没有自己的东西。挑战自我是项艰巨的任务。只有坚持自己多看代码多写程序才会有更多的收获。
4、不懈追求。要对源代码进行不断地完善,要尽可能地实现课题所要求的功能。对初学者来说,大量地写程序是必要的,但过了某个阶段之后,写程序所带来的技术能力成长已经到了极限,还不如多花一点时间看书,学新技术和新观念。可以从实现源程序功能着手,比如添加写模块啊什么的,实现更多功能。看着自己编的程序能成功运行,这样自己会更感兴趣,也就会乐此不疲。
java基础知识点篇5
在上学期的最后一周和本学期的第一周,我和同组的学员在学校机房进行了java暑期实训,现在已经结束了。
回首上学期的java学习,重点还是在学习概念等一些常识性的东西,application应用程序和applet小程序,它的开发工具、数据类型、变量、接口、输入输出流等。学会分析异常,抛出异常,后期主要是小程序运用,gui界面设计和事件。我觉得这两种程序结构有很大的不同,不管是体系结构还是运行方式,都有很大的区别,而我主要偏向于小程序的学习。因为我感觉它实用性比较大,可以做出很多不错的游戏、运用程序等,而且它比较灵活。当然学知识不能仅凭自己的爱好和一时兴趣,要一步一个脚印、认认真真、踏踏实实,理论与实践相结合。在掌握课本实例和内容之后,要有一定的扩展阅读和课外学习,充分全面的了解java的应用和扩展运用。在我所学的语言当中,我自认为java是一门比较强大的面向对象编程语言。不仅仅因为它的跨平台性,更多的是因为它的灵活多变和实用性,而且它比较的经典和强悍。
这次实训,面对老师布置的任务,一开始有些慌张和无措。不过,事后我首先想到这和课本上的某些知识具有结合点,回忆和分析了老师教过的算法和具体实施方法,并综合考虑了其他的方面。在编写时,一个小小的符号、一个常量变量的设定,这都无不考量着我的细心和严谨。所以学习java,不仅对我们以后学习其他语言有很大
的好处,而且也让我们知道了和理解了作为一个编程人员首先应具有的良好心理素质,那就是冷静思考和专心致志。
在此次实训中,我意识到一个好的编程人员要善于沟通和团结拼搏。实训结束后,我觉得要学好一门计算机语言必须牢记以下几点:
1. 态度第一 2.兴趣是关键 3.敢于挑战 4.不懈追求
实训结束了,大家都有一种解脱的感觉。当然我想自己更多的是兴奋和一点点的成就感。现在我觉得,学习java要不断的复习和运用,做到举一反三,将所学知识充分融入到平时的学习生活中去,从而为以后的工作打好坚实的基础。感谢学校和老师能够为我们提供这次机会,让我们更好的掌握和了解java这门语言。
通过这次实训,我真的从中学到了很多东西。我对这个介于人类与非人类之间的计算机编程语言有了较上学期更进一步的认识。其间开心过、郁闷过、无奈过、彷徨过……随着实训的圆满成功与实验报告的顺利完成,有点微微的自豪感使人难忘。至于我做的程序,还不是很完善,所以我将一直去完善它,不断地学习下去。伴随着学习的深入,我发现高深的东西还有很多很多,等待着我自己去发掘。对于java语言,我会更加努力。