JavaSE——初始java

这篇具有很好参考价值的文章主要介绍了JavaSE——初始java。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一.Java是什么

二.Java语言的特性

1. 简单性

2. 面相对象

3. 分布式(微服务)

4. 健壮性

5. 安全性

6. 体系结构中立

7. 可移植性

8. 解释性

9. 高性能

10. 多线程

11. 动态性

三.JDK环境配置

1.简介

2.安装

 3.配置

4.检验

四.第一个Java程序

1.初始程序

2.运行程序

3.JDK、JRE、JVM三者之间的关系。

 4.理解代码

5.总结

五.标识符

六.关键字

七.注释


一.Java是什么

我们学习了从C语言的初始,初阶,进阶,很多同学选择了学习C++,我为了跟进学校的课程以及以后发展,还是选择了Java,大家都说Java已经饱和,但是只要学的足够好,还是有很多发展。


java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。java的应用领域很多,可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。

二.Java语言的特性

1. 简单性

Java语法是C++语法的一个“纯净版本”,相当于对C++做了一个减法。这里没有头文件、指针运算(甚至指针 语法)、结构、联合、操作符重载、虚基类等等。不仅如此,Java开发环境远远超出大多数其他编程语言的开 发环境。

2. 面相对象

什么是面向对象? 在Java的世界里,一切皆对象。比如:人、狗、手机、电脑等都是对象。所谓面相对象,就是依靠对象之间 的交互来完成事情,比如:人用手机网上购物,狗吃骨头... Java的面向对象特性与C++旗鼓相当,与C++的主要不同点在于多重继承。在Java中,取而代之的是更简单的 接口概念。而且与C++相比,Java提供了更丰富的运行时自省功能。

3. 分布式(微服务)

Java有丰富的例程库,用于处理像HTTP和FTP之类的TCP/IP协议。Java应用程序能够通过URL打开和访问网络 上的对象,其便捷程度就好像访问本地文件一样。

4. 健壮性

Java与C++最大的不同在于Java采用的指针模型可以消除重写内存和损坏数据的可能性(对于曾经花费几个小 时来检查由于指针bug而引起内存冲突的人来说,一定很喜欢Java的这一特性)。不仅如此,Java编译器能够 检测许多在其他语言中仅在运行时才能够检测出来的问题。

5. 安全性

Java适用于网络/分布式环境。为了达到这个目标,在安全性方面投入了大量的精力。使用Java可以构建防病 毒、防篡改的系统

6. 体系结构中立

编译器生成一个体系结构中立的目标文件格式,按照该中规范生成的文件,只要有Java运行时系统,这些编译 后的代码就可以在许多处理器上运行。Java编译器通过生成与特定计算机体系结构无关的字节码指令来实现 这一特性。精心设计的字节码不仅可以很容易的在任何机器上解释执行,而且还可以动态地翻译成本地机器 代码。这就是为什么可以:“Wrice once,Run anywhere”。而且其他语言编写的程序,在编译后如果能够严格按照字节码文件的规范生成.class文件,也可以在JVM上运 行。

7. 可移植性

与C/C++不同,Java规范中没有“依赖具体实现的地方”。基本数据类型的大小以及有关运算都做了明确的说 明。例如,Java中的int永远是32位的整数,而在C/C++中,int可能是16位整数、32位整数,也可能是编译器 提供商指定的其他大小。在Java中,数据类型具有固定的大小,这消除了代码移植时令人头疼的主要问题。

8. 解释性

Java为了实现与平台无关,自己维护了一套基于栈架构的指令集,Java源代码经过编译之后,字节码文件中的 指令就是按照自己的指令集来组织的,但是在具体硬件环境中运行时,系统并不能识别,因为Java程序在执行 时,Java解释器会逐条的将字节码文件中的指令翻译成CPU的指令集。

9. 高性能

边解释边执行,垃圾会说等导致了Java代码运行效率偏低,近年来JVM也在不断的优化,比如:JIT(即时编译 器),热点代码探测,让Java程序的执行效率大幅提高,在有些场合不亚于C/C++。

10. 多线程

Java在当时很超前。它是第一个支持并发程序设计的主流语言。多线程可以带来更好的交互响应和实时行为。并发 程序设计绝非易事,但是Java在这方面表现出色,可以很好的管理这个工作。

11. 动态性

