(四)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)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...
随机推荐
- phpwind8.7升级9.0.1过程(一)本地和服务器数据同步的部署
在使用phpwind的过程中需要将整个网站论坛的模板从phpwind8.7升级到phpwind9.0.1 需要首先在本地搭建和服务器端一样的环境然后在本地尝试性升级之后,然后在服务器端进行升级. 以下 ...
- java基础之:匿名内部类应用例子一
一:接口 package com.yeepay.sxf.testclassforinner; /** * 回调接口. * @author shangxiaofei * */ public interf ...
- HTTPS-SSL/TSL与SNI的关系以及同IP多域名虚拟主机的SSL/TSL认证
早期的SSLv2根据经典的公钥基础设施PKI(Public Key Infrastructure)设计,它默认认为:一台服务器(或者说一个IP)只会提供一个服务,所以在SSL握手时,服务器端可以确信客 ...
- easyUI之Form(表单)组件
一.对于在easyui中使用的组件,具有输入.输出功能的使用<input>标签,其它的使用<div>标签. 二.对于<input>标签,在使用过程,将name属性和 ...
- System.Web.HttpContext.Current 跟踪分析
public static HttpContext Current { get { return ContextBase.Current as HttpContext; } set { Context ...
- oracle的高可用与负载均衡
浏览了一下Oracle官方的网页以及非官方的ppt,简单了解了一下Oracle提供的高可用方案.1. RACRAC, Real Application Clusters多个Oracle服务器组成一个 ...
- 【转】.NET 安装和部署(Installer) 如何卸载上一个版本
前言 当使用.NET“安装项目”打包的安装文件,再次安装的时候会弹出如下提示,这个时候会让我们很郁闷,怎样才能自动卸载上一个安装的版本呢?方法很简单,只需简单的两个操作步骤即可解决. 操作步骤 主要由 ...
- android中两种方式打开网页
一.你要打开一个网页你可以自己写一个webview,在自己的程序中就可以打开. wv = (WebView) findViewById(R.id.webView1); wv.getSettings() ...
- 解决weblogic启动缓慢 linux系统随机数问题
这是SUN,JDK一个bug解决办法是在weblogic启动脚本里setDomainEnv.sh: 加入以下内容 JAVA_OPTIONS="${JAVA_OPTIONS} -Djava.s ...
- javascript 变量的作用范围
来自: http://hanxin0311.iteye.com/blog/181127 1.根据作用范围不同,变量有全局变量和局部变量两种.在函数里定义的变量为局部变量,局部变量只在函数内有效. 如果 ...