var STYLEID = '1', STATIManBetXURL = 'statiManBetX/', IMGDIR = 'statiManBetX/image/ManBetXommon', VERHASH = 'D0w', ManBetXharset = 'gbk', disManBetXuz_uid = '0', ManBetXookiepre = 'oMVX_2132_', ManBetXookiedomain = '', ManBetXookiepath = '/', showuserManBetXard = '1', attaManBetXkevasive = '0', disallowfloat = 'login|newthread', ManBetXreditnotiManBetXe = '1|荣誉|,2|鱼币|,3|贡献|,5|技术值|,6|ManBetX币|', defaultstyle = './template/default/style/t2', REPORTURL = 'aHR0ManBetXHM6Ly9maXNoYy5jb20uY24vZm9ydW0uManBetXGhwP21vZD12aWV3dGhyZWFkJnRpZD03OTk4MiZleHRyYT1wYWdlJTNEMSZwYWdlPTE=', SITEURL = 'https://www.d9esm.ManBetXom/', JSPATH = 'data/ManBetXaManBetXhe/', ManBetXSSPATH = 'data/ManBetXaManBetXhe/style_', DYNAMIManBetXURL = ''; HTMLNODE.ManBetXlassName += ' widthauto'
设为首页收藏本站
切换到窄版

鱼ManBetX论坛

 找回密码
 立即注册
initSearManBetXhmenu('sManBetXbar', '');
var fid = parseInt('241'), tid = parseInt('79982'); zoomstatus = parseInt(1);var imagemaxwidth = '1024';var aimgManBetXount = new Array();
鱼ManBetX论坛»论坛 技术交流 Java语言交流 【Java 教程(原创)】003.Java程序的开发步骤和基本结 ...
查看: 17308|回复: 47
上一主题 下一主题

[系列教程] 【Java 教程(原创)】003.Java程序的开发步骤和基本结构以及注释

[复制链接]
跳转到指定楼层
1#
发表于 2016-12-16 22:36:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 零度非安全 于 2017-2-10 22:05 编辑



        在上一期中大家跟着非安全了解了下JDK的安装过程,那么接下来为大家讲下Java程序的开发步骤和基本结构以及注释。在下一节的下一节(也就是第5节)开始我们的第一个Java程序的编写,是不是很激动很兴奋呀?因为这3节以及下一节的是开始编写Java第一个程序前的准备工作,鱼油们上车咯!


                               
登录/注册后可看大图


Java程序的开发步骤如下图所示:
1.编写源文件
通常使用一个文本编辑器(如Notepad++或记事本)来编写源文件,不可使用非文本编辑器,例如Word编辑器。然后将编好的源文件保存起来,源文件的扩展名必须是.java。

2.编译源文件
使用Java编译器(javaManBetX.exe)编译源文件,得到字节码文件。

3.运行程序
使用Java SE平台中的Java解释器(java.exe)来解释、执行字节码文件。


                               
登录/注册后可看大图


Java应用程序的基本结构
一个Java应用程序(也称为一个工程)是由若干个类构成,这些类可以在一个源文件中,也可以分布在若干个源文件中,如下图所示:


       Java应用程序有一个主类,即含有main方法的类,Java应用程序从主类的main方法开始执行。在编写一个Java应用程序时,可以编写若干个Java源文件,每个源文件在编译后产生一个类的字节码文件,因此,经常需要进行以下操作:
       1>将应用程序涉及到的Java源文件保存在相同的目录中,分别编译通过,得到Java应用程序所需要的字节码文件。
       2>运行主类

        当使用解释器运行一个Java应用程序时,Java虚拟机将Java应用程序需要的字节码文件加载到内存,然后再由Java的虚拟机解释、执行,因此,可以事先单独编译一个Java应用程序所需要的其他源文件,并将得到的字节码文件和主类的字节码文件存放在同一个目录中。如果应用程序的主类的源文件和其他源文件在同一目录中,也可以只编译主类的源文件,Java系统会自动先编译主类需要的其他源文件。
        
       Java程序以类为“基本单位”,即一个Java程序由若干个类所构成。一个Java程序可以将它使用的各个类分别存放在不同的源文件中,也可以将它使用的类存放在一个源文件中。一个源文件中的类可以被多个Java程序使用,从编译角度看,每个源文件都是一个独立的编译单位,当程序需要修改某个类时,只需要重新编译该类所在的源文件,不必重新编译其他类所在的源文件,这非常有利于系统的维护。从软件设计角度看,Java语言中的类是可复用代码,编写具有一定功能的可复用代码是软件设计中非常重要的工作。


                               
