一个基本的java程序一般包括几个部分,分别是程序所在的包名、程序中用到的其他包的路径、程序的类、类中的方法、变量和字面量。
package demo;
import java.util.Date;
public class Demo {
public static void main(String[] args) {
int num;
num=1;
String str=new String();
Date date=new Date();
System.out.println(str);
System.out.println(num);
System.out.println(date);
}
}以上是一个简单的程序,输出一个整数和当前的系统日期。其中,demo是包名,java.util.Date是导入的日期类的包,Demo是类名,main是类中的方法名,num是变量,1是字面量。
     package是定义包的关键词,
     import是导包的关键词,
     public 是权限修饰词的一种,代表公有的、公开的,还有另外三个分别是私有的private、受保护的protect和默认的。
     class是定义类的关键词,
     static也是一种修饰词,代表静态的。带有static的方法、变量等属于类所有不属于对象。类是类型,一种略抽象的东西,类的实例化就是对象,例如人类、人,这是类,不具体;而具体到任何一个人,例如某某人,这就是个对象。
     包名、类名、方法名以及变量名等一般都是自己随便取,但是最好见名知意、使用英文并遵循驼峰命名法。所谓的驼峰命名法就是当几个单词组合起来作为一个单词时,第一个的首字母小写,其他的首字母大写,首字母之外的所有字母小写。初学者容易犯的一个错误是,喜欢使用伪英文,其实就是中文拼音,例如日期,不是date而是写成riqi,乍一看好像是英文,实际上不是那么回事。
    在上边例子中的方法名比较特殊,main方法在java中的作用是程序的入口,也就是说一般程序会从这里进入开始运行,而且这个方法那一行是固定的写法,任何一个单词和符号包括括号里边的参数都不能改变,一旦变了,那他就不是主函数,也就不能起到程序入口的作用了。
    命名还有一个需要注意的是,不能使用java中的关键字,也不能使用java中的保留字,所谓的保留字,其实就是java定义的可能成为关键字,但是目前还不是关键字的单词。
    上边的例子中,变量有三个,分别是num、str和date,这三个有区别,int和str都是没有导包的,而date是有导包的。在java中,八大基本数据类型都是不用导包的,所以int不用;而str的类型是String,他不属于八大基本类型,但是因为它实在是太常用了,所以它拥有特权,也和八大基本类型一样不用导包;至于Date,他虽然也常用,但是并没有String那么常用,所以他要老老实实的导包,当然了,除开String之外的所有引用类型都要导包。
    变量其实就相当于一个装东西的盒子,也就是一个可以改变内容的东西,它里面装的我们看到的东西就是所谓的字面量。比如int num=1,num是变量盒子,而1是字面量,也就是盒子里的东西。
    在最后,程序中输出了这三个变量的内容,在控制台打印输出的常用语句是System.out.println();括号里边装的就是要输出的内容,在这里用的是上边的变量。变量在使用时需要注意的是,必须先声明并初始化,然后再使用。
    声明说的简单点就是类型加变量名,而初始化说的简单点就是给他赋值,给盒子装上东西,比如给nun装上1,给date装上new Date()。
    变量的声明和初始化一般有两种形式,先声明再初始化和声明的同时初始化。在上边的例子中,num就是先声明再初始化,而其他两个就是声明的同时初始化。
    变量在使用时还需要注意的是,它有作用域,也就是说即使声明和初始化了却并不一定就可以用,变量的作用范围一般是从包含他的最近的大括号开始到结束的范围内,超出范围将会失效。

