
正文
打java代码直接抄 java代码打好了怎么运行
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
请指点JAVA的学习方法
很多网友问我学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是我却很愿意将?
自己学习的一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!?
要想学好Java,首先要知道Java的大致分类。我们知道,自从Sun推出Java以来,就力图?
使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,?
这也就是Sun?ONE(Open?Net?Environment)体系。J2SE就是Java2的标准版,主要用于桌?
面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Jav?
a2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。J2SE开发?
桌面应用软件比起VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初?
学者来说,好象又有点深奥,而且一般开发者很难有开发环境。所以现在应用最广泛又?
最好学的就是J2EE了。J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,Java?
Mail等。要学习起来可不是一两天的事。?
那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟?
悉了吗?然后再从JSP学起。如果你学过HTML,那么事情要好办的多,如果没有,那你快?
去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP?
。然后你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户?
端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全?
取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的?
,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中?
嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?还好,SUN提供了Javabean?
可以把你的JSP中的Java代码封装起来,便于调用也便于重用。接着就是EJB了,EJB就是?
Enterprise?JavaBean,看名字好象它是Javabean,可是它和Javabean还是有区别的。它?
是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(?
也就是我们常听到的Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程?
序代码量很少,大部分工作都在设计和配置中间件上。至于JDBC,就不用我多说了,你?
如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子?
邮件的程序,你就得看看Javamail了。?
好了,对Java和J2EE有了一些基本概念之后,你就应该编一些程序了,千万不要纸上谈?
兵哦。最好找一些有实例且带光盘的书来看,这样看到好的程序就可以直接Ctrl+C再Ct?
rl+V,也不用劳您老大架再亲自把它?再输一遍吧,再说直接复制还不用怕出错,何乐而?
不为呢!还有就是要经常上一些好的Java编程文章,有好的文章要Cut下来,有问题尽管?
问,只要问题不是太傻,一般高手都会回答你的。下面介绍几个好的Java方面的编程网?
站:?
CSDN论坛??中国最有名的技术论坛,《程序员》杂志就是他们出?
版的,你可以在上面提出问题,马上就有人回答你,如果你觉得好,你可以给那人加分?
;?
Java研究组织?上面有很多原创文章,高手还是挺多的;?
?
Java开发者??那里Java资料比较全;?
java.com.cn??看这域名就知道有多牛,注册用户快接近一万?
了,同时在线人数也在一千左右,人气很旺的;?
IBM的开发者网络?
永远的蓝色巨人;?
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?
?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知?
道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除?
了一些散乱的代码之外,可能再没有别的东西了吧!你现在最缺的是实际的工作经验,?
而不是书本上那些凭空想出来的程序。所以你快去找一份Java的编程工作来做吧(如果?
是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公?
司里碰到一个高手,而且他还愿意不厌其烦地教你,这样好象有点难哦!?
还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合?
理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(?
对不起,偶最近《金装四大才子》看多了)。学Java必读的两个开源程序就是Jive和Pe?
t?Store。Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多?
先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访?
问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平?
时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用?
户的感受,这就是我们与国外软件的差距所在)。Jive的资料在很多网站上都有,大家?
可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后?
就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员?
关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本?
—J道。Jive(J道版)是由中国Java界大名鼎鼎的banq在Jive?2.1版本基础上改编而成,?
全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发?
团队在不断升级。你可以访问banq的网站?去下载。Pet?Store(?
宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威?
性,想学J2EE和EJB的朋友不要错过了。有意思的是,Pet?Store还经常作为各大J2EE厂?
商的产品性能的比较标准,就连微软也曾作过一个Pet?Store试图证明.NET性能比J2EE优?
越,可见Pet?Store的例子有多么深入人心。?
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一?
个项目经理,号称Java很简单,只要三个月就可以学会。其实说这种话的人就如当年小?
日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了?
Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。设计模式是高级?
程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的?
是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧,让你能够真正?
掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计?
模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。关于设计模式的资料,还?
是向大家推荐banq的网站?,他把GOF的23种模式以通俗易懂的方?
式诠释出来,纯Java描述,真是经典中的经典。有时间再研究一下MVC结构(把Model-V?
iew-Control分离开的设计思想)吧,现在很流行的Structs就是它的一种实现方式,不?
过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC?
结构。然后你再研究一下软件Refactoring(重整)和极限XP编程,相信你又会上一个台阶?
。?
做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,?
再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作?
室吧,你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑?
周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的来?
了。。。。。。?
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业?
做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的?
程序员分散在各地却同时开发同一个软件,是不是很有意思呢??
下面介绍两个好的开源项目网站:?
湖北省软件公共开发平台?
共创联盟?
哇,好高兴哦,我终于成为高手了!非也,非也。古人云:“识时务者为俊杰”。你知?
道计算机界现在的发展形势吗?你知道微软的.NET蓝图和SUN?ONE计划之间的明争暗斗吗?
?你知道计算机技术将向何处发展吗?其实从各大计算机厂商最近的动作,都可以看出来“?
Web服务将是下一代互联网应用的制高点”,而微软的.NET蓝图和SUN?ONE计划的斗争焦?
点,也就是Web服务。Web服务就是一个崭新的分布式计算模型,它是一系列标准的综合?
(XML,SOAP,UDDI,WSDL和WSFL等)。它使得不同语言编写的软件能够轻易的集成起来,?
使网络资源和Web站点变成一种服务而不是混乱的垃圾场。不远的将来,我们就可以在家?
里点击一下鼠标,就可以完成出门旅游的全部准备工作,包括定飞机票,定旅游线路,?
定好房间等。请注意,这所有的一切都是Web站点间自动完成的,再也不用象现在一样,?
表面上是电子商务,实际上很多环节都是人工操作。也许你会觉得这是天方夜谈,不过?
就近的说,你也很有可能承接一个项目,要集成两个企业的ERP系统。很有可能上游企业?
的系统是用Dephi编的,而下游企业的系统是用Java编的。你说你是Java高手,大家都看?
者你怎么做呢。所以啊,你还得学习新技术,如Web服务,而且你Dephi也要懂一点吧(?
Dephi6现在已经提供Web服务的控件了)。?你编的Java系统,可能要和.NET集成,所以?
你.NET要懂一点吧?到最后,你可能发现你已经成为Java高手了,但很多时间却在搞别?
的技术。太极张三丰里说,最厉害的招式就是没有招式,可能就是这个道理吧!?
因为刚刚兴起,所以网上Web服务的资料不是很多,我还是给大家推荐几个网站吧:?
中国UDDI技术联盟?
CSDN的柴晓路专栏?(?
注:柴晓路也是互联网上一个有名的人物,他发表过很多关于Web服务的文章,还出了一?
书,应该称的上是中国Web服务技术的先行者)?
IBM的开发者网络的XMLWeb?Service专栏:?
可是Web服务?
的力推者?
呜…你费劲千心万苦,总算成为Java高手了,怎叫人不由喜极而泣呢!是啊,真不容易?
,真不简单,真叫人感动啊!那么打个电话告诉我吧,什么?我的电话号码是多少?昏?
到,你打电话问不就知道了吗,真是的……?
相关问答
Q1: java课程设计的代码都是不是自己写的,还是抄网上的?两者哪个占的多些?我觉得老师只讲了基本语法
对于真正学会编程的人,大作业只是需要一点时间而已,没什么难度。
对于完全没入门的人,抄都不会抄。
学编程,只是需要一点兴趣驱动,自己完全就可以自学了。
Q2: java中五角星怎么用代码去打
=========以下代码抄的
import java.awt.*;
import javax.swing.*;
public class WuJiaoXing extends JPanel {
private static final long serialVersionUID = 1L;
private JFrame frame = null;
private int r = 150; // 外顶点外接圆半径
private int[] x = new int[5]; // 5个X外顶点坐标
private int[] y = new int[5]; // 5个Y外顶点坐标
private int[] x_ = new int[5]; // 5个X内顶点坐标
private int[] y_ = new int[5]; // 5个Y内顶点坐标
public WuJiaoXing() {
this.math();
frame = new JFrame("五角星");
frame.getContentPane().add(this);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500,500);
frame.setLocation(200, 200);
frame.setVisible(true);
}
private void math() {
int c = 360 / 5; // 角度
for (int i = 0; i 5; i++) {
x[i] = (int) (Math.cos(i * c * Math.PI / 30 - Math.PI / 2) * (r) + r);
y[i] = (int) (Math.sin(i * c * Math.PI / 30 - Math.PI / 2) * (r) + r);
}
int r_ = (int) (r * Math.sin(18 * Math.PI / 180) / Math
.sin(126 * Math.PI / 180)); // 内顶点外接圆半径
for (int i = 0; i 5; i++) {
x_[i] = (int) (Math.cos((i * c + 18) * Math.PI / 30 - Math.PI / 2)
* (r_) + r);
y_[i] = (int) (Math.sin((i * c + 18) * Math.PI / 30 - Math.PI / 2)
* (r_) + r);
}
}
public void paint(Graphics g) {
super.paint(g);
g.setColor(Color.YELLOW);
// g.setBackground(Color.RED);
// 填充
int[] x1 = { x[0], x[2], x_[2] };
int[] y1 = { y[0], y[2], y_[2] };
int[] x2 = { x[1], x[3], x_[3] };
int[] y2 = { y[1], y[3], y_[3] };
int[] x3 = { x[2], x[4], x_[4] };
int[] y3 = { y[2], y[4], y_[4] };
g.fillPolygon(x1, y1, 3);
g.fillPolygon(x2, y2, 3);
g.fillPolygon(x3, y3, 3);
// 描边
// g.setColor(Color.BLACK);
// g.drawLine(x[0], y[0], x[2], y[2]);
// g.drawLine(x[0], y[0], x[3], y[3]);
// g.drawLine(x[1], y[1], x[3], y[3]);
// g.drawLine(x[1], y[1], x[4], y[4]);
// g.drawLine(x[2], y[2], x[4], y[4]);
// g.drawLine(x[2], y[2], x[0], y[0]);
}
public static void main(String[] args) {
new WuJiaoXing();
}
}
第二种,用控制台
class Pentagram {
private final char FILL_CHAR; // 填充字符
private final char SPACE_CHAR; // 空档字符
private final int R; // 五角星的外接圆半径
private final float ROTATION; // 五角星逆时针旋转角度
private final int X; // 用于生成画图数组
private final int Y; // 用于生成画图数组
/**
* 构造一个Pentagram对象
*
* @param radius
* 五角星的半径
* @param rotation
* 五角星的逆时针旋转度数
* @param spaceChar
* 画布上空白处填充字符
* @param fillChar
* 画布上线条部分填充字符
*/
public Pentagram(int radius, float rotation, char spaceChar, char fillChar) {
this.R = radius;
this.ROTATION = rotation;
this.FILL_CHAR = fillChar;
this.SPACE_CHAR = spaceChar;
this.X = 2 * R + 1;
this.Y = 2 * R + 1;
}
public char[][] getPentagram() {
char[][] canvas = initCanvas();
Draw draw = new Draw(FILL_CHAR);
// 设五角星的最右边的一个点为 A,逆时针选取点 B~E
// 通过圆的极坐标公式可以得出:
// 得出以下各点的坐标
// A 点坐标(0.951R, 0.309R)
// B 点坐标(0, R)
// C 点坐标(-0.951R, 0.309R)
// D 点坐标(-0.588R, -0.809R)
// E 点坐标(0.588R, -0.809R)
// 画线段CA
draw.drawLine(mcos(162) * R, msin(162) * R, mcos(18) * R, msin(18) * R, canvas);
// 画线段DA
draw.drawLine(mcos(234) * R, msin(234) * R, mcos(18) * R, msin(18) * R, canvas);
// 画线段CE
draw.drawLine(mcos(162) * R, msin(162) * R, mcos(306) * R, msin(306) * R, canvas);
// 画线段DB
draw.drawLine(mcos(234) * R, msin(234) * R, mcos(90) * R, msin(90) * R, canvas);
// 画线段BE
draw.drawLine(mcos(90) * R, msin(90) * R, mcos(306) * R, msin(306) * R, canvas);
return canvas;
}
// 在方形的字符数组中指定两点画线条
// 对图形数组进行初始化,填充空格
private char[][] initCanvas() {
char[][] canvas = new char[Y][X];
for (int i = 0; i Y; i++) {
for (int j = 0; j X; j++) {
canvas[i][j] = SPACE_CHAR;
}
}
return canvas;
}
// 根据角度求正弦值,保留两位小数
private double msin(float a) {
return ((int) (Math.sin(Math.toRadians(a + ROTATION)) * 100)) / 100.0;
}
// 根据角度求余弦值,保留两位小数
private double mcos(float a) {
return ((int) (Math.cos(Math.toRadians(a + ROTATION)) * 100)) / 100.0;
}
}
class Draw {
private char fillChar;
public Draw(char fillChar) {
this.fillChar = fillChar;
}
/**
* 根据两个点画线在二维字符数组上画线
*
* @param x1
* @param y1
* @param x2
* @param y2
* @param canvas
*/
public void drawLine(double x1, double y1, double x2, double y2, char[][] canvas) {
int radius = (canvas.length - 1) / 2;
// 从 x 方向进行填充
if (x1 x2) {
double t = x1;
x1 = x2;
x2 = t;
t = y1;
y1 = y2;
y2 = t;
}
// 获得直线方程的两个系数
double a = (y1 - y2) / (x1 - x2);
double b = y1 - a * x1;
// 根据 x 方向的值求出 y 值,并填充图形
for (int i = (int) Math.round(x1); i = (int) Math.round(x2); i++) {
// 根据直线方程 y = ax + b,求 y
int y = (int) Math.round(a * i + b);
// 因为 y 和 i 算出来的结果有可能是负数,
// 为了采用数组来表示坐标,做了以下变换
// c[R][R] 即为坐标原点
// c[R][0..R] 为 x 方向的负半轴
// c[R][R+1..2*R] 为 x 方向的正半轴
// c[0..R][R] 为 y 方向的正半轴
// c[R+1..2*R][R] 为 y 方向的负半轴
int yy = radius - y;
int xx = radius + i;
yy = yy 0 ? 0 : yy;
yy = yy 2 * radius ? 2 * radius : yy;
xx = xx 0 ? 0 : xx;
xx = xx 2 * radius ? 2 * radius : xx;
canvas[yy][xx] = fillChar;
}
// 从 y 方向进行填充,便于减少间距问题产生的字符空档
if (y1 y2) {
double t = x1;
x1 = x2;
x2 = t;
t = y1;
y1 = y2;
y2 = t;
}
// 根据 y 方向的值求出 x 值,并填充图形
for (int i = (int) Math.round(y1); i = (int) Math.round(y2); i++) {
// 根据 x = (y - b) / a,求 x
int y = (int) Math.round((i - b) / a);
int yy = radius - i;
int xx = radius + y;
yy = yy 0 ? 0 : yy;
yy = yy 2 * radius ? 2 * radius : yy;
xx = xx 0 ? 0 : xx;
xx = xx 2 * radius ? 2 * radius : xx;
canvas[yy][xx] = fillChar;
}
}
/**
* 将画完图之后的画布输出到控制台上
*
* @param canvas
*/
public static void printCanvas(char[][] canvas) {
for (int i = 0; i canvas.length; i++) {
for (int j = 0; j canvas[i].length; j++) {
System.out.print(canvas[i][j]);
}
System.out.println();
}
}
}
public class Test {
public static void main(String[] args) {
// 画一个半径为10,旋转为0,空白为全身空格,填充为★的五角星
Pentagram pen = new Pentagram(10, 0, ' ', '★');
// 在控制台上输出这个五角星
Draw.printCanvas(pen.getPentagram());
}
}
注:其中Pentagram pen = new Pentagram(10, 0, ' ', '★');
10是半径,0是旋转度,' '是以空格表示空格,★是打印的字符。可以自己改
Q3: 我装了JAVA 我在命令提示符里面 输入java 可以.但是输入javac就不行了.
很多人不能够很好打java代码直接抄的进行JAVA编程,原因就在于对JAVA运行环境的不了解或是了解得不够透彻。如果连一个普通的JAVA程序运行环境都搭建不好。就更不要说理解J2EE的运行环境搭建了。故本文首先介绍如何搭建普通JAVA程序的运行环境,再介绍如何在这个基础上进一步搭建J2EE运行环境。
一、什么是JDK?
学JAVA的人都应该知道SUN公司的JAVA 技术平台按其应用环境的不同有三个非常著名的版本,他们是J2SE(用于普通桌面应用程序的开发),J2EE(用于企业级应用程序的开发)和J2ME(用于移动设备及其他消费类电子产品的应用程序开发),SUN公司为这三个版本分别提供了相应的开发工具包(SDK:SoftWare Development Kits),下载的网址在,不过可能因为全世界太多人登录的原故,网页经常出现打不开的现象,其实大家在国内一些常用的资料下载网站同样可以DOWN到这些工具包的。在此不一一列举了。顺便提一下J2SE和J2EE目前最新的SDK版本是:
● J2SE 5.0 JDK
● J2EE 1.4 SDK
值得一提的是我们通常所说的JDK工具包指的是J2SE的SDK。目前一般学习者用得最多的也就是这个工具包了。大家还要注意一点,SUN公司为不同的操作系统提供了不同的JDK文件,而且这些文件又有脱机版(OFFLINE)与在线安装版(ONLINE)之分,所以在下载的时候要注意选择正确的文件。
那么JDK这个工具包里到底有些什么东东呢?其实这里面包括了JAVA程序的开发工具(JAVAC命令等)、运行环境(JAVA命令等)和核心类包。可想而知要想运行JAVA程序。就必须安装好JDK工具包。
二、如何安装JDK?
当我们从网络上DOWN下J2SE 5.0 JDK以后(是一个可执行文件,文件名叫做jdk-1_5_0-windows-i586.exe,当然这个名字会因为对应操作系统的不同而有所区别的,我使用的操作系统就是WINDOWS,大家发现了吗?),双击他就开始安装了。需要注意的就是选择安装路径的问题,通常我们将它安装在C盘根目录下(这也是安装程序默认的路径),其他的工作就是一个接一个地按NEXT啦。
三、搭建运行和开发环境
是不是当我们装完JDK以后就可以编写代码,准备编译运行了呢?别忙。大家还是跟着我一起检查一下吧:
1、 点击操作系统桌面上左下角的‘开始’菜单,选择‘运行’,然后在打开对话框里输入CMD,看到了吧,我们进入了命令提示符窗口,我们爱叫他DOS界面。
2、 现在大家在窗口里应该看到提示符了吧,通常会是这样:C:\Documents and Settings\Administrator
3、 下面让我们在提示符后面敲上这样一个命令:JAVA,出现了这样的提示了吗?
Usage: java [-options] class [args...]
(to execute a class)
or java [-options] -jar jarfile [args...]
(to execute a jar file)
……
这是JAVA命令的帮助信息,如果有,那么成功一半了。
4、 接下来,继续试一下:在命令提示符处敲:JAVAC。同样也出现了JAVAC的命令帮助提示了吗?我想应该没有吧。打java代码直接抄你看到的也许会是这样: ‘javac’不是内部或外部命令,也不是可运行的程序或批处理文件。
为什么出现这样的情况呢?
这是因为我们的操作系统在执行一个命令时,首先会到当前目录下去查找这个命令文件。如果在当前目录下找不到,他就会按照系统变量PATH所指示的多条路径里去搜索,直到找到为止。如果在这两个地方都找不到他就会报上面大家看到的错误。
在C:\Documents and Settings\Administrator这个路径下我们当然找不到JAVAC命令啦。我们的JDK不是安装在C盘根目录下吗?而我们的JAVAC、JAVA命令则在JDK目录下的BIN文件夹里,这个夹子里还有许多其他宝贝命令。如下图所示:
怎样才能让操作系统找到JAVAC命令呢?很简单!我们需要修改一下系统变量PATH,这样就不用每次要运行这个命令时都得跑到C:\j2sdk1.4.2_02\bin这个路径下面去了。怎样修改PATH,我们在第四个专题里来介绍。
5、 当我们在PATH变量里加了一条路径:C:\j2sdk1.4.2_02\bin以后,再到命令提
示符状态下输入JAVAC,就会出现帮助提示了。这就说明我们可以开始写JAVA程序了。
6、 让我们写一个Hello.java测试一下吧,我在E:\LESSON1这个文件夹下创建
了一个文本文件,输入如下一段代码,并且将之保存为Hello.java。
public class Hello
{
public static void main(String args[])
{
System.out.println("Hello World!");
}
}
7、 好现在我们又回到命令提示符状态下。在提示符处输入:JAVAC Hello.java,命
令又出错了。为什么?因为文件是建在E:\LESSON1下面,而我们的当前目录却不是它。在提示符处敲入:‘E:’,然后再敲:‘cd lesson1’,进入JAVA文件所在的那个目录后,现在再敲JAVAC Hello.java,文件成功编译。注意成功编译后会在当前目录下生出一个名叫:Hello.class的字节码文件。但是屏幕上没有任何提示。
8、 再试着运行一下‘java Hello‘这个命令,可以运行吗?当然不行。为什么,
因为我们的字节码文件是在JAVA虚拟机里运行的,所有关于虚拟机要使用的字节码文件的路径必须在一个叫做CLASSPATH的操作系统变量里找得到。否则我们的虚拟机就无法找到这个字节码文件,从而也就无从执行了。
9、 怎么办?先运行如下命令:set classpath=%classpath%;E:\lesson1,然后再运
行 java Hello 这个命令。屏幕上终于出现了亲切的问候:Hello world!
不过奇怪的事情又发生了。当我们重新启动一个命令提示符窗口再运行这个JAVA文件时,又无法执行了,屏幕提示:Exception in thread "main" java.lang.NoClassDefFoundError: Hello。还是老问题,虚拟机又找不到字节码文件了。WHY?其实我们在DOS窗口中设置的系统变量只对当前窗口有效。要想让我们的变量设置对任何一个DOS窗口都有效,还得到桌面上去做。我们仍然将在第四个专题里讲述CLASSPATH这个JAVA环境变量的设置。
四、PATH系统变量与CLASSPATH环境变量的设置
为什么需要设置PATH和CLASSPATH变量我们在前面的专题已经介绍过了。下面我们讲一下具体如何设置:
1、 右键单击我的电脑,选‘属性’菜单,在弹出的对话框里选择‘高级‘选项卡。然后在高级选项卡页按下‘环境变量’按钮。
2、 在弹出的环境变量窗口里我们将会看到它分为两个部分。一部分是谁谁用户的变量,如:Administrator的用户变量。一部分是系统变量。通常情况下我们在命令提示符下能够使用的变量数目是用户变量+系统变量数目之和。那我们不管用户变量。直接到系统变量格里去寻找PATH变量吧。通常情况下系统装好后PATH变量在这里是早就存在了的。但是CLASSPATH变量则没有。
环境变量窗口见图示:
3、 找到PATH变量后,双击这个变量名称后,将会弹出编辑系统变量窗口。将光标停到变量值对话框的最后,然后加上‘打java代码直接抄;C:\j2sdk1.4.2_02\bin ’。注意分号后的路径就是JAVA和JAVAC命令所在的路径。见图示:
4、 找不到CLASSPATH变量该怎么办呢?很简单。按下系统变量框下的新建按钮。然后在弹出的新建系统变量对话框里输入你要加的变量名称:CLASSPATH,在变量值对话框里输入你要运行的字节码文件所在的路径。如图示:
大家在以后的学习中会发现,只要是虚拟机运行所需的字节码文件(即类文件),包括SUN公司提供给我们的类。都需要将这些文件所在的路径放到CLASSPATH下。否则,程序在编译过程中会经常找不着所需要的类包。那可是很头疼的事。比如说:JDK安装目录下的LIB目录下就有许多*.jar文件。当我们的程序要使用到这些压缩文件里的类时,就需要把这些文件所在的路径加到CLASSPATH里,比如说:C:\j2sdk1.4.2_02\lib\dt.jar。
注意添加*.jar包和直接添加*.class文件的路径是有一点小小区别的,前者要包含JAR包的名字。而后者只需文件路径。
五、J2EE运行环境的搭建
开发企业级的应用程序需要搭建好J2EE的运行环境。其实也就是到SUN公司的网站上去DOWN下J2EE 1.4 SDK开发工具包。然后双击安装文件,如果你下载的版本与我的一样。那么这个安装文件就会是这个名字:j2eesdk-1_4-dr-windows-eval.exe。同样的我们也将J2EE SDK安装在C盘根目录下。
需要特别提醒大家的是:J2EE运行环境的搭建是以J2SE运行环境的搭建为基础的。其实想也想得到为什么。如果没有JDK,哪里来的编译和运行命令呢(JAVA和javac)。安装完J2EE 1.4 SDK包后,具体的设置与测试步骤如下:
1、 首先右往PATH变量里添加J2EE SDK的BIN目录。如:C:\j2sdkee1.3.1\bin。如何往里面添加,前面已经讲过。
2、 然后新建两个变量:一个是JAVA_HOME,变量值为:JDK的安装目录。另一个是J2EE_HOME,变量值为J2EE SDK的安装目录。如图示:
3、 最后往CLASSPATH变量里添加一个关键的JAR包。它就是J2EE.JAR包。比如我添加的就是:C:\j2sdkee1.3.1\lib\j2ee.jar。
4、 所有的工作做完以后。大家可以通过以下方式验证一下我们的J2EE环境是否已经搭建成功。在命令提示符状态下输入命令:J2EE -Verbose。如果屏幕的最下面看到了这样一句话J2EE server startup complete.那就表示J2EE服务器成功启动了。在我们的J2EE程序要布署和运行的过程中。服务器将一直启动着。
另外提一下,如果你需要停止J2EE服务器,必须再开一个命令窗口,并运行如下命令:J2EE ?STOP。成功运行后,将会有提示语句。再去看看启动服务器的那个窗口,你将可以看到提示符了。
5、 这样做了还不够,我们还需要到网页里去测试一下服务器默认页面是否能够正常显示,这样才能保证我们能够进WEB程序的开发。双击IE浏览器的图标,在地址栏里输入:,如果你能看到以下窗口中的内容,那就说明你的J2EE环境已经搭建成功。需要说明一点,在localhost:后的是J2EE服务器提供的WEB服务端口号。
需要提醒大家的是:当你打开网页之前,确认你的J2EE服务器是启动着的。如果你机器上没有安装网卡,或是网卡安装不正确,也会导致无法打开J2EE服务器默认页面。
六、在JCreater中开发程序需做的配置
大多数初学者使用的的集成开发环境都是Jcreator。这是一个很适合学习者使用的开发工具。但是使用时需注意以下几点:
1、 最好是先装好J2SE SDK和J2EE SDK之后再去安装Jcreator。这样关于JDK的设置Jcreator会自动完成。
2、 那如果不幸先装了Jcreator,后装的JDK也不要紧。可以这样做,完成配置:选择’Configure’菜单。选择Options菜单:如图示
然后选中JDK Profiles。点击NEW按钮,弹出如下对话框:
选中J2sdk1.4.2_02目录。然后点击确定按钮。
接下来将会弹出下面的对话框:
我们会发现这个目录下及子目录下几乎所有的JAR包都在窗口里显示出来了。这样就不怕JAVA虚拟机找不到所需的类了。再点OK吧。
回到OPTIONS窗口继续点OK就回到Jcreator的主界面了。
3、 上面的工作做完以后我们进行普通JAVA程序的开发是没有问题了。不过要进行企业级开发。还得加几个JAR包。重新打开上面看到的Options窗口。选择JDK Profiles,选中J2SDK1.4.2_02,再点击EDIT按钮。
将会弹出PROFILES窗口,点击ADD按钮。选择ADD ARCHIVE选项。在弹出的对话框里选择J2EE SDK的安装路径,并且进入LIB目录。选中所有的JAR文件。如图示:
点击打开按钮。OK两次后回到Jcreator主界面下。
做完这件事后我们可以在JCREATOR中写J2EE代码了。
到这里,JAVA和J2EE运行环境的搭建就介绍完了。大家开始加油编写代码吧。告诉大家学习JAVA和J2EE唯一的办法就是敲代码,唯有抄代码抄出心得以后,你才可以写出自己的漂亮的程序。
Q4: 最近刚报了JAVA班,但是听了一星期只会抄代码//
打java代码直接抄我也没什么经验只是说下我学编程的过程。
1看不懂——2背代码---3照葫芦画瓢---4掌握语法---5自己尝试编---6…………
呵呵~不知你看懂没打java代码直接抄,如果你是以前没接触过这东西的,是要有一个接受理解的过程的
Q5: 程序员被老板发现从网上抄代码,后果是怎么样?
老板会怎么样
if(老板对程序开发有了解){ //有了解,一点点的了解即可
认同,见怪不怪;
}else if(老板很开明){ //一无所知,但是开明
信任,尊重程序员的做法;
}else{ //不仅一无所知,还要胡乱猜想
可能需要一个合理的解释;
}
程序员为什么会从网上抄代码
我们程序员不把这个叫做抄,一般称之为“代码复用”。
当程序员需要使用到一个新的框架、类或者方法的时候,一定会做到有迹可循、有理可依,也就是不要乱用。
例如我们一个Spring Boot的项目,现在想用到Rabbit MQ,但是之前没有用过,怎么办?程序员一般会通过这么几种方式:
一些建议
我建议,先试试方案1和3,自己解决不了的话,再去请教其他的同事。
我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。
抄代码分为三种。
一,整个项目抄过来,不做丝毫改动地把别人的代码照搬过来。这种情况很罕见,一是涉及版权问题,二是网上的代码都是烂大街的,抄过来也没什么意义,也获得不了什么收益。
二,抄框架,这点是比较常见的。拿盖楼来举例,就是把别人打好的地基,搭好的脚手架直接拿来用,省去了基础设施搭建的工作。盖房子就直接开始砌砖,编代码就直接开始写业务逻辑。好处是显而易见的,减少了项目前期的重复工作,节省大量的人力物力。老板家里要没有矿的话,一般不会反对用别人的框架。
三,抄算法。简单的算法可以自己写,比如求2个数的和,很简单,一行代码就搞定了。复杂的,人脸识别算法,没有几百万也有几十万行代码,倾注全公司资源都未必搞的出来, 科技 含量非常之高。这种时候,往往会寻求与专业的算法公司进行合作,通过付费的方式获取到相关的代码。
程序员被老板发现从网上抄代码,后果是怎么样?这样的事情被老板发现了,至少从现在来看一点儿事情也没有,如果能够抄得让项目进度大大提前还不出问题不出Bug,不引起纠纷老板还大大的高兴。给他节约了大把大把的钱,他不高兴还咋的。
当然从网上抄代码并不是说整个项目给拿过来,特别是有知识产权的那种,这样一旦被原版权人发现会引起纠纷。大部分程序员抄代码都是一小段一小段代码实现某种小功能、或者对某些方法、类等等用法的抄,以便于在自己的项目中去实现自己所需要的功能,融合到自己的项目中去,而不是盲目的去抄原封不动的搬运过来,程序员一般很少会做那样的事情的。
程序员很少有不上网去了解查询相关的知识的。而现在很多老板本来就是从搞软件项目出身的,或程序员出身的,早就知道这些招数甚至自己也用过,根本不值得大惊小怪,基本上都会鼓励程序员如果有什么不懂就去百度就去找网上相关的解决方法。
尽快寻找解决方法,才可以尽可能的减少一个问题就被卡死在那里花费掉太多的时间,大部分老板不是让你去当钻研代码的开拓者,而是去当能实现项目功能的技术能手,你用什么方式方法去得到那些技术,大部分老板不会关心的。
所以抄不抄代码基本没人管你,最重要的是抄来的代码是不是能解决项目的问题、加快项目的进度、节约项目的成本,只要能解决问题为项目带来效益,总监或者老板还会夸奖你是高手,是能人。
更多分享及互动,欢迎点击右上角关注【东风高扬】。
如果你能抄代码,请选择正确的抄代码的方式,来推荐几个我认为好的网站。
如果有一个网站的提问,可以涵盖你基本90%以上的日常开发问题,那就是这个网站。这里什么方面的代码都有,如果你是一个好的程序员,建议你可以来这里抄代码。
如果你还没有自己的github账户,那你得赶紧来注册一个。GitHub上有好多好的开源项目,Vue,React等等,如果你想看一想好的项目,建议来GitHub看看
如果你善于使用搜索引擎,那你已经比一般人好太多啦。学会使用一些搜索的技巧,能提升你快速找到问题。
所以,我觉得抄代码没什么,我觉得正确的方式,是如何去抄好的代码,去看别人的优点,然后可以使用到自己的项目,这完全没有问题。
拿着高薪的程序员,最熟练的两个快捷键就是ctrl+c 和 ctrl+v。
看到这里你是不是觉得:
哇,做程序员太轻松了吧,了解相关的知识,每天复制黏贴就可以了,还拿那么高的工资,还有没有天理了?
首先“代码复用”这个情况是很普遍的,从 社会 学和经济学来看,复用这个行为是值得肯定的,因为它能够避免浪费有限的 社会 资源。
如果合理地利用开源代码,可以避免“重复造轮子”的动作,从而解放大量的程序员去进行更有价值的开发工作,加快开发效率,以达到资源价值的最大化。
想要把开源代码做成适合公司项目的功能,本来就要求这个程序员的基础扎实,如果没有相关的项目经验,又如何对代码进行维护?
知其然,更要知其所以然。
这就是高薪程序员的高明之处:他们用开源代码来解决自己的问题,把架构、思路融会贯通再变成自己的逻辑表达出来。
程序员主要是实现功能需求,至于怎么实现的,是不是从网上抄袭得又有多少关系,现实中又有多少程序员不是从网上直接复制代码然后应用在自己模块中,把优秀的代码看明白然后灵活应用写在实际代码编写过程中特别常见,现在的开源社区不就是典型嘛,拿到源码然后搞明白,进行各种定制,很多公司都会正大光明的这么去做,在当今的技术领域特别正常。
如果真是老板发现了代码和网络上接近,但是功能用起来没有啥问题,如果因此找到程序员说事,那这老板才是有问题,正常来讲代码的审核主要还是在于直接的技术主管,老板都操心到代码是不是从网上找的了,方向估计该处问题了,老板正常来讲关心的是结果有没有达成,如果进一步拓展自己的业务圈子,把产值最大化。
希望能帮到你。
老板的态度无非是要么是置之不理,要么是批评开除。从老板的态度上可以折射出很多东西来。
置之不理:老板要么不懂程序要么懂程序,老板不懂程序置之不理也正常,如果老板懂程序,那他应该明白这是正常现象。这种态度属于明智之举。
批评或者开除:那老板肯定是不懂程序的,既然不懂程序,就不要在那瞎指挥。团队里自然会有总兼把关恒量。老板的职责是统筹大局,如果这些细小之事也要插手的话,不要留恋立即走人。这里绝对会限制你的发展。
项目本来就是以结果为导向的,任务急,工期短,尤其在创业型公司里,从头到尾从零开发,要耗费多少精力多少人力?我们就要学会“拿来主义”啊,去除糟粕,取精华!
作为码农,将别的功能代码拷过来稍作修改,完成了自己的工作,这样的方式简单快捷,好用,bug少。
能抄到代码,还能知道到哪里抄代码,知道应该抄什么代码,哪段代码,抄完之后怎么融入进去,并且还能解决问题,结果代码还真跑起来了!这也是本事!这也是励练自己的一个方式!
所以自己要对抄代码也要保持清醒的认识,我能故我抄!
俗话说的好,“天下文章一大抄”。我们在工作时,新闻稿、会议纪要等等也是有一定的模板,我们只需要比着葫芦画瓢就行了。那么,程序员从网上抄代码这件事情,如果被发现,会面临什么样的处置结果呢?
实际上,编写代码时最重要的一条,就是学会怎样利用其他程序员的代码和思路来解决问题。程序员写程序抄代码这件事情,也可以视情况分为三种:抄算法、抄框架、抄整个项目。
其实,简单的算法可以自己写,复杂的,比如一个大型 游戏 ,代码多到足以让全公司的程序员怀疑人生。而且一般这种复杂的代码需要和大型的算法公司合作,也不是简单的在网上随便抄一抄就能抄到的。
抄一个应用或者是功能的的框架这件事情,好处也是显而易见,减少了自身这个项目前期的重复工作,节省大量的人力物力,同事还能在现有的而基础上做一些自己需求上的改进,何乐而不为呢?而且应该很少有程序员去真的从最基础的时候一个字母一个字母的敲一整个程序的代码吧。
但是!整个项目不做丝毫改动地把别人的代码抄过来,这就涉及到一个版权和隐私的问题,严重的话是要负法律责任的。
所以说针对程序员从网上抄代码这件事情,要面临的结果无非下面两种,要么老板置之不理,要么被批评开除。
程序员要做的是在能抄到代码的情况下,还能知道到哪里抄代码,知道应该抄什么代码,哪段代码抄完之后能融入进去,并且还能解决问题,才是最重要的。
第一,一般公司老板从来不懂技术,也根本看不懂你是不是在搜资料还是copy。第二,就算发现你抄,那也是正常,初级程序员抄代码已是常态。关注一下再看下面的精彩哈。
文| 科技 黑洞宇文笑
本人是在某世界五百强企业,公司的老板肯定是见不到的,部门总经理也几乎从来不会在我们这些普通程序员这边逛 ,而且不懂技术。至于所谓的老板,应该是那些技术总监,可惜技术总监一般情况也不会碰你的答案。而技术总监下面一般是技术经理,普通程序员就归技术经理管管,跟着做项目,即使他发现你抄代码,也不会说什么,只要你能完成自己手头上的任务,无论你用什么方法实现。甚至他会教你“抄”哪的,其实这是叫你借鉴代码,这样你才能完成你的左右。
现在程序员抄代码,是比较普遍的,抄网上的,或者复制同事的。复制同事的函数直接不改,就有些无脑,而复用别人的代码,反而是正确值称赞的,这往往能提高代码的整洁度。如果你抄网上的,一般是没有现成可以用的代码,只能借鉴其思路,然后结合自己的业务,写一套自己的代码,这种做法往往还需要程序员有不错的基础,不然你连别人的代码都不懂利用。
程序员宇文笑一句话:
善“抄”代码,反而是一种编程美学,不过请你优雅。觉得说的好赏个关注呗。
产品功能产出流程:
一、产品经理:需求调研、产品需求文档、原型图的产出。
二、商讨需求可行性(移动端、前端、后端、UI、测试、产品)。
三、根据各个职能岗位意见以及需求产出时间成本等等条件因素,修改需求。
四、需求文档、原型图交由UI、后端、测试
1.UI根据需求文档、原型图设计效果图、标注图、切图。
2.后端根据需求文档、原型图设计数据库表结构、接口数据结构、接口文档;
3.测试根据需求文档、原型图写测试用例;
五、如上所产出(计效果图、标注图、切图)(接口文档)交由移动端和前端开发人员开发。
六、开发人员开发完成自测之后交由测试人员进行功能测试以及性能测试。
1.测试人员根据《测试用例》进行功能测试形成报告反馈(移动端、前端、后端、UI、测试、产品)进行BUG修复,需求完善,交互优化等。
2.性能测试包括后端压力测试,移动端的内存等等。
七、最后进行灰度测试或者内部众测。
八、最终产品更新上线。
如上表述,程序员在一个功能开发过程中,最重要的是保证产品功能稳定性、扩展性。至于怎么实现如果没有意外。领导不会关心你怎么实现。而且在程序员这个行业工作要的是思路具体怎么实现复制粘贴代码是很经常的事情。so。。。你这个问题其实并不是问题。
打java代码直接抄的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java代码打好了怎么运行、打java代码直接抄的信息别忘了在本站进行查找喔。







