HelloWorld带我入门JAVA(一)
基本环境配置可以百度完成,给个比较全面的网址http://c.biancheng.net/java/10/
创建第一个java工程
通过Eclipse运行程序
启动Eclipse,在菜单中选择“文件 --> 新建 --> Java项目”,弹出对话框:

图1 新建项目
填入项目名称,点击“完成”,创建项目成功,可以看到在 E:\java\workspace 目录下多出了一个Demo文件夹。
在菜单中选择“文件 --> 新建 --> 类”,弹出对话框:

图2 创建类
输入类名称,点击“完成”,成功创建一个HelloWorld类:

图3 新创建的类文件
将下面的代码输入到源文件,注意Java是大小写敏感的:
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello World!");
}
}
点击运行按钮
,或者在菜单中选择“运行 --> 运行”,就可以看到下方控制台输出了“Hello World!”:

图4 控制台输出
恭喜你,你成功编写并运行了第一个Java程序。
打开Demo文件夹下的bin目录,出现了一个 HelloWorld.class 文件,默认情况下Eclipse是不显示这个文件夹的,可以通过点击Window - show view - Navigator,调出bin目录。
这就是编译生成的字节码。与C、C++不同,Java编译的结果不是可执行文件,而是字节码文件。字节码文件不能直接运行,必须由JVM翻译成机器码才能运行,这就是为什么运行Java程序必须安装JVM的原因。
通过命令行运行程序
当然,你也可以直接输入命令来编译和运行Java。
打开CMD,cd 到源文件所在目录,通过 javac filename 命令完成编译,通过 java classname 命令来运行程序,如下所示:

图5 通过命令编译并运行Java程序
在Eclipse中运行程序,实际上也是执行这些命令,并将输出结果显示到控制台。有了Eclipse,编程更加方便。
HelloWorld程序分析
分析上述代码,从程序开始处介绍。
public class HelloWorld
定义了一个类,类是 “public” 公共类型的,类名为“HelloWorld”。另外,Java 中主类名应该和要保存的 Java 文件名相同,也就是说,这里定义的类名是“HelloWorld”,则文件应该保存为“HelloWorld.java”。
class关键字定义类
权限修饰符:
private:本类可见,同包其他类或子类、其他包其他类或子类均不可见
protected:本类、同包其他类或子类可见,其他包其他类或子类不可见
public:本类、同包其他类或子类、其他包其他类或子类均可见
main()方法
public static void main(String[] args)
对一个应用程序来说,main() 方法是必需的,而且必须按照上面的格式来定义。Java 解释器在没有生成任何实例的情况下,以 main() 方法作为入口来执行程序。Java 程序中可以定义多个类,每个类中可以定义多个方法,但 main() 方法作为程序的入口,只能有一个。如上例子中,在 HelloWorld 类中定义了一个 main() 方法,其中 public 表示访问权限,指明所有的类都可以使用这个方法;static 指明该方法是一个类方法(又称为静态方法),它可以通过类名直接调用;void 则指明 main() 方法不返回任何值。
main() 方法定义中,小括号“()”中的“String[] args”是传递给 main() 方法的参数是数组类型,参数名为 args,它是类 String 的一个实例。参数可以为 0 个或多个。main() 方法的实现由大括号“{}”括起来。
System.out.println("Hello world");
“System.out.println()”是 Java.lang 包的一个方法,用来将字串“Hello world”输出到命令行窗口。
--------------------------华丽分割线--------------------------

包
package 包的关键字,包的存在主要是为了方便管理类和接口。不同包下的类和接口可以重名。包名的命名规则是全部使用小写字母
导入包
import 导入包的关键字,为了能使用更多包中的类,导入以后就可以直接使用。