(四)java程序基本组成的更多相关文章

  1. 分享非常有用的Java程序 (关键代码)(四)---动态改变数组的大小

    原文:分享非常有用的Java程序 (关键代码)(四)---动态改变数组的大小 /** * Reallocates an array with a new size, and copies the co ...

  2. “全栈2019”Java第四章:创建第一个Java程序

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  3. # 2016-2017-2 20155319 《Java程序设计》实验四Android程序开发实验报告

    2016-2017-2 20155319 <Java程序设计>实验四Android程序开发实验报告 实验一 实验内容 Android Stuidio的安装测试: 参考<Java和An ...

  4. 20155338 2016-2017-2《Java程序设计》实验四Android程序开发实验报告

    2016-2017-2 20155338 <Java程序设计>实验四Android程序开发实验报告 实验过程及成果展示 1.修改res目录下的layout文件夹中的activity_mai ...

  5. 优秀Java程序员的四大忌,你避免了吗?

    做为一名优秀的程序员需要具备永不放弃的精神,如果一个程序员不具备这种永不放弃的精神,那么这个程序员只能算是一名假程序员.而通往成功的道路上往往是不平坦的,想要成为一个合格的高级Java程序员,需要规避 ...

  6. 《JAVA 程序员面试宝典(第四版)》读书笔记之前言

    工作五年了一直在小的软件公司混,总感觉自己的专业知识没有太大的提升.当然了中间也换了一两家公司,面试的公司就很多家,总感觉正规的软件公司(无论大小)对于基础知识的考核都非常重视,而不管你说你之前服务过 ...

  7. 一个工作了四年的java程序员的心得体会

    年底了,该给自己写点总结了!从毕业到现在已经快4年啦,一直在Java的WEB开发行业混迹.我不是牛人,但是自我感觉还算是个合格的程序员,有必要写下自己将近4年来的经历,给自我以提示,给刚入行的朋友提供 ...

  8. 为Java程序员金三银四精心挑选的五十道面试题与答案

    1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...

  9. Java程序员金三银四精心准备的面试题及答案(基础篇)

    1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...

随机推荐

  1. 精妙无比 8款HTML5动画实例及源码

    1.jQuery垂直带小图标菜单导航插件 今天我们要来分享一款jQuery菜单插件,这款jQuery菜单是垂直的样式,鼠标滑过菜单项时会出现一个背景,菜单项的右侧也会出现一个小箭头.另外值得注意的是, ...

  2. 第一篇TC界面设计

    TC界面设计方法 第一:确定自己最终界面的大小. 第二:根据功能需要,选择相应的控价. 第三:美化界面,对界面的控件调整布局位置,设置字体颜色设置背景图片等等 脚本代码: function 按钮1_点 ...

  3. (转) Reinforcement Learning for Profit

    Reinforcement Learning for Profit July 17, 2016 Is RL being used in revenue generating systems today ...

  4. 端口映射工具--socat

    需求 有些服务器没有公网IP, 在有公网IP的服务器上把端口映射出去. 这样的需求有很多实现, 我比较钟爱socat, 简单就是美. 示例脚本新建一个文件叫intershow.sh /usr/loca ...

  5. Linux下编译使用boost库:

    Boost是什么不多说, 下面说说怎样在Linux下编译使用Boost的所有模块. 1. 先去Boost官网下载最新的Boost版本, 我下载的是boost_1_56_0版本, 解压. 2. 进入解压 ...

  6. Unity脚本系统

    什么是脚本?脚本是一个 MonoBehavior, 继承关系是 MonoBehavior -> Behavior -> Component -> Object GameObject ...

  7. Nginx-搭建https服务器

    先看Nginx中的配置 server { listen ; ssl on; ssl_certificate /usr/local/nginx/conf/任意证书名.crt; ssl_certifica ...

  8. ORA-12547:TNS:lost contact 问题分析思路

    ORA-12547:TNS:lost contact sqlplus无法正常登陆数据库 解决思路如下: 1.查看操作系统内核参数是否无误 [oracle@normal adump]$ ulimit - ...

  9. Unity3d NGUI 地图

    1,制作地图 方式1: NGUI,新建一个Atlas,为M,按照一定的比例如 1:400,绘制地图. 新建一个GameObject,为A,关联UIPanel.A的transform.localScal ...

  10. 【转】VS2012程序打包部署详解

    上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...