学于尚硅谷开源课程 宋红康老师主讲 感恩

尚硅谷官网:http://www.atguigu.com

尚硅谷b站:https://space.bilibili.com/302417610?from=search&seid=2366509055519973440

微信搜索"艺术行者",关注并回复关键词"javase"获取视频和教程资料!

本人上传的课程在线视频(请点击观看)

第一部分 课程整体内容概述

第二部分 基础常识

软件:即一系列按照特定顺序组织的计算机数据和指令的集合。分为:系统软件 和 应用软件

    系统软件:windows , MacOS , linux ,unix,android,ios,....

   

    应用软件:word ,ppt,画图板,...

    

人机交互方式:

图形化界面(Graphical User Interface GUI)这种方式简单直观,使用者易于接受,容易上手操作。

命令行方式(Command Line Interface CLI):需要有一个控制台,输入特定的指令,让计算机完成一些操作。较为麻烦,需要记录住一些命令。

Pascal之父Nicklaus Wirth:“Algorithms+DataStructures=Programs”

应用程序 = 算法 + 数据结构

常用DOS命令:

注:此处针对的是windows系统的命令行下的命令

常用MacOS终端下的命令:

注:本人的电脑是Macbook Air,故列出相应的命令

ls:列出当前目录下的文件以及文件夹

mkdir:创建目录

rmdir:删除目录

cd:进入指定目录

cd ..:退回到上一级目录

cd /:进入根目录

rm:删除文件

2.计算机语言的发展迭代史

第一代:机器语言

机器语言是用二进制代码表示的、计算机能直接识别和执行的一种机器指令的集合。它是计算机的设计者通过计算机的硬件结构赋予计算机的操作功能。机器语言具有灵活、直接执行和速度快等特点。不同种类的计算机其机器语言是不兼容的,按某种计算机的机器指令编制的程序不能在另一种计算机上执行。

                

                        W65C816S 机器代码

第二代:汇编语言

汇编语言(英语:assembly language)是任何一种用于电子计算机微处理器微控制器,或其他可编程器件的低级语言。在不同的设备中,汇编语言对应着不同的机器语言指令集。一种汇编语言专用于某种计算机系统结构,而不像许多高级语言,可以在不同系统平台之间移植。

使用汇编语言编写的源代码,然后通过相应的汇编程序将它们转换成可执行的机器代码。

                                 Motorola_6800_Assembly_Language.

第三代:高级语言

高级编程语言(High-level programming language)是高度封装了的编程语言,与低级语言相对。它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示,有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。由于早期电脑业的发展主要在美国,因此一般的高级语言都是以英语为蓝本。在1980年代,当东亚地区开始使用电脑时,在日本台湾中国大陆都曾尝试开发用各自地方语言编写的高级语言,当中主要都是改编BASIC或专用于数据库数据访问的语言,但是随着编程者的外语能力提升,现时的有关开发很少。

> 面向过程:C,Pascal、Fortran

C是一种通用的编程语言,广泛用于系统软件应用软件的开发。于1969年至1973年间,为了移植与开发UNIX操作系统,由丹尼斯·里奇肯·汤普逊,以B语言为基础,在贝尔实验室设计、开发出来。

          

                      c语言编写的HelloWorld程序

> 面向对象:Java,JS,Python,Scala,...

Java是一种广泛使用的计算机编程语言,拥有跨平台面向对象泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

任职于太阳微系统詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的编程语言,应用在电视机电话闹钟烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,太阳计算机系统Sun公司)放弃了该项计划。随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。

                      JAVA语言编写的HelloWorld程序

3.Java语言版本迭代概述

  • · 1991年 Green项目,开发语言最初命名为Oak (橡树)
  • · 1994年,开发组意识到Oak 非常适合于互联网
  • · 1996年,发布JDK 1.0,约8.3万个网页应用Java技术来制作
  • · 1997年,发布JDK 1.1,JavaOne会议召开,创当时全球同类会议规模之最
  • · 1998年,发布JDK 1.2,同年发布企业平台J2EE
  • · 1999年,Java分成J2SE、J2EE和J2ME,JSP/Servlet技术诞生
  • · 2004年,发布里程碑式版本:JDK 1.5,为突出此版本的重要性,更名为JDK 5.0
  • · 2005年,J2SE -> JavaSE,J2EE -> JavaEE,J2ME -> JavaME
  • · 2009年,Oracle公司收购SUN,交易价格74亿美元
  • · 2011年,发布JDK 7.0
  • · 2014年,发布JDK 8.0,是继JDK 5.0以来变化最大的版本
  • · 2017年,发布JDK 9.0,最大限度实现模块化
  • · 2018年3月,发布JDK 10.0,版本号也称为18.3
  • · 2018年9月,发布JDK 11.0,版本号也称为18.9

