首页 > 编程语言 >Java入门

Java入门

时间:2023-12-02 17:11:44浏览次数:42  
标签:java 入门 JDK 编译 开发 Java 安装

Java入门

 

Java帝国的诞生

一场旷日持久的战争(1995)

1972年C语言开始统治

  • 贴近硬件,运行极快,效率极高

  • 早期开发了很多操作系统,编译器,数据库,网络系统等

  • 指针和内存管理

1982年C++诞生

  • 面向对象

  • 兼容C

  • 图形领域、游戏等

我们要建立一个新的语言:

  • 语法有点像C

  • 没有指针

  • 没有内存管理

  • 真正的可移植性,编写一次,到处运行

  • 面向对象

  • 高质量的类库

  • ……

Java初生

  • 1995年的网页简单而粗糙,缺乏互动性

  • Java开发了图形界面的程序Applet

Bill Gates说:这是迄今为止设计的最好的语言!

  • Java2 标准版 J2SE:去占领桌面

  • Java2 移动版J2ME:去占领手机

  • Java2 企业版J2EE:去占领服务器(大量巨头加入)

他们基于Java开发了巨多的平台,系统,工具

  • 构建工具: Ant, Maven, Jekins

  • 应用服务器: Tomcat, Jetty, Jboss, Websphere, weblogic

  • Web开发: Struts,Spring,Hibernate, myBatis

  • 开发工具: Eclipse, Netbean,intellj idea, Jbuilder

  • 2006年:Hadoop(大数据领域)

  • 2008年:Android(手机端)

