(四)java程序基本组成
一个基本的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程序基本组成的更多相关文章
- 分享非常有用的Java程序 (关键代码)(四)---动态改变数组的大小
原文:分享非常有用的Java程序 (关键代码)(四)---动态改变数组的大小 /** * Reallocates an array with a new size, and copies the co ...
- “全栈2019”Java第四章:创建第一个Java程序
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- # 2016-2017-2 20155319 《Java程序设计》实验四Android程序开发实验报告
2016-2017-2 20155319 <Java程序设计>实验四Android程序开发实验报告 实验一 实验内容 Android Stuidio的安装测试: 参考<Java和An ...
- 20155338 2016-2017-2《Java程序设计》实验四Android程序开发实验报告
2016-2017-2 20155338 <Java程序设计>实验四Android程序开发实验报告 实验过程及成果展示 1.修改res目录下的layout文件夹中的activity_mai ...
- 优秀Java程序员的四大忌,你避免了吗?
做为一名优秀的程序员需要具备永不放弃的精神,如果一个程序员不具备这种永不放弃的精神,那么这个程序员只能算是一名假程序员.而通往成功的道路上往往是不平坦的,想要成为一个合格的高级Java程序员,需要规避 ...
- 《JAVA 程序员面试宝典(第四版)》读书笔记之前言
工作五年了一直在小的软件公司混,总感觉自己的专业知识没有太大的提升.当然了中间也换了一两家公司,面试的公司就很多家,总感觉正规的软件公司(无论大小)对于基础知识的考核都非常重视,而不管你说你之前服务过 ...
- 一个工作了四年的java程序员的心得体会
年底了,该给自己写点总结了!从毕业到现在已经快4年啦,一直在Java的WEB开发行业混迹.我不是牛人,但是自我感觉还算是个合格的程序员,有必要写下自己将近4年来的经历,给自我以提示,给刚入行的朋友提供 ...
- 为Java程序员金三银四精心挑选的五十道面试题与答案
1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...
- Java程序员金三银四精心准备的面试题及答案(基础篇)
1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...
随机推荐
- 用python做爬虫的例子
主要就是用了两个库,urllib和BeautifulSoup. 作用是从HTML中解析出解梦的查询词和具体的解释. # -*- coding: utf-8 -*- import urllib, url ...
- Jpush教材
http://docs.jpush.cn/pages/viewpage.action?pageId=3309574
- Open经验库网址
http://www.open-open.com/lib/view/open1436094840774.html
- Codeforces Round #339 Div.2 A - Link/Cut Tree
第一次正式参加常规赛想想有些小激动的呢 然后第一题就被hack了 心痛 _(:зゝ∠)_ tle点在于越界 因此结束循环条件从乘变为除 done //等等 这题没过总评 让我静静........ // ...
- C++面向对象要点
先说说面向对象思想的一个总体认识 对象通常会有行为,这些行为是靠信息支撑,这些信息包括外部信息和内部信息,对象行为会维护其中的一部分信息 因此对象可以看成是这样一种实体,它获取信息,然后决定自己的行为 ...
- DEBUG MYSQL
https://dev.mysql.com/doc/refman/5.7/en/porting.html https://dev.mysql.com/doc/refman/5.7/en/debuggi ...
- XML序列化中含有List的情况,序列化到根节点下一层
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.X ...
- linux包之procps之sysctl命令
概述 [root@localhost ~]# rpm -qf /sbin/sysctlprocps-3.2.8-25.el6.x86_64 我们常常在 Linux 的 /proc/sys 目录下,手动 ...
- OpenJudge计算概论-球弹跳高度的计算
/*======================================================================== 球弹跳高度的计算 总时间限制: 1000ms 内存 ...
- js中冒泡事件和捕获事件
js中冒泡事件和捕获事件: 冒泡事件:冒泡事件是从里向外,即是从被绑定元素开始一直向外到达页面的所有祖先元素都会被触发,这 一过程被称为事件冒泡.这个事件从原始元素开始一直冒泡到DOM树的最上层 捕获 ...