4.Java语言应用的领域:

>Java Web开发:后台开发

>大数据开发:

>Android应用程序开发:客户端开发

5.Java语言的特点

> 面向对象性:

  两个要素:类、对象

  三个特征:封装、继承、多态

> 健壮性:① 去除了C语言中的指针 ②自动的垃圾回收机制 -->仍然会出现内存溢出、内存泄漏

> 跨平台型:write once,run anywhere:一次编译,到处运行

      功劳归功于:JVM

第三部分 开发环境搭建

1.开发环境的搭建(重点)

                 Java8.0_platform

1.2 JDK的下载、安装

下载:官网,github

官网:https://www.oracle.com/java/technologies/javase-downloads.html

安装:傻瓜式安装:JDK 、JRE

注意问题:安装软件的路径中不能包含中文、空格。

1.3 path环境变量的配置

1.3.1 为什么配置path环境变量?

path环境变量:windows操作系统执行命令时所要搜寻的路径

为什么要配置path:希望java的开发工具(javac.exe,java.exe)在任何的文件路径下都可以执行成功。

1.3.2 如何配置?

注:MacOS的配置文件是~/.bash_profile,具体配置可以参考 配置的文章

第四部分 第一个Java程序

1.开发体验——HelloWorld

1.1 编写

创建一个java源文件:HelloWorld.java

class HelloChina{

  public static void main(String[] args){

  System.out.println("Hello,World!");

  }

}

1.2 编译:

        javac HelloWorld.java

1.3 运行:

        java HelloChina

2.常见问题的解决

3.总结第一个程序

1. java程序编写-编译-运行的过程

编写:我们将编写的java代码保存在以".java"结尾的源文件中

编译:使用javac.exe命令编译我们的java源文件。格式:javac 源文件名.java

运行:使用java.exe命令解释运行我们的字节码文件。 格式:java 类名

2.在一个java源文件中可以声明多个class。但是,只能最多有一个类声明为public的。而且要求声明为public的类的类名必须与源文件名相同。

3. 程序的入口是main()方法。格式是固定的。public static void main(String[] args){...}

4. 输出语句:

System.out.println():先输出数据,然后换行

System.out.print():只输出数据

5.每一行执行语句都以";"结束。

6.编译的过程:编译以后,会生成一个或多个字节码文件。字节码文件的文件名与java源文件中的类名相同。

第五部分 注视和API文档等

1.注释:Comment

分类:

单行注释://

多行注释:/*    */

文档注释:/**    */

作用:

① 对所写的程序进行解释说明,增强可读性。方便自己,方便别人

② 调试所写的代码

注释是一个程序员必须要具有的良好编程习惯

将自己的思想通过注释先整理出来,再用代码去体现

特点:

①单行注释和多行注释,注释了的内容不参与编译。

换句话说,编译以后生成的.class结尾的字节码文件中不包含注释掉的信息

② 文档注释的内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。

③ 多行注释不可以嵌套使用

2.Java API 文档: 

API:application programming interface。习惯上:将语言提供的类库,都称为api.

API文档:针对于提供的类库如何使用,给的一个说明书。类似于《新华字典》

3.良好的编程风格

第六部分 EditPlust的使用

1.开发工具说明:

2.EditPlus的使用:

注:此处本人学习时使用的MacOS软件是

