基本环境配置可以百度完成,给个比较全面的网址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创建对象操作符,“driverxlwd” 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(一)的更多相关文章

  1. 一文带你入门Java Stream流,太强了

    两个星期以前,就有读者强烈要求我写一篇 Java Stream 流的文章,我说市面上不是已经有很多了吗,结果你猜他怎么说:"就想看你写的啊!"你看你看,多么苍白的喜欢啊.那就&qu ...

  2. 9天快速入门java

    Java入门教程[9天快速入门JAVA] §1.3.简单的Java程序 下面我们先介绍两个简单的Java程序,并对其进行分析. 例1.1. public class HelloWorldApp{//a ...

  3. SQLite 带你入门

    SQLite数据库相较于我们常用的Mysql,Oracle而言,实在是轻量得不行(最低只占几百K的内存).平时开发或生产环境中使用各种类型的数据库,可能都需要先安装数据库服务(server),然后才能 ...

  4. 一天带你入门到放弃vue.js(一)

    写在前面的话! 每个新的框架入手都会进行一些列的扯犊子!这里不多说那么多!简简单单说一下vue吧! Vue.js是目前三大框架(angular,vue,react)之一,是渐进式js框架,据说是摒弃了 ...

  5. 带你入门SpringCloud统一配置 | SpringCloud Config

    前言 在微服务中众多服务的配置必然会出现相同的配置,如果配置发生变化需要修改,一个个去修改然后重启项目的方案是绝对不可取的.而 SpringCloud Config 就是一个可以帮助你实现统一配置选择 ...

  6. 带你入门SpringCloud 之 通过SpringCloud Bus 自动更新配置

    前言 在<带你入门SpringCloud统一配置 | SpringCloud Config>中通过 SpringCloud Config 完成了统一配置基础环境搭建,但是并没有实现配置修改 ...

  7. DTSE Tech Talk | 第10期:云会议带你入门音视频世界

    摘要:本期直播主题是<云会议带你入门音视频世界>,华为云媒体服务产品部资深专家金云飞,与开发者们交流华为云会议在实时音视频行业中的集成应用,帮助开发者更好的理解华为云会议及其开放能力. 本 ...

  8. 可能是史上最强大的js图表库——ECharts带你入门

    PS:之前的那篇博客Highcharts——让你的网页上图表画的飞起 ,评论中,花儿笑弯了腰 和 StanZhai 两位仁兄让我试试 ECharts ,去主页看到<Why ECharts ?&g ...

  9. 史上最强大的js图表库——ECharts带你入门(转)

    出处:http://www.cnblogs.com/zrtqsk/p/4019412.html PS:之前的那篇博客Highcharts——让你的网页上图表画的飞起 ,评论中,花儿笑弯了腰 和 Sta ...

随机推荐

  1. css: box-sizing

    border-box 宽度包含了边框 content-box 边框不包含在内容区中,会增加到实际的宽度中

  2. pwnable.kr-fd-witeup

    登录进远程电脑,看到flag,查看内容,权限不够失败咯,ls -la看看权限. 欧克,fd用户对flag只用可读权限,但是呢,看到fd用户对fd文件有s权限,它指设置使当前在执行阶段具有文件所有者的权 ...

  3. 返回 字符串的 form和js组合让页面跳转

    router.get("/wy/jhy").handler(ctx->{ ctx.request().response().setChunked(true); System. ...

  4. 一些matlab命令

    expand: R = exprnd(MU) returns an array of random numbers chosen from the exponential distribution w ...

  5. python—集合

    ps:非空即真,非0即真(空,0都返回False) pwd=input('pwd:').strip() if pwd: #三种判断为空的方法(直接判断就可以) # if pwd!='': # if l ...

  6. 摘选改善Python程序的91个建议2

       62.metaclass stackflow          中文翻译    63.Python对象协议   https://zhuanlan.zhihu.com/p/26760180     ...

  7. 传递参数:java代码中形参的改变有没有影响实参?

    实参:可以是常量.变量.表达式.函数等, 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参. 因此应预先用赋值,输入等办法使实参获得确定值. 形参:全称为“形 ...

  8. ieee文献免费下载办法

    sci-hub是个神奇的存在,但突然有短时间不能用了,搜索很久,找到了:https://www.zhihu.com/question/68333471/answer/276287163 这个网址会实时 ...

  9. 如何用命令将本地项目上传到git[z]

    1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点 ...

  10. js对象属性 通过点(.) 和 方括号([]) 的不同之处

    //    js对象属性 通过点(.) 和 方括号([]) 的不同之处 //    1.点操作符: 静态的.右侧必须是一个以属性名称命名的简单标识符.属性名用一个标识符来表示.标识符必须直接出现再js ...