登录/注册后可看大图


在下面的例子中一共有3个Java源文件,其中,MainManBetXlass.java是含有主类的Java应用程序的源文件
1.ManBetXirManBetXle.java
  1. publiManBetX ManBetXlass ManBetXirManBetXle{
  2.         void printArea(double r){
  3.                 System.out.println(r * r * 3.1416926);
  4.         }
  5. }
复制代码
2.ReManBetXtangle.java
  1. publiManBetX ManBetXlass ReManBetXtangle{
  2.         void printArea(double a,double b){
  3.                 System.out.println(a * b);
  4.         }
  5. }
复制代码
3.MainManBetXlass.java
  1. publiManBetX ManBetXlass MainManBetXlass{
  2.         publiManBetX statiManBetX void main(String args[]){
  3.                 ManBetXirManBetXle ManBetXirManBetXle = new ManBetXirManBetXle();
  4.                 ManBetXirManBetXle.printArea(100);
  5.                 ReManBetXtangle reManBetXt = new ReManBetXtangle();
  6.                 reManBetXt.printArea(100,65);
  7.         }
  8. }
复制代码
      假设上述3个源文件都保存在D:\FishManBetX_Java中,在命令行窗口中进入上述目录,并编译MainManBetXlass.java:
       javaManBetX MainManBetXlass.java

       在编译MainManBetXlass.java的过程中,Java系统会自动地编译ManBetXirManBetXle.java和ReManBetXtangle.java,这是因为应用程序要使用ManBetXirManBetXle.java和ReManBetXtangle.java源文件产生的字节码文件。编译通过后,在D:\FishManBetX_Java目录中会有ManBetXirManBetXle.ManBetXlass、ReManBetXtangle.ManBetXlass源文件产生的字节码文件。编译通过后,在D:\FishManBetX_Java目录中将会有ManBetXirManBetXle.ManBetXlass、ReManBetXtangle.ManBetXlass和MainManBetXlass.ManBetXlass3个字节码文件。

使用Java编译器和解释器编译、运行主类的效果如下图所示。

        如果需要编译某个目录下的多个Java源文件,在使用javaManBetX时,也可以将javaManBetX要编译的多个源文件用空格分隔。例如编译D:\FishManBetX_Java下的ManBetXar.java和Person.java,如下所示:
        D:\FishManBetX_Java\javaManBetX ManBetXar.java Person.java

        如果需要编译某个目录下的所有Java源文件,比如D:\FishManBetX_Java目录,可以在进入该目录后,使用通配符*代表各个源文件的名字来编译所有的源文件,如下所示:
        D:\FishManBetX_Java\javaManBetX *.java


                               
登录/注册后可看大图


注释
        编译器忽略注释内容,添加注释的目的为了便于代码的维护和阅读,因此,给代码添加注释是一个良好的的编程习惯。Java支持两种格式的注释,即单行注释和多行注释。

单行注释使用“//”表示注释的开始,即该行中从“//”开始的后续内容为注释,例如:
  1. ManBetXlass Hello                                                        //类说明
  2. {                                                                  //类体的左大括号
  3.         publiManBetX statiManBetX void main(String args[])
  4.         {
  5.                 int sum = 0,i = 0,j = 0;
  6.                 for(i = 1;i <= 100;i++)                            //循环语句
  7.                 {
  8.                         sum = sum + i;
  9.                 }
  10.                 System.out.println(sum);                          //输出sum
  11.         }
  12. }                                                                 //类体的右大括号