Java与C/C++相比更加具有动态性。它能够适应不断发展的环境。库中可以自由的添加新方法和实例变量,而 对客户端没有任何影响。在Java中找出运行时类型信息十分简单(反射的特性,后续会学到)

因此:Java不仅仅是一门编程语言,也是一个由一些列计算机软件和规范组成的技术体系。

三.JDK环境配置

1.简介

JDK : Java SE Development Kit Java开发工具

JRE : Java Runtime Environment Java运行环境

如果要从事Java编程,则需要安装JDK,如果仅仅是运行一款Java程序则JRE就满足要求。Java的安装包分为两类,一类是JRE其就是一个独立的Java运行环境; 一类是JDK其是Java的开发环境,不过在JDK的发布包中包含了一个独立的JRE,另外需要注意JDK本身就内置有JRE。

2.安装

在Windows下安装JDK的时候一定要考虑安装包的位数,如果是32位操作系统,则准备jdk-xxx-windows-i586.exe,如果是64位操作系统,则准备jdk-xxx-windows-x64.exe。下文中安装的是64位操作系统下的JDK,32位操作系统下安装方式同理。

(1)执行安装包jdk-8u131-windows-x64.exe ,出现如下图界面,点击下一步。

JavaSE——初始java

(2)安装开发工具和源代码即可;JDK安装包中包含了一个独立的JRE,作为开发机器可以不用安装,因此这里选择此功能将不用(下图二);不建议更改安装目录,采用默认即可;点击下一步。

JavaSE——初始java

JavaSE——初始java

 (3)安装成功

JavaSE——初始java

 3.配置

关于JDK的配置,网上流传的方法特别多,有的也特别复杂,完全不可取。配置之前,先弄清楚到底配置什么东西。

第一:JAVA_HOME环境变量,值为JDK的安装目录,为什么要这么配置能,主要是应为很多开源软件的依赖到这个变量,用于寻找机器上的Java环境,比如:Tomcat , Maven

第二:Path变量值中追加Java命令的路径,道理很简单,就是希望能够在命令行中,直接使用JDK中提供的命令,比如:javajavac

(1)配置JAVA_HOME

新建一个变量名为JAVA_HOME,值就是我们jdk的路径

JavaSE——初始java

(2) 配置Path, 需要注意Path路径一般是存在的,只需要追加即可。这里使用%JAVA_HOME%的意思是直接引用上面配置的JAVA_HOME的值,这样的好处在于,如果Java安装目录发生变话,主需要修改JAVA_HOME的值,不用再修改Path变量的值。

JavaSE——初始java

 重要!!部分Windows10的系统在重启之后%JAVA_HOME%\bin配置的失效,这里解决方法是配置全路径即可,比如:C:\Program Files\Java\jdk1.8.0_131\bin

(3)配置CLASSPATH

变量名: CLASSPATH
变量值: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
注意前面的 . 这个点号不能省略掉,方法是一样的

JavaSE——初始java

4.检验

JavaSE——初始java

输出java -version命令,如果输出如下图,表示安装配置成功,否则需要检查安装和配置是否正确。

JavaSE——初始java

四.第一个Java程序

1.初始程序

public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello,world");
}
}

通过上述代码,我们可以看到一个完整的Java程序的结构,Java程序的结构由如下三个部分组成:

1.源文件(扩展名为*.java):源文件带有类的定义。类用来表示程序的一个组件,小程序或许只会有一个 类。类的内容必须包含在花括号里面。

2.类:类中带有一个或多个方法。方法必须在类的内部声明。

3.方法:在方法的花括号中编写方法应该执行的语句。

总结一下:类存在于源文件里面;方法存在于类中;语句存在于方法中。

注意:在一个源文件中只能有一个public修饰的类,而且源文件名字必须与public修饰的类名字相同。

2.运行程序

我们先回忆C语言程序是如何跑起来的

JavaSE——初始java

 我们Java在先创建一个记事本后缀改为Java

当我们写好我们的程序后,进入我们的cmd,但是需要来到我们写java程序的这个目录下,cd进入文件

当然也可以直接在我们这个目录下面cmd进入,直接就是到这了

JavaSE——初始java

 JavaSE——初始java

 当我们找到我们这个Java程序后,我们javac     语法格式是:javac xxx.java

这个时候会出现一个后缀为class的文件,就是.class文件叫做字节码文件,里面存储的是二进制的数据