1_Java语言概述的更多相关文章

  1. 1-学习前言&C语言概述

    [C语言]01-学习前言&C语言概述 参考自 http://www.cnblogs.com/mjios/archive/2013/03/12/2956508.html#label2 C语言是我 ...

  2. OpenGL官方教程——着色器语言概述

    OpenGL官方教程——着色器语言概述 OpenGL官方教程——着色器语言概述 可编程图形硬件管线(流水线) 可编程顶点处理器 可编程几何处理器 可编程片元处理器 语言 可编程图形硬件管线(流水线) ...

  3. Delphi XE5教程1:语言概述

    内容源自Delphi XE5 UPDATE 2官方帮助<Delphi Reference>,本人水平有限,欢迎各位高人修正相关错误! 也欢迎各位加入到Delphi学习资料汉化中来,有兴趣者 ...

  4. java基础---java语言概述

    一.计算机编程的两种范型 1.面向过程的模型---具有线性执行特点,认为是代码作用于数据. 2.面向对象的模型---围绕它的数据(即对象)和为这个数据定义的接口来组织程序:实际上是用数据控制代码的访问 ...

  5. Python语言——Python语言概述

    Python语言概述 计算机语言概述 语言:交流工具,沟通媒介 计算机语言:人和计算机交流的工具,翻译官 Python语言简述 Python是计算机语言的一种 Python编程语言: 代码:人类语言, ...

  6. 01 C语言程序设计--01 C语言基础--第1章 C语言概述&第2章 GCC和GDB

    走进嵌入式开发的世界,企业级项目课程让你达到企业嵌入式应用开发要求.名师在线答疑,解决疑难.科学评测体系,系统评估学习.核心项目实........ 30 门课程 241小时12分钟 824 人学习 学 ...

  7. [编程笔记]第一章 C语言概述

    //C语言学习笔记 第一讲 C语言概述 第二讲 基本编程知识 第三讲 运算符和表达式 第四讲 流程控制 第五讲 函数 第六讲 数组 第七讲 指针 第八讲 变量的作用域和存储方式 第九讲 拓展类型 第十 ...

  8. 第1章 Java语言概述--HelloWorld--环境搭建

    SE学什么 第1章 Java语言概述 第2章 基本语法 第3章 数组 第4章 面向对象编程(上) 第5章 面向对象编程(中) 第6章 面向对象编程(下) 第7章 异常处理 第8章 枚举类&注解 ...

  9. javaSE习题 第一章 JAVA语言概述

    转眼就开学了,正式在学校学习SE部分,由于暑假放视频过了一遍,略感觉轻松,今天开始,博客将会记录我的课本习题,主要以文字和代码的形式展现,一是把SE基础加强一下,二是课本中有很多知识是视频中没有的,做 ...

随机推荐

  1. Python进阶之浅谈内置方法(补充)

    目录 列表类型的内置方法 元组类型的内置方法 字典类型的内置方法 集合类型的内置方法 列表类型的内置方法 1.作用:描述名字,说的话等 2.定义方式 s=['tim','age'] s=str('ti ...

  2. Linux虚拟网络:Docker网络知识之基础篇

    我们在工作中应用了docker容器化技术,服务的部署.维护和扩展都方便了很多.然而,近期在私有化部署过程中,由于不同服务器环境的复杂多变,常常遇到网络方面的问题,现象为容器服务运行正常,但宿主机.容器 ...

  3. Linux服务搭之 - 消息队列(RabbitMQ)

    本章主要目的是为了后续spring-cloud-bus做准备,讲述在Linux Centos7操作系统中搭建 RabbitMQ… - 什么是RabbitMQ RabbitMQ 是一个使用 Erlang ...

  4. .NET 开源项目 StreamJsonRpc 介绍

    StreamJsonRpc 是一个实现了 JSON-RPC 通信协议的开源 .NET 库,在介绍 StreamJsonRpc 之前,我们先来了解一下 JSON-RPC. JSON-RPC 介绍 JSO ...

  5. web消息推送的各种解决办法

    摘要 在各种BS架构的应用程序中,往往都希望服务端能够主动地向客户端推送各种消息,以达到类似于邮件.消息.待办事项等通知. 往BS架构本身存在的问题就是,服务器一直采用的是一问一答的机制.这就意味着如 ...

  6. 逃学的小孩,树形dp

    先找到题 题意: 中文题,没什么好解释的,也没什么歧义. 分析: 首先我们想一下他的路径将会是怎样的:A-B-C/A-C-B,其实就是求一下min(AB+BC,AC+BC),ABC任选.挺简单,首先证 ...

  7. selenium 怎么查找定位鼠标移上去显示,移开鼠标就消失的内容

    场景:鼠标移动到一级菜单上二级菜单才显示,移开鼠标二级菜单就消失,如何查找定位二级菜单 操作: 1.打开F12,点击sources 2.鼠标移动到一级菜单“工单管理” 3.按下键盘“Ctrl+\”,暂 ...

  8. dva的简介

    dva的定义 dva 是基于现有应用架构 (redux + react-router + redux-saga 等)的一层轻量封装; redux 他是react当中的仓库,如果熟悉vue的话,他的功能 ...

  9. python基础之打/解包及运算符与控制流程

    python基础之打/解包及运算符与控制流程 python中的解压缩(即序列类型的打包和解包) python提供了两个设计元祖和其他序列类型的处理的便利,也就是自动打包与自动解包功能,比如: data ...

  10. (四)pandas的拼接操作

    pandas的拼接操作 #重点 pandas的拼接分为两种: 级联:pd.concat, pd.append 合并:pd.merge, pd.join 0. 回顾numpy的级联 import num ...