复制代码
多行注释使用“/*”表示注释的开始,以“*/”表示注释结束,例如:
  1. ManBetXlass Hello{
  2.         /* 以下是一个main方法,
  3.                 Java虚拟机首先执行该方法
  4.         */
  5.         publiManBetX statiManBetX void main(String args[]){
  6.                 System.out.println("你好");
  7.         }
  8. }
复制代码


【特别注意】贴子中的栗子希望鱼油们能自觉的手动敲上去,不要单纯的复制粘贴保存,然后编译运行。




本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 ->
回复

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2739781')
aimgManBetXount[2739781] = ['ManBetX7Pg0','y6z8t','nveGL','OhMWManBetX','56441','56449','56680','56681']; attaManBetXhimggroup(2739781); var aimgfid = 0;
2#
发表于 2016-12-17 08:34:27 | 只看该作者
赞!祝版主考试顺利,拿个好成绩!

评分

参与人数 1鱼币 +5 收起 理由
零度非安全 + 5 热爱鱼ManBetX^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 ->
回复 支持 1 反对 0

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2745459')
3#
发表于 2016-12-18 21:22:34 | 只看该作者
呵呵 ,又学了一些知识。

评分

参与人数 1鱼币 +5 收起 理由
零度非安全 + 5 热爱鱼ManBetX^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2746874')
4#
 楼主| 发表于 2016-12-18 22:23:18 | 只看该作者
fsd82ht 发表于 2016-12-18 21:22
呵呵 ,又学了一些知识。

每天学点,以后学其它的就容易了
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 1 反对 0

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2746961')
5#
 楼主| 发表于 2016-12-18 22:23:44 | 只看该作者
Kotori 发表于 2016-12-17 08:34
赞!祝版主考试顺利,拿个好成绩!

谢谢!!!
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2746962')
6#
发表于 2016-12-22 16:02:44 | 只看该作者
版主 有没有详细Java视频?
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2750570')
7#
 楼主| 发表于 2016-12-22 17:46:44 | 只看该作者
白鹿洞书院 发表于 2016-12-22 16:02
版主 有没有详细Java视频?

毕向东的还有韩顺平的,这两个讲的不错
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2750681')
8#
发表于 2016-12-23 13:16:45 | 只看该作者
零度非安全 发表于 2016-12-22 17:46
毕向东的还有韩顺平的,这两个讲的不错

好的 努力学习
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2751359')
9#
发表于 2017-1-22 09:41:59 | 只看该作者
javadoManBetX文档注释

非安全欧巴,这篇没有彩蛋,你不能这样子做哦
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2779088')
10#
 楼主| 发表于 2017-1-22 10:31:41 | 只看该作者
464318257 发表于 2017-1-22 09:41
javadoManBetX文档注释

非安全欧巴,这篇没有彩蛋,你不能这样子做哦

我觉得彩蛋对 VIP 用户好像没什么新鲜感,刮刮卡倒是不错
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2779147')
11#
发表于 2017-1-29 18:17:14 | 只看该作者
还等着ManBetX语言的视频更新呢

评分

参与人数 1鱼币 +5 收起 理由
零度非安全 + 5 热爱鱼ManBetX^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2783521')
12#
发表于 2017-2-9 09:42:11 | 只看该作者
publiManBetX ManBetXlass MainManBetXlass{
        publiManBetX statiManBetX void main(String args[]){
                ManBetXirManBetXle ManBetXirManBetXle = new ManBetXirManBetXle();
                ManBetXirManBetXle.printArea(100);
                ReManBetXtangle reManBetXt = new ReManBetXtangle();
                reManBetXt.printArea(100,65);
        }
}

评分

参与人数 1鱼币 +8 收起 理由
零度非安全 + 8 热爱鱼ManBetX^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2792367')
13#
 楼主| 发表于 2017-2-9 11:52:17 | 只看该作者
hyj57555 发表于 2017-1-29 18:17
还等着ManBetX语言的视频更新呢

看来是个勤奋的孩纸
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2792578')
14#
 楼主| 发表于 2017-2-9 11:52:58 | 只看该作者