Java特性和优势

  • 简单性

  • 面向对象(模拟人的思维。万物皆对象)

  • 可移植性(Write once, run anywhere

  • 高性能

  • 分布式

  • 动态性(反射机制)

  • 多线程

  • 安全性

  • 健壮性(每次运行都会对内存进行检查,几乎不会引起计算机崩溃)

Java三大版本

  1. JavaSE:标准版(桌面程序,控制台开发……)

  2. JavaME:嵌入式开发(手机,小家电……)几乎没人用了

  3. JavaEE:企业级开发(web端,服务器开发……)

JDK、JRE、JVM

  • JDK:Java Development Kit(开发工具)

  • JRE:Java Runtime Environment(运行环境)

  • JVM:Java Virtual Machine(虚拟机)(模拟cpu)

    结构图

Java开发环境搭建

  • JDK下载与安装

  • 配置环境变量

  • JDL目录介绍

  • HelloWorld及简答语法规则

  • Notepad++安装和使用

卸载JDK

  1. 删除Java的安装目录

  2. 删除JAVA_HOME

  3. 删除path下关于java的目录

  4. java.version

安装JDK

  1. 百度搜索JDK,找到下载地址

  2. 同意协议

  3. 下载电脑对应的版本

  4. 双击安装

  5. 记住安装的路径

  6. 配置环境变量

    1. 我的电脑--右键--属性

    2. 环境变量

    3. 配置path变量

      %%JAVA_HOME\bin

      %%JAVA_HOME\jre\bin

    4. cmd检查JDK是否安装成功

      java -version

       

notepad++

HelloWorld

  1. 新建一个文件夹存放代码

  2. 新建一个java文件

    随便新建一个文件,把文件名和后缀改为Hello.java

  1. 编写代码

    public class表示类 后面表示名字

    main表示方法

    public class Hello{
    public static void main(String[] args){
    System.out.print("Hello,World!");
    }
    }
  1. 编译javac java文件

可能会遇到的问题

  1. 大小写(Java大小写敏感)

  2. 尽量使用英文

  3. 文件名和类名必须保证一致,且首字母大写

  4. 符号使用了中文

  5. 每个括号都成对出现(先把括号打好再填写内容)

 

Java程序运行机制

  • 编译型(编译的工具叫编译器)(如C,c++等)

  • 解释型(边执行边解释)

时机不同(可以理解为把一本中文书直接翻译成英文,和请翻译官,想看多少翻译多少)

编译型和解释型的界限越来越模糊了

 

IDEA安装

IED:集成开发环境

  • 提供程序的开发环境,集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套

psvm
 

标签:java,入门,JDK,编译,开发,Java,安装
From: https://www.cnblogs.com/Eaveskk/p/17871864.html

相关文章

  • 【JavaSE】时间API
    JDK8版本之前的时间API(了解)Data类SimpleDateFormat类SimpleDateFormat类指定格式查API帮助文档即可SimpleDateFormatDemo.javaimportjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Date;publicclassSimpleDateFormatDemo{pu......
  • 浙大翁恺-C语言入门-第二周②
    但现在,我不再畏惧。-Faker《不死者》---运算符(符号)、算子(进行计算的量)C语言,开始的时候是用的打字机,打字机没有乘除号,所以用星号*和右斜杠/分别代表乘,除。这样就有了加减乘除四则运算。另外特殊的取余操作,用的百分号%,取余获得两个数相除的余数。C=A%B;思考问题:计算时间......
  • 我的心血之作:一套适合 SAP UI5 从业人员从入门到进阶的学习教程,以及教程背后的故事
    一转眼2023年又要结束了。我从2007年开始,以软件开发工程师的角色进入职场,马上也快满17年了。在这快17年的软件开发职业生涯里,我也见识并使用了许许多多的开发技术,编程语言,开发框架,平台。IT界这十多年来涌现出的一些新技术,我也主动或被动地去追逐过。比如2015年时,大......
  • 学习笔记4:JavaSE & API(网络编程 & 多线程)
    1、java.net.Socket:(1)定义:Socket(套接字)封装了TCP协议的通讯细节,是的我们使用它可以与服务端建立网络链接,并通过它获取两个流(一个输入一个输出),然后使用这两个流的读写操作完成与服务端的数据交互。(2)方法getInputStream():获取输入流,返回值是InputStream的一个子类实例。ge......
  • Java 初识
    Java初识一、三大版本:writeonce、runanywhere.JavaSE(核心):标准版(桌面程序,控制台开开)JavaME:嵌入式开发(手机,小家电)JavaEE:企业级开发(web端,服务器开发)二、JDK,JRE,JVMJDK:javadevelopmentkitJRE:javaruntimeenvironmentJVM:javavirtualmachine三、Java开发......
  • 接口测试很难?3分钟带你入门接口自动化测试
    1、什么是接口?接口是连接前台和后台的桥梁,前台通过接口调用后端已完成的功能,而无需关注内部的实现细节。借助于接口,可以实现前后台分离,各自完成开发工作后,进行联调,提高工作效率2、接口的分类?GET,POST,PUT,DELETE3、接口的区别?GET与POST的区别答:GET的请求数据是在URL上,POST的请......
  • rust HTTP客户端reqwest快速入门
    这篇文章主要是收集了reqwest一些常用的代码片段,便于以后直接复制使用,对标之前go语言的net/http客户端的快速入门教程。reqwest版本:0.11.22参考依赖配置:[dependencies]reqwest={version="0.11.22",features=["json","multipart"]}tokio={version="1",features=......
  • Java 8 仍被广泛使用,占比 50%
    调查中,更多的开发人员选择在生产中使用Java17,而不是Java11。Docker逐渐成为打包Web应用程序的首选,且Spring和SpringBoot的使用率遥遥领先。具体而言,开发者最常使用的 Java版本是 Java8,占比高达 50%;其次分别是 Java17(45%)、Java11(38%)以及 Java20(11%)......
  • java: 错误: 无效的源发行版:17
         ......
  • java练习:json字符串转map、arrayList
    使用依赖包:<dependency><groupId>com.alibaba.fastjson2</groupId><artifactId>fastjson2</artifactId><version>2.0.0</version></dependency>获取数据:packagecom.example......