然后我们开始运行,语法格式是:java xxx.java

JavaSE——初始java

 当我们使用java运行这个.class文件的时候,.class文件会运行到一个地方,这个地方就是JVM(java virtual machine),即java虚拟机。当我们使用java程序去运行的时候,java虚拟机就会识别这个二进制文件,然后就在java虚拟机跑起来了。

3.JDK、JRE、JVM三者之间的关系。

JDK(Java Development Kit):java开发工具包,提供给Java程序员使用,包含了JRE,同时还包含了编译器javac与自带的调试工具Jconsole、jstack等/
JRE(Java Runtime Environment):java运行时环境,包含了JVM,java基础类库。是使用java语言编写程序运行时的所需环境。
JVM:java虚拟机,运行Java代码。

他们关系图

JavaSE——初始java

 4.理解代码

JavaSE——初始java

在一个源文件中只能有一个public修饰的类,而且源文件名字必须与public修饰的类名字相同。

public class HelloWorld{
	public static void main(String[] args){
		System.out.println("hello world");
	}

	public static void main1(String[] args){
		System.out.println("hello world");
	}
}

class HelloWorld2{
	public static void main(String[] args){
		System.out.println("hello world");
	}
}

 这样就是可以的,当我们编译的时候,会又出现一个.class

可以看到有两个字节码文件,这是因为字节码文件是一个类有一个,而不是一个文件有一个所以在Java中,我们想用哪个类我们就可以找到那个类的字节码文件。

5.总结

1.一个java文件中,可以有若干类,但是只能有一个public类,并且这个public class后面跟的这个类名必须和文件名一样。
2.每个类当中,都存在方法。

 就像上面可以写class A{}    再写class B{},不需要写public,只能有一个

标识符就是我们自己给类名还在方法名起的名字,像上面的main1,关键字就是像public这种

五.标识符

Java程序中:在程序中由用户给类名、方法名或者变量所取的名字叫标识符

【硬性规则】

标识符中可以包含:字母、数字以及 下划线和 $ 符号等等。

注意:标识符不能以数字开头,也不能是关键字,且严格区分大小写。

【软性建议】

类名:每个单词的首字母大写(大驼峰)

方法名:首字母小写,后面每个单词的首字母大写(小驼峰)

变量名:与方法名规则相同

一个大型的工程,是由多名工程师协同开发的,如果每个人都按照自己的方式随意取名,比如:person、 PERSON、Person、_person,将会使程序非常混乱。如果大家在取名时能够遵守一定的约束(即规范),那多人写 除的代码仿佛一个人写的。

六.关键字

通过观察上述程序可以发现,public、class以及static等颜色会发生变化,将这些具有特殊含义的标识符称为关键 字。即:关键字是由Java语言提前定义好的,有特殊含义的标识符,或者保留字。

注意:用户不能使用关键字定义标识符

用于定义访问权限修改的关键字:private      protected             public

用于定义访问权限修饰符的关键字:private       protected          public

用于定义类,函数,变量修饰符的关键字:abstract      final     static       synchronized

用于定义类与类之间关系的关键字:extends         implements

用于定义建立实例及引用实例,判断实例的关键字:new     this        super         instanceof

用于异常处理的关键字: try         catch          finally        throw         throws

用于包的关键字: package         import

其他修饰符关键字:native      strictfp          transient         volatile       assert

goto没有这个关键字,作为保留字,因为容易出错

七.注释

单行注释:// 注释内容(用的最多)

多行注释:/* 注释内容*/(不推荐)

文档注释: /** 文档注释 */(常见于方法和类之上描述方法和类的作用),可以被javadoc工具解析,生 成一套以网页文件形式体现的程序说明文档

注意:

1. 多行注释不能嵌套使用

2. 不论是单行还是多行注释,都不参与编译,即编译之后生成的.class文件中不包含注释信息。

1. 内容准确: 注释内容要和代码一致, 匹配, 并在代码修改时及时更新.

2. 篇幅合理: 注释既不应该太精简, 也不应该长篇大论.

3. 使用中文: 一般中国公司都要求使用中文写注释, 外企另当别论.

4. 积极向上: 注释中不要包含负能量(例如 领导 SB 等)文章来源地址https://www.toymoban.com/news/detail-403902.html