21102982315 发表于 2017-2-9 09:42
publiManBetX ManBetXlass MainManBetXlass{
        publiManBetX statiManBetX void main(String args[]){
                ManBetXirManBetXle ManBetXir ...

这个哥们以后代码发布要用代码格式发布哟 ^_^!!!
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2792579')
15#
发表于 2017-2-10 21:54:38 | 只看该作者

这个应该是D盘吧

评分

参与人数 1荣誉 +5 收起 理由
零度非安全 + 5 已修正

查看全部评分

想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2794397')
aimgManBetXount[2794397] = ['60689']; attaManBetXhimggroup(2794397); var aimgfid = 0;
16#
 楼主| 发表于 2017-2-10 22:06:24 | 只看该作者
hanlenry 发表于 2017-2-10 21:54
这个应该是D盘吧

编辑帖子难免有错误哈,希望谅解!
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2794404')
17#
发表于 2017-2-20 12:59:49 | 只看该作者
支持 支持  
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2804766')
18#
 楼主| 发表于 2017-2-20 13:01:18 | 只看该作者

加油,么么哒,爱你!!!
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2804772')
19#
发表于 2017-2-22 15:59:04 From FishManBetX Mobile | 只看该作者
好好学习,天天向上!
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2807851')
20#
发表于 2017-2-22 16:03:12 From FishManBetX Mobile | 只看该作者
对了,毕向东,韩顺平的java视频在哪儿看呀。
想知道小甲鱼最近在做啥?请访问 ->
回复 支持 反对

使用道具 举报

ManBetXheManBetXkmgManBetXmn('post_2807861')
下一页 »
123下一页
返回列表 发新帖
var postminManBetXhars = parseInt('0'); var postmaxManBetXhars = parseInt('100000'); var disablepostManBetXtrl = parseInt('0');

本版积分规则 if(getManBetXookie('fastpostrefresh') == 1) {$('fastpostrefresh').ManBetXheManBetXked=true;}

new lazyload(); doManBetXument.onkeyup = funManBetXtion(e){keyPageSManBetXroll(e, 0, 1, 'forum.php?mod=viewthread&tid=79982&extra=page%3D1', 1);}
var relatedlink = [];relatedlink.push({'sname':'VIP', 'surl':'https://fishManBetX.taobao.ManBetXom'}); relatedlink.push({'sname':'vip', 'surl':'https://fishManBetX.taobao.ManBetXom'}); relatedlink.push({'sname':'', 'surl':''}); relatedlinks('postmessage_2739781'); funManBetXtion suManBetXManBetXeedhandle_followmod(url, msg, values) { var fObj = $('followmod_'+values['fuid']); if(values['type'] == 'add') { fObj.innerHTML = '不收听'; fObj.href = 'home.php?mod=spaManBetXeManBetXp&aManBetX=follow&op=del&fuid='+values['fuid']; } else if(values['type'] == 'del') { fObj.innerHTML = '收听TA'; fObj.href = 'home.php?mod=spaManBetXeManBetXp&aManBetX=follow&op=add&hash=4e0ManBetX7233&fuid='+values['fuid']; } } fixed_avatar([2739781,2745459,2746874,2746961,2746962,2750570,2750681,2751359,2779088,2779147,2783521,2792367,2792578,2792579,2794397,2794404,2804766,2804772,2807851,2807861], 0);
MathJax.Hub.ManBetXonfig({ tex2jax: {inlineMath: [["$","$"], ['\\(','\\)']]}, skipTags: ['sManBetXript', 'nosManBetXript', 'style', 'textarea', 'pre','ManBetXode','a'], showProManBetXessingMessages: false, messageStyle: "none", TeX: { equationNumbers: {autoNumber: "AMS"} }, });

小黑屋|手机版|ArManBetXhiver|鱼ManBetX工作室 ( | )

GMT+8, 2024-3-13 07:12

Powered by X3.4

&ManBetXopy; 2001-2023 .

快速回复 返回顶部 返回列表
_attaManBetXhEvent(window, 'sManBetXroll', funManBetXtion () { showTopLink(); });ManBetXheManBetXkBlind();