继承
extends :继承关键字,标识两个类的继承关系,继承父类以后可以使用父类的功能、可以对拓展父类的功能,可以重写父类的成员方法。(重写只能将成员方法的权限扩大从protect改成public,不能改小)
构造方法
是一个与类同名的方法,对象的创建就是通过构造方法完成。每当类实力化一个对象时,类都会自动调用构造方法。
super() :子类的构造方法中使用super()语句调用父类的构造方法。
注:构造方法没有返回值但是不需要使用void进行修饰
对象创建
CaseHelper helper = new CaseHelper(driver, xlwd);
CaseHelper 类名,helper 创建的CaseHelper类对象名,new创建对象操作符,“driver, xlwd” CaseHelper类的构造方法的参数
对象创建后可以使用对象名.成员名的方式来获取类的属性和方法
声明变量
告诉编译器这个变量的数据类型。
声明时可以只写变量类型,可以写明变量类型并赋值(可以使常数或方法的返回值)。
注:赋值为方法返回值时如果和声明的类型不一致,校验不通过。
if 语句语法
if 选择结构是根据条件判断之后再做处理的一种语法结构。默认情况下,if 语句控制着下方紧跟的一条语句的执行。不过,通过语句块,if 语句可以控制多个语句。
if ( 条件表达式)
{
语句块;
}
多条件 if 语句
if 语句的主要功能是给程序提供一个分支。然而,有时候程序中仅仅多一个分支是远远不够的,甚至有时候程序的分支会很复杂,这就需要使用多分支的 if…else if 语句。
通常表现为“如果满足某种条件,就进行某种处理,否则如果满足另一种条件才执行另一种处理……,这些条件都不满足则执行最后一种条件”。
if(表达式1)
{
语句块1;
}
else if(表达式2)
{
语句块2;
}
...
else if(表达式n)
{
语句块n;
}
else
{
语句块n+1;
}
嵌套 if 的使用
if 语句的用法非常灵活,不仅可以单独使用,还可以在 if 语句里嵌套另一个 if 语句。同样,if…else 语句和 if…else if 语句中也可以嵌套另一个 if 结构的语句,以完成更深层次的判断。
if(表达式1)
{
if(表达式2)
{
语句块1;
}
else
{
语句块2;
}
}
else
{
if(表达式3)
{
语句块3;
}
else if( 表达式4)
{
语句块4;
}
else
{
if( 表达式n)
{
语句块n;
}
else
{
语句块n+1;
}
}
}
--------------------------华丽分割线--------------------------
代码结构框架下次分解
HelloWorld带我入门JAVA(一)的更多相关文章
- 一文带你入门Java Stream流,太强了
两个星期以前,就有读者强烈要求我写一篇 Java Stream 流的文章,我说市面上不是已经有很多了吗,结果你猜他怎么说:"就想看你写的啊!"你看你看,多么苍白的喜欢啊.那就&qu ...
- 9天快速入门java
Java入门教程[9天快速入门JAVA] §1.3.简单的Java程序 下面我们先介绍两个简单的Java程序,并对其进行分析. 例1.1. public class HelloWorldApp{//a ...
- SQLite 带你入门
SQLite数据库相较于我们常用的Mysql,Oracle而言,实在是轻量得不行(最低只占几百K的内存).平时开发或生产环境中使用各种类型的数据库,可能都需要先安装数据库服务(server),然后才能 ...
- 一天带你入门到放弃vue.js(一)
写在前面的话! 每个新的框架入手都会进行一些列的扯犊子!这里不多说那么多!简简单单说一下vue吧! Vue.js是目前三大框架(angular,vue,react)之一,是渐进式js框架,据说是摒弃了 ...
- 带你入门SpringCloud统一配置 | SpringCloud Config
前言 在微服务中众多服务的配置必然会出现相同的配置,如果配置发生变化需要修改,一个个去修改然后重启项目的方案是绝对不可取的.而 SpringCloud Config 就是一个可以帮助你实现统一配置选择 ...
- 带你入门SpringCloud 之 通过SpringCloud Bus 自动更新配置
前言 在<带你入门SpringCloud统一配置 | SpringCloud Config>中通过 SpringCloud Config 完成了统一配置基础环境搭建,但是并没有实现配置修改 ...
- DTSE Tech Talk | 第10期:云会议带你入门音视频世界
摘要:本期直播主题是<云会议带你入门音视频世界>,华为云媒体服务产品部资深专家金云飞,与开发者们交流华为云会议在实时音视频行业中的集成应用,帮助开发者更好的理解华为云会议及其开放能力. 本 ...
- 可能是史上最强大的js图表库——ECharts带你入门
PS:之前的那篇博客Highcharts——让你的网页上图表画的飞起 ,评论中,花儿笑弯了腰 和 StanZhai 两位仁兄让我试试 ECharts ,去主页看到<Why ECharts ?&g ...
- 史上最强大的js图表库——ECharts带你入门(转)
出处:http://www.cnblogs.com/zrtqsk/p/4019412.html PS:之前的那篇博客Highcharts——让你的网页上图表画的飞起 ,评论中,花儿笑弯了腰 和 Sta ...
随机推荐
- Spring 初学笔记
Spring 初学笔记: https://blog.csdn.net/weixin_35909255/article/category/7470388
- [转]使用screw plus来保护php代码安全
原文链接 https://www.jianshu.com/p/f6425e2f8643 https://github.com/del-xiong/screw-plus http://git.oschi ...
- 音视频处理概要 markdown
最近要想办法把录制的音视频进行拼接. 比方说此次录制的视频有三段,通过高清直播编码器录制,录制下的标准为h.264 直接用ffmpeg简单拼接,音频会丢失,所以有了此次解决方案(有可能会繁琐,简单方案 ...
- centos7上安装zabbix4.0
zabbix4.0已经推出有一段时间了,针对之前版本做了很多优化配置,易用性得到提高,特别lts(long team support)长技术支持版本,官方说提供5年的稳定技术支持,在商业化运用上,是比 ...
- sublime安装PackageControl提示失败(被墙了)
An error occurred installing Package Control 然后下面又说visit....某网址 如果弹出这个错误的话,就是被墙了.翻个墙或者改hosts就行了 如果是改 ...
- UEFI EVENT 全解
Event和Timer在UEFI当中是怎么实现的以及原理,我们先从Timer开始,然后细细的拨开隐藏在底层的实现. 先说Timer,那什么是Timer呢?其实在中文里面我们把它叫做定时/计数器,但是我 ...
- selenium启动谷歌浏览器
谷歌浏览器可以是任意版本. 根据谷歌浏览器的版本,下载响应的浏览器驱动(百度:谷歌驱动与谷歌浏览器版本映射表). 我用的是win7 ,下载win32就行了.下载解压之后可以放在python的安装目录下 ...
- node.js 使用NAPI写C++插件,(部分转帖)
原文:https://www.cnblogs.com/chyingp/p/nodejs-learning-napi.html 可能是版本问题,我用node v10.6.0 遇到了问题 不过解决了. 一 ...
- Java中的4个并发工具类 CountDownLatch CyclicBarrier Semaphore Exchanger
在 java.util.concurrent 包中提供了 4 个有用的并发工具类 CountDownLatch 允许一个或多个线程等待其他线程完成操作,课题点 Thread 类的 join() 方法 ...
- 使用svn进行文件和文件夹的忽略
使用svn进行文件和文件夹的忽略 黑泥卡 关注 0.3 2016.08.16 22:42* 字数 786 阅读 20554评论 7喜欢 15 如何使用svn忽略文件和文件夹如果你之前尝试过git,你 ...