到了这里,关于JavaSE——初始java的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【JavaSE专栏49】Java集合类LinkedList解析,链表和顺序表有什么不同?

    作者主页 :Designer 小郑 作者简介 :3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型,CSDN学院、蓝桥云课认证讲师。 主打方向 :Vue、SpringBoot、微信小程序 本文讲解了 Java 中集合类 LinkedList 的语法、使用说明和应用场景,并给出了样例代码

    2024年02月16日
    浏览(40)
  • 【JAVASE】面向对象程序三大特性之一( 封装)

    ✅作者简介:大家好,我是橘橙黄又青,一个想要与大家共同进步的男人😉😉n 🍎个人主页:再无B~U~G-CSDN博客 目标: 1.包的使用 2.static的使用 3. 代码块概念以及分类 面向对象程序三大特性:封装、继承、多态 。而类和对象阶段,主要研究的就是封装特性。何为

    2024年04月17日
    浏览(49)
  • 【javaSE】 面向对象程序三大特性之继承

    目录 为什么需要继承 继承的概念 继承的语法 注意事项  父类成员访问 子类中访问父类的成员变量 子类和父类不存在同名成员变量 子类和父类成员变量同名 访问原则 子类中访问父类的成员方法 成员方法名字不同 总结: 成员方法名字相同 总结: super 注意事项 子类

    2024年02月14日
    浏览(37)
  • JavaSE【继承和多态】(1)(重点:初始化、pretected封装、组合)

    继承 (inheritance) 机制 :是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特 性 的基础上进行 扩展,增加新功能 ,这样产生新的类,称 派生类 。         继承呈现了面向对象程序设计的层次结构, 体现了 由简单到复杂的认知过程。   

    2024年02月14日
    浏览(36)
  • 【JAVASE】带你了解面向对象三大特性之一(多态)

    ✅作者简介:大家好,我是橘橙黄又青,一个想要与大家共同进步的男人😉😉 🍎个人主页:再无B~U~G-CSDN博客 多态的概念:通俗来说,就是多种形态, 具体点就是去完成某个行为,当不同的对象去完成时会产生出不同 的状 态。 总的来说:同一件事情,发生在不同对象

    2024年04月14日
    浏览(71)
  • 【JAVASE】带你了解面向对象三大特性之一(继承)

    ✅作者简介:大家好,我是橘橙黄又青,一个想要与大家共同进步的男人😉😉 🍎个人主页:再无B~U~G-CSDN博客 Java 中使用类对现实世界中实体来进行描述,类经过实例化之后的产物对象,则可以用来表示现实中的实体,但是现实世界错综复杂,事物之间可能会存在一些关

    2024年04月09日
    浏览(53)
  • JavaSE、JavaEE、JavaWeb 三大工程目录详解

    本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注博主!也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远! JavaSE、JavaEE 和 JavaWeb 是 Java 开发中的三个重要框架,它们都是为了支持 Java 应用程序的开发而设计

    2023年04月09日
    浏览(38)
  • Java 21:最新特性、性能改进和语言发展

    🎉欢迎来到Java学习路线专栏~Java 21:最新特性、性能改进和语言发展 ☆* o(≧▽≦)o *☆嗨~我是IT·陈寒🍹 ✨博客主页:IT·陈寒的博客 🎈该系列文章专栏:Java学习路线 📜其他专栏:Java学习路线 Java面试技巧 Java实战项目 AIGC人工智能 数据结构学习 🍹文章作者技术和水平有

    2024年02月05日
    浏览(39)
  • 初始SpringBoot:详解特性和结构

    🏡浩泽学编程 :个人主页  🔥 推荐专栏 :《深入浅出SpringBoot》《java项目分享》               《RabbitMQ》《Spring》《SpringMVC》 🛸学无止境,不骄不躁,知行合一 SpringBoot项目结构,特性介绍(常用到的基本都讲解了,很详细,基于官方文档讲解)。 IDEA创建非常简

    2024年02月03日
    浏览(36)
  • 快来看看Java在编程语言中的优势与特性吧

      作者主页: paper jie的博客_CSDN博客-C语言,算法详解领域博主 本文作者: 大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 其他专栏: 《系统解析C语言》《C语言》《C语言-语法篇》 内容分享: 本期将对Java的优势和特性进行详细的讲解,各位看官姥爷快搬好小板

    2024年02月11日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包